VQ0NCgAAAADLuIxjPAgAAOMAAAAAAAAAAAAAAAAAAAAABAAAAEAAAABzrgAAAGQAZAFsAFoAZABkAWwBWgFkAGQBbAJaAmQAZAJsA20EWgRtBVoFbQZaBm0HWgcBAGQAZANsCG0JWgltCloKAQBkAGQEbAttDFoMAQBlBGQFZQ2DAloOZQGgD2UQoQFaEWUFZQ0ZAGUGZRJkBmYCGQBlE2QHnANkCGQJhARaFGUAahVkCmQLjQFlDWUMZAycAmQNZA6EBIMBWhZlDWUOZA+cAmQQZBGEBFoXZAFTACkS6QAAAABOKQTaB05ld1R5cGXaCE9wdGlvbmFs2gVUdXBsZdoEY2FzdCkC2gpzcGVjaWZpZXJz2gd2ZXJzaW9uqQHaC1JlcXVpcmVtZW502g9Ob3JtYWxpemVkRXh0cmEuKQPaD3JlcXVpcmVzX3B5dGhvbtoMdmVyc2lvbl9pbmZv2gZyZXR1cm5jAgAAAAAAAAAAAAAABAAAAAcAAABDAAAAczQAAAB8AGQBawhyDGQCUwB0AKABfAChAX0CdAKgA2QDoAR0BXQGfAGDAqEBoQF9A3wDfAJrBlMAKQRhmAEAAAogICAgQ2hlY2sgaWYgdGhlIGdpdmVuIFB5dGhvbiB2ZXJzaW9uIG1hdGNoZXMgYSAiUmVxdWlyZXMtUHl0aG9uIiBzcGVjaWZpZXIuCgogICAgOnBhcmFtIHZlcnNpb25faW5mbzogQSAzLXR1cGxlIG9mIGludHMgcmVwcmVzZW50aW5nIGEgUHl0aG9uCiAgICAgICAgbWFqb3ItbWlub3ItbWljcm8gdmVyc2lvbiB0byBjaGVjayAoZS5nLiBgc3lzLnZlcnNpb25faW5mb1s6M11gKS4KCiAgICA6cmV0dXJuOiBgVHJ1ZWAgaWYgdGhlIGdpdmVuIFB5dGhvbiB2ZXJzaW9uIHNhdGlzZmllcyB0aGUgcmVxdWlyZW1lbnQuCiAgICAgICAgT3RoZXJ3aXNlLCByZXR1cm4gYEZhbHNlYC4KCiAgICA6cmFpc2VzIEludmFsaWRTcGVjaWZpZXI6IElmIGByZXF1aXJlc19weXRob25gIGhhcyBhbiBpbnZhbGlkIGZvcm1hdC4KICAgIE5U2gEuKQdyBgAAANoMU3BlY2lmaWVyU2V0cgcAAADaBXBhcnNl2gRqb2lu2gNtYXDaA3N0cikEcgsAAAByDAAAANoZcmVxdWlyZXNfcHl0aG9uX3NwZWNpZmllctoOcHl0aG9uX3ZlcnNpb26pAHIWAAAA+kEvdG1wL3BpcC11bnBhY2tlZC13aGVlbC1pa3Z0cXN5MS9waXAvX2ludGVybmFsL3V0aWxzL3BhY2thZ2luZy5wedoVY2hlY2tfcmVxdWlyZXNfcHl0aG9uDgAAAHMKAAAAAA4IAgQBCgIWAXIYAAAAaQACAAApAdoHbWF4c2l6ZSkC2gpyZXFfc3RyaW5ncg0AAABjAQAAAAAAAAAAAAAAAQAAAAIAAABDAAAAcwgAAAB0AHwAgwFTACkBejVDb25zdHJ1Y3QgYSBwYWNrYWdpbmcuUmVxdWlyZW1lbnQgb2JqZWN0IHdpdGggY2FjaGluZ3IIAAAAKQFyGgAAAHIWAAAAchYAAAByFwAAANoPZ2V0X3JlcXVpcmVtZW50JQAAAHMCAAAAAAhyGwAAACkC2gVleHRyYXINAAAAYwEAAAAAAAAAAAAAAAEAAAAHAAAAQwAAAHMYAAAAdAB0AXQCoANkAWQCfAChA6AEoQCDAlMAKQNhRAEAAENvbnZlcnQgYW4gYXJiaXRyYXJ5IHN0cmluZyB0byBhIHN0YW5kYXJkICdleHRyYScgbmFtZQoKICAgIEFueSBydW5zIG9mIG5vbi1hbHBoYW51bWVyaWMgY2hhcmFjdGVycyBhcmUgcmVwbGFjZWQgd2l0aCBhIHNpbmdsZSAnXycsCiAgICBhbmQgdGhlIHJlc3VsdCBpcyBhbHdheXMgbG93ZXJjYXNlZC4KCiAgICBUaGlzIGZ1bmN0aW9uIGlzIGR1cGxpY2F0ZWQgZnJvbSBgYHBrZ19yZXNvdXJjZXNgYC4gTm90ZSB0aGF0IHRoaXMgaXMgbm90CiAgICB0aGUgc2FtZSB0byBlaXRoZXIgYGBjYW5vbmljYWxpemVfbmFtZWBgIG9yIGBgX2VnZ19saW5rX25hbWVgYC4KICAgIHoPW15BLVphLXowLTkuLV0r2gFfKQVyBQAAAHIKAAAA2gJyZdoDc3Vi2gVsb3dlcikBchwAAAByFgAAAHIWAAAAchcAAADaCnNhZmVfZXh0cmEwAAAAcwIAAAAACXIhAAAAKRjaCWZ1bmN0b29sc9oHbG9nZ2luZ3IeAAAA2gZ0eXBpbmdyAgAAAHIDAAAAcgQAAAByBQAAAFoVcGlwLl92ZW5kb3IucGFja2FnaW5ncgYAAAByBwAAANoicGlwLl92ZW5kb3IucGFja2FnaW5nLnJlcXVpcmVtZW50c3IJAAAAchMAAAByCgAAANoJZ2V0TG9nZ2Vy2ghfX25hbWVfX9oGbG9nZ2Vy2gNpbnTaBGJvb2xyGAAAANoJbHJ1X2NhY2hlchsAAAByIQAAAHIWAAAAchYAAAByFgAAAHIXAAAA2gg8bW9kdWxlPgEAAABzHAAAAAgBCAEIARgCEAEMAgoCCgQGAAoBAv4MFwoBEgo=