bw0NCgAAAACiNI1jmqgAAOMAAAAAAAAAAAAAAAAAAAAACAAAAEAAAABzwAIAAGQAZwFaAGQBZAJsAVoBZAFkAmwCWgJkAWQCbANaA2QBZAJsBFoEZAFkAmwFWgVkAWQCbAZaBmQBZAJsB1oIZAFkAmwJWghkAWQCbApaCGQBZAJsC1oIZAFkAmwMWghkAWQDbA1tDloOAQBkAWQEbA9tEFoQAQBkAWQFbBFtEloSAQBkAWQGbBNtFFoUAQBkAWQCbBVaFWQBZAJsFloWZAFkB2wXbRhaGG0ZWhltGloaAQBkAWQIbBttHFocAQBkAWQJbB1tHloeAQBkAWQKbB9tIFogbSFaIQEAZAFkC2wNbSJaIgEAZAFkDGwjbSRaJAEAZAFkDWwjbSVaJQEAZAFkDmwmbSdaJwEAZA9kEGwobSlaKQEAZAFkAmwqWipkAWQCbCtaKmQBZBFsKm0sWiwBAGQBZBJsLW0uWi4BAGQBZBNsL20wWjABAGQBZAJsMVoxZAFkFGwybTNaMwEAZRpyt2QBZBVsNG01WjUBAGU2ZBaDAQEAZTZkF4MBAQBkGGQZhABaN2QaZBuEAFo4ZBxlOWQdZTlmBGQeZB+EBFo6ZCBkIWQiZTlkHWUZZTkZAGYGZCNkJIQEWjtkIGQhZCJlOWQdZRllORkAZgZkJWQmhARaPGQgZCFkImU5ZB1lGWUYZTkZABkAZgZkJ2QohARaPWQgZCFkHWUZZTkZAGYEZClkKoQEWj5kK2QshABaP2QtZC6EAFpAZC9kMIQAWkFlQmVDZgJaRGQxZDKEAFpFZDNkNIQAWkZkNWQ2hABaR2Q3ZDiEAFpIZDlkOoQAWklkO2Q8hABaSmQ9ZD6EAFpLZD9kQIQAWkxkQWRChABaTWRDZESEAFpOZEVkRoQAWk9kR2RIhABaUGRJZEqEAFpRZS5lCGpSalODAVpURwBkS2QAhABkAGVUgwNaU0cAZExkTYQAZE1lKYMDWlVkAlMAKU7aDERpc3RyaWJ1dGlvbukAAAAATikB2glzdHJ0b2Jvb2wpAdoFREVCVUepAdoRdHJhbnNsYXRlX2xvbmdvcHQpAdoFaWdsb2IpA9oETGlzdNoIT3B0aW9uYWzaDVRZUEVfQ0hFQ0tJTkcpAdoLZGVmYXVsdGRpY3QpAdoRbWVzc2FnZV9mcm9tX2ZpbGUpAtoURGlzdHV0aWxzT3B0aW9uRXJyb3LaE0Rpc3R1dGlsc1NldHVwRXJyb3IpAdoNcmZjODIyX2VzY2FwZSkB2glwYWNrYWdpbmcpAdoLb3JkZXJlZF9zZXQpAdoPdW5pcXVlX2V2ZXJzZWVu6QEAAAApAdocU2V0dXB0b29sc0RlcHJlY2F0aW9uV2FybmluZykB2g93aW5kb3dzX3N1cHBvcnQpAdoNZ2V0X3VucGF0Y2hlZCkB2hNwYXJzZV9jb25maWd1cmF0aW9uqQHaB3ZlcnNpb24pAdoHTWVzc2FnZXomc2V0dXB0b29scy5leHRlcm4ucGFja2FnaW5nLnNwZWNpZmllcnN6I3NldHVwdG9vbHMuZXh0ZXJuLnBhY2thZ2luZy52ZXJzaW9uYwEAAAAAAAAAAAAAAAEAAAAEAAAAQwAAAHMUAAAAdACgAWQBdAKhAgEAdAN8AIMBUwApAk56GURvIG5vdCBjYWxsIHRoaXMgZnVuY3Rpb24pBNoId2FybmluZ3PaBHdhcm7aFkRpc3REZXByZWNhdGlvbldhcm5pbmdyFgAAACkB2gNjbHOpAHIfAAAA+lovcm9vdC9nZjE4MC1kZW1vL2NhcmF2ZWxfdXNlcl9wcm9qZWN0L3ZlbnYvbGliL3B5dGhvbjMuMTAvc2l0ZS1wYWNrYWdlcy9zZXR1cHRvb2xzL2Rpc3QucHnaDl9nZXRfdW5wYXRjaGVkMgAAAHMEAAAADAEIAXIhAAAAYwEAAAAAAAAAAAAAAAIAAAAEAAAAQwAAAHMoAAAAdAB8AGQBZACDA30BfAFkAHUAchJ0AaACZAKhAX0BfAF8AF8DfAFTACkDTtoQbWV0YWRhdGFfdmVyc2lvbvoDMi4xKQTaB2dldGF0dHJyGQAAANoHVmVyc2lvbnIiAAAAKQLaBHNlbGbaAm12ch8AAAByHwAAAHIgAAAA2hRnZXRfbWV0YWRhdGFfdmVyc2lvbjcAAABzCgAAAAwBCAEKAQYBBAFyKAAAANoHY29udGVudNoGcmV0dXJuYwEAAAAAAAAAAAAAAAIAAAAKAAAAQwAAAHNKAAAAfACgAKEAfQF0AXwBgwFkAWsCchB8AWQCGQCgAqEAUwBkA6ADfAFkAhkAoAKhAHQEoAVkA6ADfAFkAWQEhQIZAKEBoQFmAqEBUwApBXpGUmV2ZXJzZSBSRkMt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SU5GTyBmb3JtYXQgZGF0YSB0byBhIGZpbGUgb2JqZWN0LmMCAAAAAAAAAAAAAAACAAAABQAAABMAAABzFgAAAIgAoABkAXwAfAFmAhYAoQEBAGQAUwApAk56ByVzOiAlcwopAdoFd3JpdGUpAtoDa2V5cjgAAACpAXJXAAAAch8AAAByIAAAANoLd3JpdGVfZmllbGSnAAAAcwIAAAAWAXojd3JpdGVfcGtnX2ZpbGUuPGxvY2Fscz4ud3JpdGVfZmllbGR6EE1ldGFkYXRhLVZlcnNpb27aBE5hbWVyJQAAANoHU3VtbWFyeXoJSG9tZS1wYWdlKQQpAtoGQXV0aG9yckMAAAApAnoMQXV0aG9yLWVtYWlsck4AAAApAtoKTWFpbnRhaW5lcnJNAAAAKQJ6EE1haW50YWluZXItZW1haWxyTwAAAE7aB0xpY2Vuc2V6DERvd25sb2FkLVVSTHoLUHJvamVjdC1VUkx6BiVzLCAlc3JHAAAA2ghLZXl3b3Jkc9oIUGxhdGZvcm3aCkNsYXNzaWZpZXLaCFJlcXVpcmVz2ghQcm92aWRlc9oJT2Jzb2xldGVz2g9weXRob25fcmVxdWlyZXN6D1JlcXVpcmVzLVB5dGhvbnoYRGVzY3JpcHRpb24tQ29udGVudC1UeXBleg5Qcm92aWRlcy1FeHRyYXoMTGljZW5zZS1GaWxlegUKJXMKCikdcigAAADaA3N0ctoIZ2V0X25hbWXaC2dldF92ZXJzaW9ucloAAADaD2dldF9kZXNjcmlwdGlvbtoHZ2V0X3VybHIkAAAAcg8AAADaC2dldF9saWNlbnNlclEAAADaDHByb2plY3RfdXJsc9oFaXRlbXNyLwAAANoMZ2V0X2tleXdvcmRz2g1nZXRfcGxhdGZvcm1z2gtfd3JpdGVfbGlzdNoPZ2V0X2NsYXNzaWZpZXJz2gxnZXRfcmVxdWlyZXPaDGdldF9wcm92aWRlc9oNZ2V0X29ic29sZXRlc9oHaGFzYXR0cnJqAAAA2h1sb25nX2Rlc2NyaXB0aW9uX2NvbnRlbnRfdHlwZdoPcHJvdmlkZXNfZXh0cmFz2gZzb3J0ZWRyVgAAAHJbAAAA2hRnZXRfbG9uZ19kZXNjcmlwdGlvbikNciYAAAByVwAAAHIZAAAAcl4AAADaD29wdGlvbmFsX2ZpZWxk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YXQKICAgICAgICB1c2VkIGJ5ICdwa2dfcmVzb3VyY2VzLnJlcXVpcmUoKScuICBUaGV5IHdpbGwgYmUgaW5zdGFsbGVkCiAgICAgICAgYXV0b21hdGljYWxseSB3aGVuIHRoZSBwYWNrYWdlIGlzIGluc3RhbGxlZC4gIElmIHlvdSB3aXNoIHRvIHVzZQogICAgICAgIHBhY2thZ2VzIHRoYXQgYXJlIG5vdCBhdmFpbGFibGUgaW4gUHlQSSwgb3Igd2FudCB0byBnaXZlIHlvdXIgdXNlcnMgYW4KICAgICAgICBhbHRlcm5hdGUgZG93bmxvYWQgbG9jYXRpb24sIHlvdSBjYW4gYWRkIGEgJ2ZpbmRfbGlua3MnIG9wdGlvbiB0byB0aGUKICAgICAgICAnW2Vhc3lfaW5zdGFsbF0nIHNlY3Rpb24gb2YgeW91ciBwcm9qZWN0J3MgJ3NldHVwLmNmZycgZmlsZSwgYW5kIHRoZW4KICAgICAgICBzZXR1cHRvb2xzIHdpbGwgc2NhbiB0aGUgbGlzdGVkIHdlYiBwYWdlcyBmb3IgbGlua3MgdGhhdCBzYXRpc2Z5IHRoZQogICAgICAgIHJlcXVpcmVtZW50cy4KCiAgICAgJ2V4dHJhc19yZXF1aXJlJyAtLSBhIGRpY3Rpb25hcnkgbWFwcGluZyBuYW1lcyBvZiBvcHRpb25hbCAiZXh0cmFzIiB0byB0aGUKICAgICAgICBhZGRpdGlvbmFsIHJlcXVpcmVtZW50KHMpIHRoYXQgdXNpbmcgdGhvc2UgZXh0cmFzIGluY3Vycy4gRm9yIGV4YW1wbGUsCiAgICAgICAgdGhpczo6CgogICAgICAgICAgICBleHRyYXNfcmVxdWlyZSA9IGRpY3QocmVTVCA9IFsiZG9jdXRpbHM+PTAuMyIsICJyZVNUZWRpdCJdKQoKICAgICAgICBpbmRpY2F0ZXMgdGhhdCB0aGUgZGlzdHJpYnV0aW9uIGNhbiBvcHRpb25hbGx5IHByb3ZpZGUgYW4gZXh0cmEKICAgICAgICBjYXBhYmlsaXR5IGNhbGxlZCAicmVTVCIsIGJ1dCBpdCBjYW4gb25seSBiZSB1c2VkIGlmIGRvY3V0aWxzIGFuZAogICAgICAgIHJlU1RlZGl0IGFyZSBpbnN0YWxsZWQuICBJZiB0aGUgdXNlciBpbnN0YWxscyB5b3VyIHBhY2thZ2UgdXNpbmcKICAgICAgICBFYXN5SW5zdGFsbCBhbmQgcmVxdWVzdHMgb25lIG9mIHlvdXIgZXh0cmFzLCB0aGUgY29ycmVzcG9uZGluZwogICAgICAgIGFkZGl0aW9uYWwgcmVxdWlyZW1lbnRzIHdpbGwgYmUgaW5zdGFsbGVkIGlmIG5lZWRlZC4KCiAgICAgJ3Rlc3Rfc3VpdGUnIC0tIHRoZSBuYW1lIG9mIGEgdGVzdCBzdWl0ZSB0byBydW4gZm9yIHRoZSAndGVzdCcgY29tbWFuZC4KICAgICAgICBJZiB0aGUgdXNlciBydW5zICdweXRob24gc2V0dXAucHkgdGVzdCcsIHRoZSBwYWNrYWdlIHdpbGwgYmUgaW5zdGFsbGVkLAogICAgICAgIGFuZCB0aGUgbmFtZWQgdGVzdCBzdWl0ZSB3aWxsIGJlIHJ1bi4gIFRoZSBmb3JtYXQgaXMgdGhlIHNhbWUgYXMKICAgICAgICB3b3VsZCBiZSB1c2VkIG9uIGEgJ3VuaXR0ZXN0LnB5JyBjb21tYW5kIGxpbmUuICBUaGF0IGlzLCBpdCBpcyB0aGUKICAgICAgICBkb3R0ZWQgbmFtZSBvZiBhbiBvYmplY3QgdG8gaW1wb3J0IGFuZCBjYWxsIHRvIGdlbmVyYXRlIGEgdGVzdCBzdWl0ZS4KCiAgICAgJ3BhY2thZ2VfZGF0YScgLS0gYSBkaWN0aW9uYXJ5IG1hcHBpbmcgcGFja2FnZSBuYW1lcyB0byBsaXN0cyBvZiBmaWxlbmFtZXMKICAgICAgICBvciBnbG9icyB0byB1c2UgdG8gZmluZCBkYXRhIGZpbGVzIGNvbnRhaW5lZCBpbiB0aGUgbmFtZWQgcGFja2FnZXMuCiAgICAgICAgSWYgdGhlIGRpY3Rpb25hcnkgaGFzIGZpbGVuYW1lcyBvciBnbG9icyBsaXN0ZWQgdW5kZXIgJyIiJyAodGhlIGVtcHR5CiAgICAgICAgc3RyaW5nKSwgdGhvc2UgbmFtZXMgd2lsbCBiZSBzZWFyY2hlZCBmb3IgaW4gZXZlcnkgcGFja2FnZSwgaW4gYWRkaXRpb24KICAgICAgICB0byBhbnkgbmFtZXMgZm9yIHRoZSBzcGVjaWZpYyBwYWNrYWdlLiAgRGF0YSBmaWxlcyBmb3VuZCB1c2luZyB0aGVzZQogICAgICAgIG5hbWVzL2dsb2JzIHdpbGwgYmUgaW5zdGFsbGVkIGFsb25nIHdpdGggdGhlIHBhY2thZ2UsIGluIHRoZSBzYW1lCiAgICAgICAgbG9jYXRpb24gYXMgdGhlIHBhY2thZ2UuICBOb3RlIHRoYXQgZ2xvYnMgYXJlIGFsbG93ZWQgdG8gcmVmZXJlbmNlCiAgICAgICAgdGhlIGNvbnRlbnRzIG9mIG5vbi1wYWNrYWdlIHN1YmRpcmVjdG9yaWVzLCBhcyBsb25nIGFzIHlvdSB1c2UgJy8nIGFzCiAgICAgICAgYSBwYXRoIHNlcGFyYXRvci4gIChHbG9icyBhcmUgYXV0b21hdGljYWxseSBjb252ZXJ0ZWQgdG8KICAgICAgICBwbGF0Zm9ybS1zcGVjaWZpYyBwYXRocyBhdCBydW50aW1lLikKCiAgICBJbiBhZGRpdGlvbiB0byB0aGVzZSBuZXcga2V5d29yZHMsIHRoaXMgY2xhc3MgYWxzbyBoYXMgc2V2ZXJhbCBuZXcgbWV0aG9kcwogICAgZm9yIG1hbmlwdWxhdGluZyB0aGUgZGlzdHJpYnV0aW9uJ3MgY29udGVudHMuICBGb3IgZXhhbXBsZSwgdGhlICdpbmNsdWRlKCknCiAgICBhbmQgJ2V4Y2x1ZGUoKScgbWV0aG9kcyBjYW4gYmUgdGhvdWdodCBvZiBhcyBpbi1wbGFjZSBhZGQgYW5kIHN1YnRyYWN0CiAgICBjb21tYW5kcyB0aGF0IGFkZCBvciByZW1vdmUgcGFja2FnZXMsIG1vZHVsZXMsIGV4dGVuc2lvbnMsIGFuZCBzbyBvbiBmcm9tCiAgICB0aGUgZGlzdHJpYnV0aW9uLgogICAgYwAAAAAAAAAAAAAAAAAAAAABAAAAQwAAAPMEAAAAZABTAKkBTnIfAAAAch8AAAByHwAAAHIfAAAAciAAAADaCDxsYW1iZGE+qAEAAPMCAAAABAB6FURpc3RyaWJ1dGlvbi48bGFtYmRhPmMAAAAAAAAAAAAAAAAAAAAAAQAAAEMAAAByxgAAAHLHAAAAch8AAAByHwAAAHIfAAAAch8AAAByIAAAAHLIAAAA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