VQ0NCgAAAADLuIxj/hoAAOMAAAAAAAAAAAAAAAAAAAAABAAAAEAAAAFzkgAAAGQAZAFsAG0BWgEBAGQAZAJsAloCZABkAmwDWgNkAGQDbARtBVoFAQBkAGQEbAZtB1oHAQBkBWQGbAhtCVoJAQBlA2oKoAtkB6EBclpkAGQIbAJtDFoMAQBuDmQJZAqcAWQLZAyEBFoMRwBkDWQOhABkDmUJgwNaDWQPZBBkEZwCZBJkE4QEWg5kDmcBWg9kAlMAKRTpAAAAACkB2gthbm5vdGF0aW9uc04pAdoMQ29uZmlnUGFyc2VyKQHaBFBhdGjpAQAAACkB2g9QbGF0Zm9ybURpcnNBQkPaBWxpbnV4KQHaBmdldHVpZNoDaW50qQHaBnJldHVybmMAAAAAAAAAAAAAAAAAAAAAAgAAAEMAAAFzDAAAAHQAZAGDAYIBZABTACkCTnocc2hvdWxkIG9ubHkgYmUgdXNlZCBvbiBMaW51eCkB2gxSdW50aW1lRXJyb3KpAHINAAAAcg0AAAD6QS90bXAvcGlwLXVucGFja2VkLXdoZWVsLWlrdnRxc3kxL3BpcC9fdmVuZG9yL3BsYXRmb3JtZGlycy91bml4LnB5cggAAAAOAAAAcwIAAAAAAXIIAAAAYwAAAAAAAAAAAAAAAAAAAAAEAAAAQAAAAXP2AAAAZQBaAWQAWgJkAVoDZQRkAmQDnAFkBGQFhASDAVoFZQRkAmQDnAFkBmQHhASDAVoGZAJkAmQInAJkCWQKhARaB2UEZAJkA5wBZAtkDIQEgwFaCGUEZAJkA5wBZA1kDoQEgwFaCWUEZAJkA5wBZA9kEIQEgwFaCmUEZAJkA5wBZBFkEoQEgwFaC2UEZAJkA5wBZBNkFIQEgwFaDGUEZAJkA5wBZBVkFoQEgwFaDWUEZAJkA5wBZBdkGIQEgwFaDmUEZBlkA5wBZBpkG4QEgwFaD2UEZBlkA5wBZBxkHYQEgwFaEGQCZBlkHpwCZB9kIIQEWhFkIVMAKSLaBFVuaXhhRAIAAAogICAgT24gVW5peC9MaW51eCwgd2UgZm9sbG93IHRoZQogICAgYFhERyBCYXNlZGlyIFNwZWMgPGh0dHBzOi8vc3BlY2lmaWNhdGlvbnMuZnJlZWRlc2t0b3Aub3JnL2Jhc2VkaXItc3BlYy9iYXNlZGlyLXNwZWMtbGF0ZXN0Lmh0bWw+YF8uIFRoZSBzcGVjIGFsbG93cwogICAgb3ZlcnJpZGluZyBkaXJlY3RvcmllcyB3aXRoIGVudmlyb25tZW50IHZhcmlhYmxlcy4gVGhlIGV4YW1wbGVzIHNob3cgYXJlIHRoZSBkZWZhdWx0IHZhbHVlcywgYWxvbmdzaWRlIHRoZSBuYW1lIG9mCiAgICB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgdGhhdCBvdmVycmlkZXMgdGhlbS4gTWFrZXMgdXNlIG9mIHRoZQogICAgYGFwcG5hbWUgPHBsYXRmb3JtZGlycy5hcGkuUGxhdGZvcm1EaXJzQUJDLmFwcG5hbWU+YCwKICAgIGB2ZXJzaW9uIDxwbGF0Zm9ybWRpcnMuYXBpLlBsYXRmb3JtRGlyc0FCQy52ZXJzaW9uPmAsCiAgICBgbXVsdGlwYXRoIDxwbGF0Zm9ybWRpcnMuYXBpLlBsYXRmb3JtRGlyc0FCQy5tdWx0aXBhdGg+YCwKICAgIGBvcGluaW9uIDxwbGF0Zm9ybWRpcnMuYXBpLlBsYXRmb3JtRGlyc0FCQy5vcGluaW9uPmAuCiAgICDaA3N0cnIKAAAAYwEAAAAAAAAAAAAAAAIAAAAEAAAAQwAAAXMsAAAAdABqAaACZAFkAqECfQF8AaADoQBzInQAagSgBWQDoQF9AXwAoAZ8AaEBUwApBHqWCiAgICAgICAgOnJldHVybjogZGF0YSBkaXJlY3RvcnkgdGllZCB0byB0aGUgdXNlciwgZS5nLiBgYH4vLmxvY2FsL3NoYXJlLyRhcHBuYW1lLyR2ZXJzaW9uYGAgb3IKICAgICAgICAgYGAkWERHX0RBVEFfSE9NRS8kYXBwbmFtZS8kdmVyc2lvbmBgCiAgICAgICAg2g1YREdfREFUQV9IT01F2gB6Dn4vLmxvY2FsL3NoYXJlqQfaAm9z2gdlbnZpcm9u2gNnZXTaBXN0cmlw2gRwYXRo2gpleHBhbmR1c2Vy2hxfYXBwZW5kX2FwcF9uYW1lX2FuZF92ZXJzaW9uqQLaBHNlbGZyGAAAAHINAAAAcg0AAAByDgAAANoNdXNlcl9kYXRhX2Rpch4AAABzCAAAAAAGDgEIAQwBehJVbml4LnVzZXJfZGF0YV9kaXJjAQAAAAAAAAAAAAAAAgAAAAQA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