My43LjIKY2U2ZTY0MWJmMjU3Zjg1YmZlZGYxNTA3YTVmNjFmODJlMTM0ZmYwMwoECG86GVNhc3M6OlRyZWU6OlJvb3ROb2RlDDoOQGNoaWxkcmVuWwpvOhxTYXNzOjpUcmVlOjpDb21tZW50Tm9kZQw6C0B2YWx1ZVsGSSJWLyovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAqIEltcG9ydCBQaWVjZXMKICovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vICovBjoGRVQ6CkB0eXBlOgtzaWxlbnQ7BlsAOg5AZmlsZW5hbWUwOg1Ab3B0aW9uc3sAOgpAbGluZWkGOhJAc291cmNlX3JhbmdlbzoYU2Fzczo6U291cmNlOjpSYW5nZQk6D0BzdGFydF9wb3NvOhtTYXNzOjpTb3VyY2U6OlBvc2l0aW9uBzsOaQY6DEBvZmZzZXRpBjoNQGVuZF9wb3NvOxIHOw5pCDsTaSQ6CkBmaWxlSSJ/L0xpYnJhcnkvUnVieS9HZW1zLzIuMy4wL2dlbXMvbWluaW1hbC1taXN0YWtlcy1qZWt5bGwtNC4xNC4xL19zYXNzL21pbmltYWwtbWlzdGFrZXMvdmVuZG9yL2JyZWFrcG9pbnQvcGFyc2Vycy9fZG91YmxlLnNjc3MGOwlUOg5AaW1wb3J0ZXJvOiBTYXNzOjpJbXBvcnRlcnM6OkZpbGVzeXN0ZW0IOgpAcm9vdEkiRy9MaWJyYXJ5L1J1YnkvR2Vtcy8yLjMuMC9nZW1zL21pbmltYWwtbWlzdGFrZXMtamVreWxsLTQuMTQuMS9fc2FzcwY7CUY6D0ByZWFsX3Jvb3RJIkcvTGlicmFyeS9SdWJ5L0dlbXMvMi4zLjAvZ2Vtcy9taW5pbWFsLW1pc3Rha2VzLWpla3lsbC00LjE0LjEvX3Nhc3MGOwlUOhhAc2FtZV9uYW1lX3dhcm5pbmdzbzoIU2V0BjoKQGhhc2h9AEZvOhtTYXNzOjpUcmVlOjpJbXBvcnROb2RlDToXQGltcG9ydGVkX2ZpbGVuYW1lSSIYZG91YmxlL2RlZmF1bHQtcGFpcgY7CVQ7BlsAOwwwOw1ACzoOQHRlbXBsYXRlMDsOaQk7D287EAk7EW87Egc7DmkJOxNpDjsUbzsSBzsOaQk7E2kjOxVADzsWQBA6E0BpbXBvcnRlZF9maWxlMG87HQ07HkkiGWRvdWJsZS9kb3VibGUtc3RyaW5nBjsJVDsGWwA7DDA7DUALOx8wOw5pCjsPbzsQCTsRbzsSBzsOaQo7E2kOOxRvOxIHOw5pCjsTaSQ7FUAPOxZAEDsgMG87HQ07HkkiE2RvdWJsZS9kZWZhdWx0BjsJVDsGWwA7DDA7DUALOx8wOw5pCzsPbzsQCTsRbzsSBzsOaQs7E2kOOxRvOxIHOw5pCzsTaR47FUAPOxZAEDsgMG86HVNhc3M6OlRyZWU6OkZ1bmN0aW9uTm9kZQ46CkBuYW1lSSIcYnJlYWtwb2ludC1wYXJzZS1kb3VibGUGOwlUOgpAYXJnc1sIWwdvOiFTYXNzOjpTY3JpcHQ6OlRyZWU6OlZhcmlhYmxlCzsiSSIMZmVhdHVyZQY7CVQ6FkB1bmRlcnNjb3JlZF9uYW1lSSIMZmVhdHVyZQY7CVQ7DmkNOw9vOxAJOxFvOxIHOw5pDTsTaSg7FG87Egc7DmkNOxNpMDsVQA87FkAQOwxADzsNQAswWwdvOyQLOyJJIhBlbXB0eS1tZWRpYQY7CVQ7JUkiEGVtcHR5X21lZGlhBjsJVDsOaQ07D287EAk7EW87Egc7DmkNOxNpMjsUbzsSBzsOaQ07E2k+OxVADzsWQBA7DEAPOw1ACzBbB287JAs7IkkiCmZpcnN0BjsJVDslSSIKZmlyc3QGOwlUOw5pDTsPbzsQCTsRbzsSBzsOaQ07E2lAOxRvOxIHOw5pDTsTaUY7FUAPOxZAEDsMQA87DUALMDoLQHNwbGF0MDsGWw5vOh1TYXNzOjpUcmVlOjpWYXJpYWJsZU5vZGUOOyJJIgtwYXJzZWQGOwlUOgpAZXhwcm86IFNhc3M6OlNjcmlwdDo6VHJlZTo6TGl0ZXJhbAk7CG86IFNhc3M6OlNjcmlwdDo6VmFsdWU6OlN0cmluZwk7CEkiAAY7CVQ7DUALOwo6C3N0cmluZzoiQGRlcHJlY2F0ZWRfaW50ZXJwX2VxdWl2YWxlbnQwOw5pDjsPbzsQCTsRbzsSBzsOaQ47E2kROxRvOxIHOw5pDjsTaRM7FUAPOxZAEDsMQA86DUBndWFyZGVkMDoMQGdsb2JhbDA7BlsAOwwwOw1ACzsOaQ47D287EAk7EW87Egc7DmkOOxNpCTsUbzsSBzsOaQ47E2kTOxVADzsWQBBvOycOOyJJIgtsZWFkZXIGOwlUOyhvOykJOwhvOyoJOwhJIgAGOwlUOw1ACzsKOys7LDA7DmkPOw9vOxAJOxFvOxIHOw5pDzsTaRE7FG87Egc7DmkPOxNpEzsVQA87FkAQOwxADzstMDsuMDsGWwA7DDA7DUALOw5pDzsPbzsQCTsRbzsSBzsOaQ87E2kJOxRvOxIHOw5pDzsTaRM7FUAPOxZAEG87Bww7CFsGSSIbLyogSWYgd2UncmUgZm9yY2luZyAqLwY7CVQ7CjsLOwZbADsMMDsNQAs7DmkQOw9vOxAJOxFvOxIHOw5pEDsTaQg7FG87Egc7DmkQOxNpGzsVQA87FkAQdToXU2Fzczo6VHJlZTo6SWZOb2RlAiwFBAhbCG86IlNhc3M6OlNjcmlwdDo6VHJlZTo6T3BlcmF0aW9uDDoOQG9wZXJhbmQxbzonU2Fzczo6U2NyaXB0OjpUcmVlOjpVbmFyeU9wZXJhdGlvbgs6DUBvcGVyYW5kbzohU2Fzczo6U2NyaXB0OjpUcmVlOjpWYXJpYWJsZQs6CkBuYW1lSSIQZW1wdHktbWVkaWEGOgZFVDoWQHVuZGVyc2NvcmVkX25hbWVJIhBlbXB0eV9tZWRpYQY7C1Q6CkBsaW5laRE6EkBzb3VyY2VfcmFuZ2VvOhhTYXNzOjpTb3VyY2U6OlJhbmdlCToPQHN0YXJ0X3Bvc286G1Nhc3M6OlNvdXJjZTo6UG9zaXRpb24HOw1pEToMQG9mZnNldGkROg1AZW5kX3Bvc287EQc7DWkROxJpHToKQGZpbGVJIn8vTGlicmFyeS9SdWJ5L0dlbXMvMi4zLjAvZ2Vtcy9taW5pbWFsLW1pc3Rha2VzLWpla3lsbC00LjE0LjEvX3Nhc3MvbWluaW1hbC1taXN0YWtlcy92ZW5kb3IvYnJlYWtwb2ludC9wYXJzZXJzL19kb3VibGUuc2NzcwY7C1Q6DkBpbXBvcnRlcm86IFNhc3M6OkltcG9ydGVyczo6RmlsZXN5c3RlbQg6CkByb290SSJHL0xpYnJhcnkvUnVieS9HZW1zLzIuMy4wL2dlbXMvbWluaW1hbC1taXN0YWtlcy1qZWt5bGwtNC4xNC4xL19zYXNzBjsLRjoPQHJlYWxfcm9vdEkiRy9MaWJyYXJ5L1J1Ynkv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Ow5pGDsTaQg7FG87Egc7DmkYOxNpAZQ7FUAPOxZAEHU7LwKlEwQIWwhvOiJTYXNzOjpTY3JpcHQ6OlRyZWU6Ok9wZXJhdGlvbgw6DkBvcGVyYW5kMW87AAw7Bm86IFNhc3M6OlNjcmlwdDo6VHJlZTo6RnVuY2FsbA86DkBjYWxsYWJsZTA6CkBuYW1lSSIMdHlwZS1vZgY6BkVUOgpAYXJnc1sGbzohU2Fzczo6U2NyaXB0OjpUcmVlOjpWYXJpYWJsZQs7CUkiCmZpcnN0BjsKVDoWQHVuZGVyc2NvcmVkX25hbWVJIgpmaXJzdAY7ClQ6CkBsaW5laRk6EkBzb3VyY2VfcmFuZ2VvOhhTYXNzOjpTb3VyY2U6OlJhbmdlCToPQHN0YXJ0X3Bvc286G1Nhc3M6OlNvdXJjZTo6UG9zaXRpb24HOw5pGToMQG9mZnNldGkUOg1AZW5kX3Bvc287Egc7DmkZOxNpGjoKQGZpbGVJIn8vTGlicmFyeS9SdWJ5L0dlbXMvMi4zLjAvZ2Vtcy9taW5pbWFsLW1pc3Rha2VzLWpla3lsbC00LjE0LjEvX3Nhc3MvbWluaW1hbC1taXN0YWtlcy92ZW5kb3IvYnJlYWtwb2ludC9wYXJzZXJzL19kb3VibGUuc2NzcwY7ClQ6DkBpbXBvcnRlcm86IFNhc3M6OkltcG9ydGVyczo6RmlsZXN5c3RlbQg6CkByb290SSJHL0xpYnJhcnkvUnVieS9HZW1zLzIuMy4wL2dlbXMvbWluaW1hbC1taXN0YWtlcy1qZWt5bGwtNC4xNC4xL19zYXNzBjsKRjoPQHJlYWxfcm9vdEkiRy9MaWJyYXJ5L1J1YnkvR2Vtcy8yLjMuMC9nZW1zL21pbmltYWwtbWlzdGFrZXMtamVreWxsLTQuMTQuMS9fc2FzcwY7ClQ6GEBzYW1lX25hbWVfd2FybmluZ3NvOghTZXQGOgpAaGFzaH0ARjoOQGZpbGVuYW1lQBE6DUBvcHRpb25zewA6DkBrZXl3b3Jkc286HlNhc3M6OlV0aWw6Ok5vcm1hbGl6ZWRNYXAHOhFAa2V5X3N0cmluZ3N7ADoJQG1hcHsAOgtAc3BsYXQwOhFAa3dhcmdfc3BsYXQwOw5pGTsPbzsQCTsRbzsSBzsOaRk7E2kMOxRvOxIHOw5pGTsTaRs7FUAROxZAEjsdQBE7HkAXOg5Ab3BlcmFuZDJvOiBTYXNzOjpTY3JpcHQ6OlRyZWU6OkxpdGVyYWwJOgtAdmFsdWVvOiBTYXNzOjpTY3JpcHQ6OlZhbHVlOjpTdHJpbmcJOydJIgtudW1iZXIGOwpUOx5AFzoKQHR5cGU6C3N0cmluZzoiQGRlcHJlY2F0ZWRfaW50ZXJwX2VxdWl2YWxlbnQwOw5pGTsPbzsQCTsRbzsSBzsOaRk7E2kfOxRvOxIHOw5pGTsTaSc7FUAROxZAEjsdQBE6DkBvcGVyYXRvcjoHZXE7DmkZOw9vOxAJOxFAHDsUbzsSBzsOaRk7E2koOxVAETsWQBI7HUAROx5AFzslbzsADDsGbzsHDzsIMDsJSSIMdHlwZS1vZgY7ClQ7C1sGbzsMCzsJSSILc2Vjb25kBjsKVDsNSSILc2Vjb25kBjsKVDsOaRk7D287EAk7EW87Egc7DmkZOxNpNDsUbzsSBzsOaRk7E2k7OxVAETsWQBI7HUAROx5AFzsfbzsgBzshewA7InsAOyMwOyQwOw5pGTsPbzsQCTsRbzsSBzsOaRk7E2ksOxRvOxIHOw5pGTsTaTw7FUAROxZAEjsdQBE7HkAXOyVvOyYJOydvOygJOydJIgtudW1iZXIGOwpUOx5AFzspOyo7KzA7DmkZOw9vOxAJOxFvOxIHOw5pGTsTaUA7FG87Egc7DmkZOxNpSDsVQBE7FkASOx1AETssOy07DmkZOw9vOxAJOxFANDsUbzsSBzsOaRk7E2lJOxVAETsWQBI7HUAROx5AFzssOghhbmQ7DmkZOw9vOxAJOxFAHDsUbzsSBzsOaRk7E2lJOxVAETsWQBI7HUAROx5AF3U6F1Nhc3M6OlRyZWU6OklmTm9kZQLuCwQIWwhvOiJTYXNzOjpTY3JpcHQ6OlRyZWU6Ok9wZXJhdGlvbgw6DkBvcGVyYW5kMW87AAw7Bm86IFNhc3M6OlNjcmlwdDo6VHJlZTo6RnVuY2FsbA86DkBjYWxsYWJsZTA6CkBuYW1lSSIMdHlwZS1vZgY6BkVUOgpAYXJnc1sGbzohU2Fzczo6U2NyaXB0OjpUcmVlOjpWYXJpYWJsZQs7CUkiCmZpcnN0BjsKVDoWQHVuZGVyc2NvcmVkX25hbWVJIgpmaXJzdAY7ClQ6CkBsaW5laR06EkBzb3VyY2VfcmFuZ2VvOhhTYXNzOjpTb3VyY2U6OlJhbmdlCToPQHN0YXJ0X3Bvc286G1Nhc3M6OlNvdXJjZTo6UG9zaXRpb24HOw5pHToMQG9mZnNldGkZOg1AZW5kX3Bvc287Egc7DmkdOxNpHzoKQGZpbGVJIn8vTGlicmFyeS9SdWJ5L0dlbXMvMi4zLjAvZ2Vtcy9taW5pbWFsLW1pc3Rha2VzLWpla3lsbC00LjE0LjEvX3Nhc3MvbWluaW1hbC1taXN0YWtlcy92ZW5kb3IvYnJlYWtwb2ludC9wYXJzZXJzL19kb3VibGUuc2NzcwY7ClQ6DkBpbXBvcnRlcm86IFNhc3M6OkltcG9ydGVyczo6RmlsZXN5c3RlbQg6CkByb290SSJHL0xpYnJhcnkvUnVieS9HZW1zLzIuMy4wL2dlbXMvbWluaW1hbC1taXN0YWtlcy1qZWt5bGwtNC4xNC4xL19zYXNzBjsKRjoPQHJlYWxfcm9vdEkiRy9MaWJyYXJ5L1J1YnkvR2Vtcy8yLjMuMC9nZW1zL21pbmltYWwtbWlzdGFrZXMtamVreWxsLTQuMTQuMS9fc2FzcwY7ClQ6GEBzYW1lX25hbWVfd2FybmluZ3NvOghTZXQGOgpAaGFzaH0ARjoOQGZpbGVuYW1lQBE6DUBvcHRpb25zewA6DkBrZXl3b3Jkc286HlNhc3M6OlV0aWw6Ok5vcm1hbGl6ZWRNYXAHOhFAa2V5X3N0cmluZ3N7ADoJQG1hcHsAOgtAc3BsYXQwOhFAa3dhcmdfc3BsYXQwOw5pHTsPbzsQCTsRbzsSBzsOaR07E2kROxRvOxIHOw5pHTsTaSA7FUAROxZAEjsdQBE7HkAXOg5Ab3BlcmFuZDJvOiBTYXNzOjpTY3JpcHQ6OlRyZWU6OkxpdGVyYWwJOgtAdmFsdWVvOiBTYXNzOjpTY3JpcHQ6OlZhbHVlOjpTdHJpbmcJOydJIgtzdHJpbmcGOwpUOx5AFzoKQHR5cGU6C3N0cmluZzoiQGRlcHJlY2F0ZWRfaW50ZXJwX2VxdWl2YWxlbnQwOw5pHTsPbzsQCTsRbzsSBzsOaR07E2kkOxRvOxIHOw5pHTsTaSw7FUAROxZAEjsdQBE6DkBvcGVyYXRvcjoHZXE7DmkdOw9vOxAJOxFAHDsUbzsSBzsOaR07E2ktOxVAETsWQBI7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aSU7D287EAk7EW87Egc7DmklOxNpCDsUbzsSBzsOaSU7E2khOxVADzsWQBA7DDA7DUALOw5pDTsPbzsQCTsRbzsSBzsOaQ07E2kGOxRvOxIHOw5pDTsTaUg7FUAPOxZAEDoSQGhhc19jaGlsZHJlblQ7DDA7DUALOx9JIgI5BC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwovLyBJbXBvcnQgUGllY2VzCi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwpAaW1wb3J0ICJkb3VibGUvZGVmYXVsdC1wYWlyIjsKQGltcG9ydCAiZG91YmxlL2RvdWJsZS1zdHJpbmciOwpAaW1wb3J0ICJkb3VibGUvZGVmYXVsdCI7CgpAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS1kb3VibGUoJGZlYXR1cmUsICRlbXB0eS1tZWRpYSwgJGZpcnN0KSB7CiAgJHBhcnNlZDogJyc7CiAgJGxlYWRlcjogJyc7CiAgLy8gSWYgd2UncmUgZm9yY2luZwogIEBpZiBub3QgKCRlbXB0eS1tZWRpYSkgb3Igbm90ICgkZmlyc3QpIHsKICAgICRsZWFkZXI6ICdhbmQgJzsKICB9CgogICRmaXJzdDogbnRoKCRmZWF0dXJlLCAxKTsKICAkc2Vjb25kOiBudGgoJGZlYXR1cmUsIDIpOwoKICAvLyBJZiB3ZSd2ZSBnb3QgdHdvIG51bWJlcnMsIHdlIGtub3cgd2UgbmVlZCB0byB1c2UgdGhlIGRlZmF1bHQgcGFpciBiZWNhdXNlIHRoZXJlIGFyZSBubyBtZWRpYSBxdWVyaWVzIHRoYXQgaGFzIGEgbWVkaWEgZmVhdHVyZSB0aGF0IGlzIGEgbnVtYmVyCiAgQGlmIHR5cGUtb2YoJGZpcnN0KSA9PSAnbnVtYmVyJyBhbmQgdHlwZS1vZigkc2Vjb25kKSA9PSAnbnVtYmVyJyB7CiAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLWRlZmF1bHQtcGFpcigkZmlyc3QsICRzZWNvbmQpOwogIH0KICAvLyBJZiB0aGV5IGFyZSBib3RoIHN0cmluZ3MsIHdlIHNlbmQgaXQgdGhyb3VnaCB0aGUgc3RyaW5nIHBhcnNlcgogIEBlbHNlIGlmIHR5cGUtb2YoJGZpcnN0KSA9PSAnc3RyaW5nJyBhbmQgdHlwZS1vZigkc2Vjb25kKSA9PSAnc3RyaW5nJyB7CiAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLWRvdWJsZS1zdHJpbmcoJGZpcnN0LCAkc2Vjb25kKTsKICB9CiAgLy8gSWYgaXQncyBhIHN0cmluZy9udW1iZXIgcGFpciwgd2UgcGFyc2UgaXQgYXMgYSBub3JtYWwgZG91YmxlCiAgQGVsc2UgewogICAgJHBhcnNlZDogYnJlYWtwb2ludC1wYXJzZS1kb3VibGUtZGVmYXVsdCgkZmlyc3QsICRzZWNvbmQpOwogIH0KCiAgQHJldHVybiAkbGVhZGVyICsgJHBhcnNlZDsKfQoGOwlUOw5pBjsPbzsQCTsRbzsSBzsOaQY7E2kGOxRvOxIHOw5pBjsTaQY7FUAPOxZAEDtBVA==