Mw0NCn2EhGNTKQAA4wAAAAAAAAAAAAAAAAUAAABAAAAAc+YAAABkAFoAZAFkAmwBbQJaAgEAZAFkA2wDWgNkBGQFbARtBVoFAQBkBloGZAdkCGQJZApkC5wEWgdpAFoIZAxkDYQAWglkDmQPhABaCmQQZBGEAFoLRwBkEmQThABkE2UMgwNaDWUKZBSDAVoOZQpkFYMBWg9lCmQWgwFaEGQrZBhkGYQBWhFkGmQbhABaEmUOZBxmAmQdZB6EAVoTZCxkH2QghAFaFGQhZCKEAFoVZQ5kHGYCZCNkJIQBWhZkJWQmhABaF0cAZCdkKIQAZChlDIMDWhhHAGQpZCqEAGQqZQyDA1oZZANTACktYQcBAAAKCiAgICB3ZWJlbmNvZGluZ3MKICAgIH5+fn5+fn5+fn5+fgoKICAgIFRoaXMgaXMgYSBQeXRob24gaW1wbGVtZW50YXRpb24gb2YgdGhlIGBXSEFUV0cgRW5jb2Rpbmcgc3RhbmRhcmQKICAgIDxodHRwOi8vZW5jb2Rpbmcuc3BlYy53aGF0d2cub3JnLz5gLiBTZWUgUkVBRE1FIGZvciBkZXRhaWxzLgoKICAgIDpjb3B5cmlnaHQ6IENvcHlyaWdodCAyMDEyIGJ5IFNpbW9uIFNhcGluCiAgICA6bGljZW5zZTogQlNELCBzZWUgTElDRU5TRSBmb3IgZGV0YWlscy4KCukAAAAAKQHaEHVuaWNvZGVfbGl0ZXJhbHNO6QEAAAApAdoGTEFCRUxTegUwLjUuMXoKaXNvLTg4NTktOHoMbWFjLWN5cmlsbGljegltYWMtcm9tYW5aBWNwODc0KQR6DGlzby04ODU5LTgtaXoOeC1tYWMtY3lyaWxsaWPaCW1hY2ludG9zaHoLd2luZG93cy04NzRjAQAAAAAAAAABAAAAAgAAAEMAAABzFAAAAHwAagBkAYMBagGDAGoCZAGDAVMAKQJhOQMAAFRyYW5zZm9ybSAob25seSkgQVNDSUkgbGV0dGVycyB0byBsb3dlciBjYXNlOiBBLVogaXMgbWFwcGVkIHRvIGEtei4KCiAgICA6cGFyYW0gc3RyaW5nOiBBbiBVbmljb2RlIHN0cmluZy4KICAgIDpyZXR1cm5zOiBBIG5ldyBVbmljb2RlIHN0cmluZy4KCiAgICBUaGlzIGlzIHVzZWQgZm9yIGBBU0NJSSBjYXNlLWluc2Vuc2l0aXZlCiAgICA8aHR0cDovL2VuY29kaW5nLnNwZWMud2hhdHdnLm9yZy8jYXNjaWktY2FzZS1pbnNlbnNpdGl2ZT5gXwogICAgbWF0Y2hpbmcgb2YgZW5jb2RpbmcgbGFiZWxzLgogICAgVGhlIHNhbWUgbWF0Y2hpbmcgaXMgYWxzbyB1c2VkLCBhbW9uZyBvdGhlciB0aGluZ3MsCiAgICBmb3IgYENTUyBrZXl3b3JkcyA8aHR0cDovL2Rldi53My5vcmcvY3Nzd2cvY3NzLXZhbHVlcy8ja2V5d29yZHM+YF8uCgogICAgVGhpcyBpcyBkaWZmZXJlbnQgZnJvbSB0aGUgOm1ldGg6YH5weTpzdHIubG93ZXJgIG1ldGhvZCBvZiBVbmljb2RlIHN0cmluZ3MKICAgIHdoaWNoIGFsc28gYWZmZWN0IG5vbi1BU0NJSSBjaGFyYWN0ZXJzLAogICAgc29tZXRpbWVzIG1hcHBpbmcgdGhlbSBpbnRvIHRoZSBBU0NJSSByYW5nZToKCiAgICAgICAgPj4+IGtleXdvcmQgPSB1J0JhY1xOe0tFTFZJTiBTSUdOfWdyb3VuZCcKICAgICAgICA+Pj4gYXNzZXJ0IGtleXdvcmQubG93ZXIoKSA9PSB1J2JhY2tncm91bmQnCiAgICAgICAgPj4+IGFzc2VydCBhc2NpaV9sb3dlcihrZXl3b3JkKSAhPSBrZXl3b3JkLmxvd2VyKCkKICAgICAgICA+Pj4gYXNzZXJ0IGFzY2lpX2xvd2VyKGtleXdvcmQpID09IHUnYmFjXE57S0VMVklOIFNJR059Z3JvdW5kJwoKICAgINoEdXRmOCkD2gZlbmNvZGXaBWxvd2Vy2gZkZWNvZGUpAdoGc3RyaW5nqQByCwAAAPqSL2hvbWUvdWV0bGhyL0RvY3VtZW50cy9TZXJtb1Bsb3RfYmFja2VuZC9kcmFmdF9TUkFNX2JsYWNrYm94L1VFVFJWX0VTb0NfdjIvdmVudi9saWI2NC9weXRob24zLjYvc2l0ZS1wYWNrYWdlcy9waXAvX3ZlbmRvci93ZWJlbmNvZGluZ3MvX19pbml0X18ucHnaC2FzY2lpX2xvd2VyIwAAAHMCAAAAABdyDQAAAGMBAAAAAAAAAAUA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