Mw0NCgxae2OfCQAA4wAAAAAAAAAAAAAAABUAAABAAAAAc0ABAABkAFoAZAFkAmwBWgFkAWQCbAJaAmQBZAJsA1oDZAFkAmwEWgRkAWQCbAVaBXkOZAFkAmwGagdaCFcAbhwEAGUJawpyVgEAAQABAGQBZAJsCloIWQBuAlgAeRBkAWQDbAttDFoMAQBXAG4gBABlCWsKcogBAAEAAQBkAWQDbA1tDFoMAQBZAG4CWABkBGQFbA5tD1oPAQBkBGQGbBBtEVoRbRJaEgEAZARkB2wTbRRaFG0VWhVtFloWAQBkBGQIbBdtGFoYbRlaGW0aWhoBAGUCahtlHIMBWh1kCWQKhABaHmQbZAxkDYQBWhdlF2YBZA5kD4QBWh9kEGQRhABaIGUBaiGDAFoiZSJqI2QSZBNkFI0CAQBlImojZBVkFmQXZBSNAwEAZBhkGYQAWiRlHGQaawKQAXI8ZSSDAAEAZAJTACkcejJCdWlsZCBtZXRhZGF0YSBmb3IgYSBwcm9qZWN0IHVzaW5nIFBFUCA1MTcgaG9va3MuCukAAAAATikB2gRQYXRo6QEAAAApAdoQQnVpbGRFbnZpcm9ubWVudCkC2hBQZXA1MTdIb29rQ2FsbGVy2hdxdWlldF9zdWJwcm9jZXNzX3J1bm5lcikD2gd0ZW1wZGly2gdta2Rpcl9w2g5kaXJfdG9femlwZmlsZSkD2g92YWxpZGF0ZV9zeXN0ZW3aC2xvYWRfc3lzdGVt2g1jb21wYXRfc3lzdGVtYwMAAAAAAAAABwAAAA0AAABDAAAAc4QAAAB8AGoAaQCDAX0DdAFqAmQBfAODAgEAfAFqA3wDgwEBAHQBagJkAoMBAQB0BIMAj0p9BHQBagJkA3wEgwIBAHwAagV8BGkAgwJ9BXQGagdqCHwEfAWDAn0GdAlqCnwGdAZqB2oIfAJ0BmoHagt8BYMBgwKDAgEAVwBkAFEAUgBYAGQAUwApBE56FkdvdCBidWlsZCByZXF1aXJlczogJXN6JEluc3RhbGxlZCBkeW5hbWljIGJ1aWxkIGRlcGVuZGVuY2llc3oeVHJ5aW5nIHRvIGJ1aWxkIG1ldGFkYXRhIGluICVzKQxaHGdldF9yZXF1aXJlc19mb3JfYnVpbGRfd2hlZWzaA2xvZ9oEaW5mb9oLcGlwX2luc3RhbGxyBwAAAFogcHJlcGFyZV9tZXRhZGF0YV9mb3JfYnVpbGRfd2hlZWzaAm9z2gRwYXRo2gRqb2lu2gZzaHV0aWzaBG1vdmXaCGJhc2VuYW1lKQfaBWhvb2tz2gNlbnbaBGRlc3TaBHJlcXPaAnRk2ghmaWxlbmFtZdoGc291cmNlqQByHQAAAPo2L3RtcC9waXAtYnVpbGQtMWZpY29qNHMvcGlwL3BpcC9fdmVuZG9yL3BlcDUxNy9tZXRhLnB52gpfcHJlcF9tZXRhGwAAAHMSAAAAAAEKAQwCCgEKAggBDAEMAQ4Bch8AAADaAS5jAwAAAAAAAAAFAAAAEgAAAEMAAABzigAAAHwCcAp0AHwAgwF9AnQBagJqA3wAfAFwGmQBgwJ9AXQEfAGDAQEAdAV8AoMBAQB0BnwAfAJkAhkAfAJqB2QDgwGDA30DfANqCHQJgwGPMgEAdAqDAI8gfQR8BGoLfAJkBBkAgwEBAHQMfAN8BHwBgwMBAFcAZABRAFIAWABXAGQAUQBSAFgAZABTACkFTtoEZGlzdHoNYnVpbGQtYmFja2VuZHoMYmFja2VuZC1wYXRo2ghyZXF1aXJlcykNcgsAAAByEAAAAHIRAAAAchIAAAByCAAAAHIKAAAAcgUAAADaA2dldFoRc3VicHJvY2Vzc19ydW5uZXJyBgAAAHIEAAAAcg8AAAByHwAAACkF2gpzb3VyY2VfZGlychgAAADaBnN5c3RlbXIWAAAAchcAAAByHQAAAHIdAAAAch4AAADaBWJ1aWxkKQAAAHMUAAAAAAEMARIBCAEIAQIBFAMMAQgBDgFyJgAAAGMBAAAAAAAAAAIAAAAKAAAAQwAAAHMkAAAAdACDAI8UfQF8AHwBZAGNAQEAdAF8AYMBUwBRAFIAWABkAFMAKQJOKQFyGAAAACkCcgcAAAByCQAAACkC2gdidWlsZGVy2gdvdXRfZGlych0AAAByHQAAAHIeAAAA2gxidWlsZF9hc196aXA4AAAAcwYAAAAAAQgBCgFyKQAAAGMBAAAAAAAAAAQAAAAFAAAAQwAAAHM6AAAAdABqAWoCfACDAX0AdAN8AIMBfQF0BGoFdAZ8AHwBZAGNA30CdAd0CHwCgwGDAX0DdAlqCnwDgwFTACkCepcKICAgIEdpdmVuIGEgc291cmNlIGRpcmVjdG9yeSAocm9vdCkgb2YgYSBwYWNrYWdlLAogICAgcmV0dXJuIGFuIGltcG9ydGxpYi5tZXRhZGF0YS5EaXN0cmlidXRpb24gb2JqZWN0CiAgICB3aXRoIG1ldGFkYXRhIGJ1aWxkIGZyb20gdGhhdCBwYWNrYWdlLgogICAgKQJyJAAAAHIlAAAAKQtyEAAAAHIRAAAA2gpleHBhbmR1c2VycgwAAADaCWZ1bmN0b29sc9oHcGFydGlhbHImAAAAcgIAAAByKQAAANoIaW1wX21ldGFaEFBhdGhEaXN0cmlidXRpb24pBNoEcm9vdHIlAAAAcicAAAByEQAAAHIdAAAAch0AAAByHgAAANoEbG9hZD4AAABzCgAAAAAGDAEIARABDAFyLwAAAHIkAAAAeiVBIGRpcmVjdG9yeSBjb250YWluaW5nIHB5cHJvamVjdC50b21sKQHaBGhlbHB6CS0tb3V0LWRpcnoCLW96PkRlc3RpbmF0aW9uIGluIHdoaWNoIHRvIHNhdmUgdGhlIGJ1aWxkcyByZWxhdGl2ZSB0byBzb3VyY2UgZGlyYwAAAAAAAAAAAQAAAAMAAABDAAAAcxoAAAB0AGoBgwB9AHQCfABqA3wAagSDAgEAZABTACkBTikF2gZwYXJzZXLaCnBhcnNlX2FyZ3NyJgAAAHIkAAAAcigAAAApAdoEYXJnc3IdAAAAch0AAAByHgAAANoEbWFpblYAAABzBAAAAAABCAFyNAAAANoIX19tYWluX18pA3IgAAAATk4pJdoHX19kb2NfX9oIYXJncGFyc2XaB2xvZ2dpbmdyEAAAAHITAAAAcisAAABaEmltcG9ydGxpYi5tZXRhZGF0YdoIbWV0YWRhdGFyLQAAANoLSW1wb3J0RXJyb3JaEmltcG9ydGxpYl9tZXRhZGF0YdoHemlwZmlsZXICAAAAWgR6aXBwWghlbnZidWlsZHIEAAAAWgh3cmFwcGVyc3IFAAAAcgYAAABaCGRpcnRvb2xzcgcAAAByCAAAAHIJAAAAciYAAAByCgAAAHILAAAAcgwAAADaCWdldExvZ2dlctoIX19uYW1lX19yDQAAAHIfAAAAcikAAAByLwAAANoOQXJndW1lbnRQYXJzZXJyMQAAANoMYWRkX2FyZ3VtZW50cjQAAAByHQAAAHIdAAAAch0AAAByHgAAANoIPG1vZHVsZT4CAAAAc0AAAAAEAQgBCAEIAQgBCAICAQ4BDgEOAgIBEAEOARICDAEQARQBFAIKAwgOCg8MBggNCAEEAQIBCAIEAQQBCAQIBQoB