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ZXl3b3JkIGFyZ3VtZW50LiAgSWYgc28sIGl0IGlzCiAgICBuZWNlc3NhcnkgdG8gcmVzcGVjdCB0aGUgZXhwZWN0YXRpb25zIHRoYXQgJ3NldHVwJyBoYXMgb2YgRGlzdHJpYnV0aW9uLgogICAgU2VlIHRoZSBjb2RlIGZvciAnc2V0dXAoKScsIGluIGNvcmUucHksIGZvciBkZXRhaWxzLgogICAgdAcAAAB2ZXJib3NldAEAAAB2cxcAAABydW4gdmVyYm9zZWx5IChkZWZhdWx0KWkBAAAAdAUAAABxdWlldHQBAAAAcXMhAAAAcnVuIHF1aWV0bHkgKHR1cm5zIHZlcmJvc2l0eSBvZmYpcwcAAABkcnktcnVudAEAAABucxoAAABkb24ndCBhY3R1YWxseSBkbyBhbnl0aGluZ3QEAAAAaGVscHQBAAAAaHMaAAAAc2hvdyBkZXRhaWxlZCBoZWxwIG1lc3NhZ2VzCwAAAG5vLXVzZXItY2Zncy0AAABpZ25vcmUgcHlkaXN0dXRpbHMuY2ZnIGluIHlvdXIgaG9tZSBkaXJlY3RvcnlzowAAAENvbW1vbiBjb21tYW5kczogKHNlZSAnLS1oZWxwLWNvbW1hbmRzJyBmb3IgbW9yZSkKCiAgc2V0dXAucHkgYnVpbGQgICAgICB3aWxsIGJ1aWxkIHRoZSBwYWNrYWdlIHVuZGVybmVhdGggJ2J1aWxkLycKICBzZXR1cC5weSBpbnN0YWxsICAgIHdpbGwgaW5zdGFsbCB0aGUgcGFja2FnZQpzDQAAAGhlbHAtY29tbWFuZHNzGwAAAGxpc3QgYWxsIGF2YWlsYWJsZSBjb21tYW5kc3QEAAAAbmFtZXMSAAAAcHJpbnQgcGFja2FnZSBuYW1ldAcAAAB2ZXJzaW9udAEAAABWcxUAAABwcmludCBwYWNrYWdlIHZlcnNpb250CAAAAGZ1bGxuYW1lcx4AAABwcmludCA8cGFja2FnZSBuYW1lPi08dmVyc2lvbj50BgAAAGF1dGhvcnMXAAAAcHJpbnQgdGhlIGF1dGhvcidzIG5hbWVzDAAAAGF1dGhvci1lbWFpbHMgAAAAcHJpbnQgdGhlIGF1dGhvcidzIGVtYWlsIGFkZHJlc3N0CgAAAG1haW50YWluZXJzGwAAAHByaW50IHRoZSBtYWludGFpbmVyJ3MgbmFtZXMQAAAAbWFpbnRhaW5lci1lbWFpbHMkAAAAcHJpbnQgdGhlIG1haW50YWluZXIncyBlbWFpbCBhZGRyZXNzdAcAAABjb250YWN0czcAAABwcmludCB0aGUgbWFpbnRhaW5lcidzIG5hbWUgaWYga25vd24sIGVsc2UgdGhlIGF1dGhvcidzcw0AAABjb250YWN0LWVtYWlsc0AAAABwcmludCB0aGUgbWFpbnRhaW5lcidzIGVtYWlsIGFkZHJlc3MgaWYga25vd24sIGVsc2UgdGhlIGF1dGhvcidzdAMAAAB1cmxzHgAAAHByaW50IHRoZSBVUkwgZm9yIHRoaXMgcGFja2FnZXQHAAAAbGljZW5zZXMgAAAAcHJpbnQgdGhlIGxpY2Vuc2Ugb2YgdGhlIHBhY2thZ2V0BwAAAGxpY2VuY2VzEwAAAGFsaWFzIGZvciAtLWxpY2Vuc2V0CwAAAGRlc2NyaXB0aW9ucx0AAABwcmludCB0aGUgcGFja2FnZSBkZXNjcmlwdGlvbnMQAAAAbG9uZy1kZXNjcmlwdGlvbnMiAAAAcHJpbnQgdGhlIGxvbmcgcGFja2FnZSBkZXNjcmlwdGlvbnQJAAAAcGxhdGZvcm1zcxsAAABwcmludCB0aGUgbGlzdCBvZiBwbGF0Zm9ybXN0CwAAAGNsYXNzaWZpZXJzcx0AAABwcmludCB0aGUgbGlzdCBvZiBjbGFzc2lmaWVyc3QIAAAAa2V5d29yZHNzGgAAAHByaW50IHRoZSBsaXN0IG9mIGtleXdvcmRzdAgAAABwcm92aWRlc3MrAAAAcHJpbnQgdGhlIGxpc3Qgb2YgcGFja2FnZXMvbW9kdWxlcyBwcm92aWRlZHQIAAAAcmVxdWlyZXNzKwAAAHByaW50IHRoZSBsaXN0IG9mIHBhY2thZ2VzL21vZHVsZXMgcmVxdWlyZWR0CQAAAG9ic29sZXRlc3MwAAAAcHJpbnQgdGhlIGxpc3Qgb2YgcGFja2FnZXMvbW9kdWxlcyBtYWRlIG9ic29sZXRlYwEAAAABAAAAAwAAAEMAAABzDgAAAHQAAHwAAGQBABmDAQBTKAIAAABOaQAAAAAoAQAAAFIGAAAAKAEAAAB0AQAAAHgoAAAAACgAAAAAc1UAAAAvYnVpbGRib3QvdG1wL2J1aWxkaG9zdC9pbnN0YWxsL3ByZWJ1aWx0L2xpbnV4LXg4Nl82NC9saWIvcHl0aG9uMi43L2Rpc3R1dGlscy9kaXN0LnB5dAgAAAA8bGFtYmRhPncAAABzAAAAAGMCAAAADgAAAAcAAABDAAAAc2kDAABkAQB8AABfAABkAgB8AABfAQBkAgB8AABfAgB4IQB8AABqAwBEXRYAfQIAdAQAfAAAfAIAZAIAgwMAAXElAFd0BQCDAAB8AABfBgB4OgB8AABqBgBqBwBEXSwAfQMAZAMAfAMAF30EAHQEAHwAAHwEAHQIAHwAAGoGAHwEAIMCAIMDAAFxWABXaQAAfAAAXwkAZA8AfAAAXwsAZA8AfAAAXwwAZA8AfAAAXw0AaQAAfAAAXw4AZwAAfAAAXw8AZA8AfAAAXxAAaQAAfAAAXxEAZA8AfAAAXxIAZA8AfAAAXxMAZA8AfAAAXxQAZA8AfAAAXxUAZA8AfAAAXxYAZA8AfAAAXxcAZA8AfAAAXxgAZA8AfAAAXxkAZA8AfAAAXxoAZA8AfAAAXxsAZAQAfAAAXxwAaQAAfAAAXx0AaQAAfAAAXx4AfAEAcgADfAEAah8AZAUAgwEAfQUAfAUAZA8AawkAcskBfAEAZAUAPXhZAHwFAGogAIMAAERdSABcAgB9BgB9BwB8AABqIQB8BgCDAQB9CAB4KgB8BwBqIACDAABEXRwAXAIAfQkAfQoAZAYAfAoAZgIAfAgAfAkAPHGiAVdxegFXbgAAZAcAfAEAawYAciMCfAEAZAcAGXwBAGQIADx8AQBkBwA9ZAkAfQsAdCIAZA8AawkAcgwCdCIAaiMAfAsAgwEAAXEjAnQkAGolAGomAHwLAGQKABeDAQABbgAAeNoAfAEAaiAAgwAARF3JAFwCAH0MAH0KAHQnAHwAAGoGAGQLAHwMABeDAgBybwJ0CAB8AABqBgBkCwB8DAAXgwIAfAoAgwEAAXEwAnQnAHwAAGoGAHwMAIMCAHKXAnQEAHwAAGoGAHwMAHwKAIMDAAFxMAJ0JwB8AAB8DACDAgByuQJ0BAB8AAB8DAB8CgCDAwABcTACZAwAdCgAfAwAgwEAFn0LAHQiAGQPAGsJAHLlAnQiAGojAHwLAIMBAAFxMAJ0JABqJQBqJgB8CwBkCgAXgwEAAXEwAlduAAB0KQB8AABfKgB8AABqDQBkDwBrCQByWwN4QAB8AABqDQBEXTIAfQ0AfA0AaisAZA0AgwEAczsDUG4AAHwNAGQOAGsCAHIiA3QsAHwAAF8qAFBxIgNxIgNXbgAAfAAAai0AgwAAAWQPAFMoEAAAAHMwAgAAQ29uc3RydWN0IGEgbmV3IERpc3RyaWJ1dGlvbiBpbnN0YW5jZTogaW5pdGlhbGl6ZSBhbGwgdGhlCiAgICAgICAgYXR0cmlidXRlcyBvZiBhIERpc3RyaWJ1dGlvbiwgYW5kIHRoZW4gdXNlICdhdHRycycgKGEgZGljdGlvbmFyeQogICAgICAgIG1hcHBpbmcgYXR0cmlidXRlIG5hbWVzIHRvIHZhbHVlcykgdG8gYXNzaWduIHNvbWUgb2YgdGhvc2UKICAgICAgICBhdHRyaWJ1dGVzIHRoZWlyICJyZWFsIiB2YWx1ZXMuICAoQW55IGF0dHJpYnV0ZXMgbm90IG1lbnRpb25lZCBpbgogICAgICAgICdhdHRycycgd2lsbCBiZSBhc3NpZ25lZCB0byBzb21lIG51bGwgdmFsdWU6IDAsIE5vbmUsIGFuIGVtcHR5IGxpc3QKICAgICAgICBvciBkaWN0aW9uYXJ5LCBldGMuKSAgTW9zdCBpbXBvcnRhbnRseSwgaW5pdGlhbGl6ZSB0aGUKICAgICAgICAnY29tbWFuZF9vYmonIGF0dHJpYnV0ZSB0byB0aGUgZW1wdHkgZGljdGlvbmFyeTsgdGhpcyB3aWxsIGJlCiAgICAgICAgZmlsbGVkIGluIHdpdGggcmVhbCBjb21tYW5kIG9iamVjdHMgYnkgJ3BhcnNlX2NvbW1hbmRfbGluZSgpJy4KICAgICAgICBpAQAAAGkAAAAAdAQAAABnZXRfdAAAAAB0BwAAAG9wdGlvbnNzDAAAAHNldHVwIHNjcmlwdFIdAAAAUhwAAABzOgAAACdsaWNlbmNlJyBkaXN0cmlidXRpb24gb3B0aW9uIGlzIGRlcHJlY2F0ZWQ7IHVzZSAnbGljZW5zZSdzAQAAAAp0BAAAAHNldF9zHwAAAFVua25vd24gZGlzdHJpYnV0aW9uIG9wdGlvbjogJXN0AQAAAC1zDQAAAC0tbm8tdXNlci1jZmdOKC4AAABSDQAAAHQHAAAAZHJ5X3J1blISAAAAdBQAAABkaXNwbGF5X29wdGlvbl9uYW1lc3QHAAAAc2V0YXR0cnQUAAAARGlzdHJpYnV0aW9uTWV0YWRhdGF0CAAAAG1ldGFkYXRhdBEAAABfTUVUSE9EX0JBU0VOQU1FU3QHAAAAZ2V0YXR0cnQIAAAAY21kY2xhc3N0BAAAAE5vbmV0EAAAAGNvbW1hbmRfcGFja2FnZXN0CwAAAHNjcmlwdF9uYW1ldAsAAABzY3JpcHRfYXJnc3QPAAAAY29tbWFuZF9vcHRpb25zdAoAAABkaXN0X2ZpbGVzdAgAAABwYWNrYWdlc3QMAAAAcGFja2FnZV9kYXRhdAsAAABwYWNrYWdlX2RpcnQKAAAAcHlfbW9kdWxlc3QJAAAAbGlicmFyaWVzdAcAAABoZWFkZXJzdAsAAABleHRfbW9kdWxlc3QLAAAAZXh0X3BhY2thZ2V0DAAAAGluY2x1ZGVfZGlyc3QKAAAAZXh0cmFfcGF0aHQHAAAAc2NyaXB0c3QKAAAAZGF0YV9maWxlc3QIAAAAcGFzc3dvcmR0CwAAAGNvbW1hbmRfb2JqdAgAAABoYXZlX3J1bnQDAAAAZ2V0dAUAAABpdGVtc3QPAAAAZ2V0X29wdGlvbl9kaWN0dAgAAAB3YXJuaW5nc3QEAAAAd2FybnQDAAAAc3lzdAYAAABzdGRlcnJ0BQAAAHdyaXRldAcAAABoYXNhdHRydAQAAAByZXBydAQAAABUcnVldA0AAAB3YW50X3VzZXJfY2ZndAoAAABzdGFydHN3aXRodAUAAABGYWxzZXQQAAAAZmluYWxpemVfb3B0aW9ucygOAAAAdAQAAABzZWxmdAUAAABhdHRyc3QEAAAAYXR0cnQIAAAAYmFzZW5hbWV0CwAAAG1ldGhvZF9uYW1lUikAAAB0BwAAAGNvbW1hbmR0CwAAAGNtZF9vcHRpb25zdAgAAABvcHRfZGljdHQDAAAAb3B0dAMAAAB2YWx0AwAAAG1zZ3QDAAAAa2V5dAMAAABhcmcoAAAAACgAAAAAc1UAAAAvYnVpbGRib3QvdG1wL2J1aWxkaG9zdC9pbnN0YWxsL3ByZWJ1aWx0L2xpbnV4LXg4Nl82NC9saWIvcHl0aG9uMi43L2Rpc3R1dGlscy9kaXN0LnB5dAgAAABfX2luaXRfX4AAAABzggAAAAAMCQEJAQkBEAEUBwwBEwEKASAG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ZW5hbWVzIGluIHRoZSBvcmRlciBpbiB3aGljaCB0aGV5CiAgICAgICAgc2hvdWxkIGJlIHBhcnNlZC4gIFRoZSBmaWxlbmFtZXMgcmV0dXJuZWQgYXJlIGd1YXJhbnRlZWQgdG8gZXhpc3QKICAgICAgICAobW9kdWxvIG5hc3R5IHJhY2UgY29uZGl0aW9ucykuCgogICAgICAgIFRoZXJlIGFyZSB0aHJlZSBwb3NzaWJsZSBjb25maWcgZmlsZXM6IGRpc3R1dGlscy5jZmcgaW4gdGhlCiAgICAgICAgRGlzdHV0aWxzIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkgKGllLiB3aGVyZSB0aGUgdG9wLWxldmVsCiAgICAgICAgRGlzdHV0aWxzIF9faW5zdF9fLnB5IGZpbGUgbGl2ZXMpLCBhIGZpbGUgaW4gdGhlIHVzZXIncyBob21lCiAgICAgICAgZGlyZWN0b3J5IG5hbWVkIC5weWRpc3R1dGlscy5jZmcgb24gVW5peCBhbmQgcHlkaXN0dXRpbHMuY2ZnCiAgICAgICAgb24gV2luZG93cy9NYWM7IGFuZCBzZXR1cC5jZmcgaW4gdGhlIGN1cnJlbnQgZGlyZWN0b3J5LgoKICAgICAgICBUaGUgZmlsZSBpbiB0aGUgdXNlcidzIGhvbWUgZGlyZWN0b3J5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIHRoZQogICAgICAgIC0tbm8tdXNlci1jZmcgb3B0aW9uLgogICAgICAgIHQJAAAAZGlzdHV0aWxzcw0AAABkaXN0dXRpbHMuY2ZndAUAAABwb3NpeHMQAAAALnB5ZGlzdHV0aWxzLmNmZ3MPAAAAcHlkaXN0dXRpbHMuY2ZndAEAAAB+cwkAAABzZXR1cC5jZmdzFgAAAHVzaW5nIGNvbmZpZyBmaWxlczogJXNzAgAAACwgKA8AAABSBwAAAHQCAAAAb3N0BAAAAHBhdGh0BwAAAGRpcm5hbWVSTgAAAHQHAAAAbW9kdWxlc3QIAAAAX19maWxlX190BAAAAGpvaW50BgAAAGlzZmlsZXQGAAAAYXBwZW5kUhQAAABSVAAAAHQKAAAAZXhwYW5kdXNlclILAAAAUmsAAAAoBwAAAFJYAAAAdAUAAABmaWxlc3QHAAAAc3lzX2RpcnQI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b3JlLnB5KS4gIFRoaXMgbGlzdCBpcyBmaXJzdCBwcm9jZXNzZWQgZm9yCiAgICAgICAgImdsb2JhbCBvcHRpb25zIiAtLSBvcHRpb25zIHRoYXQgc2V0IGF0dHJpYnV0ZXMgb2YgdGhlIERpc3RyaWJ1dGlvbgogICAgICAgIGluc3RhbmNlLiAgVGhlbiwgaXQgaXMgYWx0ZXJuYXRlbHkgc2Nhbm5lZCBmb3IgRGlzdHV0aWxzIGNvbW1hbmRzCiAgICAgICAgYW5kIG9wdGlvbnMgZm9yIHRoYXQgY29tbWFuZC4gIEVhY2ggbmV3IGNvbW1hbmQgdGVybWluYXRlcyB0aGUKICAgICAgICBvcHRpb25zIGZvciB0aGUgcHJldmlvdXMgY29tbWFuZC4gIFRoZSBhbGxvd2VkIG9wdGlvbnMgZm9yIGEKICAgICAgICBjb21tYW5kIGFyZSBkZXRlcm1pbmVkIGJ5IHRoZSAndXNlcl9vcHRpb25zJyBhdHRyaWJ1dGUgb2YgdGhlCiAgICAgICAgY29tbWFuZCBjbGFzcyAtLSB0aHVzLCB3ZSBoYXZlIHRvIGJlIGFibGUgdG8gbG9hZCBjb21tYW5kIGNsYXNzZXMKICAgICAgICBpbiBvcmRlciB0byBwYXJzZSB0aGUgY29tbWFuZCBsaW5lLiAgQW55IGVycm9yIGluIHRoYXQgJ29wdGlvbnMnCiAgICAgICAgYXR0cmlidXRlIHJhaXNlcyBEaXN0dXRpbHNHZXRvcHRFcnJvcjsgYW55IGVycm9yIG9uIHRoZQogICAgICAgIGNvbW1hbmQtbGluZSByYWlzZXMgRGlzdHV0aWxzQXJnRXJyb3IuICBJZiBubyBEaXN0dXRpbHMgY29tbWFuZHMKICAgICAgICB3ZXJlIGZvdW5kIG9uIHRoZSBjb21tYW5kIGxpbmUsIHJhaXNlcyBEaXN0dXRpbHNBcmdFcnJvci4gIFJldHVybgogICAgICAgIHRydWUgaWYgY29tbWFuZC1saW5lIHdhcyBzdWNjZXNzZnVsbHkgcGFyc2VkIGFuZCB3ZSBzaG91bGQgY2FycnkKICAgICAgICBvbiB3aXRoIGV4ZWN1dGluZyBjb21tYW5kczsgZmFsc2UgaWYgbm8gZXJyb3JzIGJ1dCB3ZSBzaG91bGRuJ3QKICAgICAgICBleGVjdXRlIGNvbW1hbmRzIChjdXJyZW50bHksIHRoaXMgb25seSBoYXBwZW5zIGlmIHVzZXIgYXNrcyBmb3IKICAgICAgICBoZWxwKS4KICAgICAgICBSHAAAAFIdAAAAdAQAAABhcmdzdAYAAABvYmplY3ROdA8AAABkaXNwbGF5X29wdGlvbnNpAAAAAFJuAAAAcxQAAABubyBjb21tYW5kcyBzdXBwbGllZGkBAAAAKBQAAAB0FQAAAF9nZXRfdG9wbGV2ZWxfb3B0aW9uc1JuAAAAUgUAAABSmQAAAHQUAAAAc2V0X25lZ2F0aXZlX2FsaWFzZXNSjgAAAHQLAAAAc2V0X2FsaWFzZXN0BgAAAGdldG9wdFI3AAAAdBAAAABnZXRfb3B0aW9uX29yZGVyUgoAAAB0DQAAAHNldF92ZXJib3NpdHlSDQAAAHQWAAAAaGFuZGxlX2Rpc3BsYXlfb3B0aW9uc3QTAAAAX3BhcnNlX2NvbW1hbmRfb3B0c1I0AAAAUhIAAAB0CgAAAF9zaG93X2hlbHB0AwAAAGxlblICAAAAKAUAAABSWAAAAHQQAAAAdG9wbGV2ZWxfb3B0aW9uc1KRAAAAUpcAAAB0DAAAAG9wdGlvbl9vcmRlcigAAAAAKAAAAABzVQAAAC9idWlsZGJvdC90bXAvYnVpbGRob3N0L2luc3RhbGwvcHJlYnVpbHQvbGludXgteDg2XzY0L2xpYi9weXRob24yLjcvZGlzdHV0aWxzL2Rpc3QucHl0EgAAAHBhcnNlX2NvbW1hbmRfbGluZacBAABzLAAAAAAXDAkJARMBEAEUARsBDAEQAw8BBAEJARIBDAEICAkBDAEVAQoBBAMJAQwDYwEAAAABAAAABAAAAEMAAABzDgAAAHwAAGoAAGQEAGcBABdTKAUAAABzwwAAAFJldHVybiB0aGUgbm9uLWRpc3BsYXkgb3B0aW9ucyByZWNvZ25pemVkIGF0IHRoZSB0b3AgbGV2ZWwuCgogICAgICAgIFRoaXMgaW5jbHVkZXMgb3B0aW9ucyB0aGF0IGFyZSByZWNvZ25pemVkICpvbmx5KiBhdCB0aGUgdG9wCiAgICAgICAgbGV2ZWwgYXMgd2VsbCBhcyBvcHRpb25zIHJlY29nbml6ZWQgZm9yIGNvbW1h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IGNoZWNrIHRoZSAnY21kY2xhc3MnIGRpY3Rpb25hcnk7IGlmIHRoZQogICAgICAgIGNvbW1hbmQgaXMgbWVudGlvbmVkIHRoZXJlLCB3ZSBmZXRjaCB0aGUgY2xhc3Mgb2JqZWN0IGZyb20gdGhlCiAgICAgICAgZGljdGlvbmFyeSBhbmQgcmV0dXJuIGl0LiAgT3RoZXJ3aXNlIHdlIGxvYWQgdGhlIGNvbW1hbmQgbW9kdWxlCiAgICAgICAgKCJkaXN0dXRpbHMuY29tbWFuZC4iICsgY29tbWFuZCkgYW5kIGZldGNoIHRoZSBjb21tYW5kIGNsYXNzIGZyb20KICAgICAgICB0aGUgbW9kdWxlLiAgVGhlIGxvYWRlZCBjbGFzcyBpcyBhbHNvIHN0b3JlZCBpbiAnY21kY2xhc3MnCiAgICAgICAgdG8gc3BlZWQgZnV0dXJlIGNhbGxzIHRvICdnZXRfY29tbWFuZF9jbGFzcygpJy4KCiAgICAgICAgUmFpc2VzIERpc3R1dGlsc01vZHVsZUVycm9yIGlmIHRoZSBleHBlY3RlZCBtb2R1bGUgY291bGQgbm90IGJlCiAgICAgICAgZm91bmQsIG9yIGlmIHRoYXQgbW9kdWxlIGRvZXMgbm90IGRlZmluZSB0aGUgZXhwZWN0ZWQgY2xhc3MuCiAgICAgICAgcwUAAAAlcy4lc3MzAAAAaW52YWxpZCBjb21tYW5kICclcycgKG5vIGNsYXNzICclcycgaW4gbW9kdWxlICclcycpcxQAAABpbnZhbGlkIGNvbW1hbmQgJyVzJ04oCgAAAFIzAAAAUkkAAABS4AAAAHQKAAAAX19pbXBvcnRfX1JOAAAAUnoAAAB0CwAAAEltcG9ydEVycm9yUjIAAABS0gAAAFIDAAAAKAcAAABSWAAAAFJdAAAAUssAAAB0BwAAAHBrZ25hbWV0CwAAAG1vZHVsZV9uYW1ldAoAAABrbGFzc19uYW1ldAYAAABtb2R1bGUoAAAAACgAAAAAc1UAAAAvYnVpbGRib3QvdG1wL2J1aWxkaG9zdC9pbnN0YWxsL3ByZWJ1aWx0L2xpbnV4LXg4Nl82NC9saWIvcHl0aG9uMi43L2Rpc3R1dGlscy9kaXN0LnB5UrAAAAAaAwAAcygAAAAADBIBBgEEAhMBEAEG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IGZyb20gdGhlIGNvbmZpZyBmaWxlcyBhbmQgY29tbWFuZCBsaW5lLgogICAgICAgIFlvdSdsbCBoYXZlIHRvIHJlLWZpbmFsaXplIHRoZSBjb21tYW5kIG9iamVjdCAoYnkgY2FsbGluZwogICAgICAgICdmaW5hbGl6ZV9vcHRpb25zKCknIG9yICdlbnN1cmVfZmluYWxpemVkKCknKSBiZWZvcmUgdXNpbmcgaXQgZm9yCiAgICAgICAgcmVhbC4KCiAgICAgICAgJ2NvbW1hbmQnIHNob3VsZCBiZSBhIGNvbW1hbmQgbmFtZSAoc3RyaW5nKSBvciBjb21tYW5kIG9iamVjdC4gIElmCiAgICAgICAgJ3JlaW5pdF9zdWJjb21tYW5kcycgaXMgdHJ1ZSwgYWxzbyByZWluaXRpYWxpemVzIHRoZSBjb21tYW5kJ3MKICAgICAgICBzdWItY29tbWFuZHMsIGFzIGRlY2xhcmVkIGJ5IHRoZSAnc3ViX2NvbW1hbmRzJyBjbGFzcyBhdHRyaWJ1dGUgKGlmCiAgICAgICAgaXQgaGFzIG9uZSkuICBTZWUgdGhlICJpbnN0YWxsIiBjb21tYW5kIGZvciBhbiBleGFtcGxlLiAgT25seQogICAgICAgIHJlaW5pdGlhbGl6ZXMgdGhlIHN1Yi1jb21tYW5kcyB0aGF0IGFjdHVhbGx5IG1hdHRlciwgaWUuIHRob3NlCiAgICAgICAgd2hvc2UgdGVzdCBwcmVkaWNhdGVzIHJldHVybiB0cnVlLgoKICAgICAgICBSZXR1cm5zIHRoZSByZWluaXRpYWxpemVkIGNvbW1hbmQgb2JqZWN0LgogICAgICAgIGn/////KAEAAABSqAAAAGkAAAAAKAsAAABSrAAAAFKoAAAAUrIAAABS6gAAAFLrAAAAdAkAAABmaW5hbGl6ZWR0EgAAAGluaXRpYWxpemVfb3B0aW9uc1JIAAAAUucAAAB0EAAAAGdldF9zdWJfY29tbWFuZHN0FAAAAHJlaW5pdGlhbGl6ZV9jb21tYW5kKAYAAABSWAAAAFJdAAAAdBIAAAByZWluaXRfc3ViY29tbWFuZHNSqAAAAFLvAAAAdAMAAABzdWIoAAAAACgAAAAAc1UAAAAvYnVpbGRib3QvdG1wL2J1aWxkaG9zdC9p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dWlsZGhvc3QvaW5zdGFsbC9wcmVidWlsdC9saW51eC14ODZfNjQvbGliL3B5dGhvbjIuNy9kaXN0dXRpbHMvZGlzdC5weXQLAAAAaGFzX3NjcmlwdHPhAwAAcwIAAAAAAWMBAAAAAQAAAAMAAABDAAAAcxwAAAB8AABqAABvGwB0AQB8AABqAACDAQBkAQBrBABTKAIAAABOaQAAAAAoAgAAAFJFAAAAUqMAAAAoAQAAAFJYAAAAKAAAAAAoAAAAAHNVAAAAL2J1aWxkYm90L3RtcC9idWlsZGhvc3QvaW5zdGFsbC9wcmVidWlsdC9saW51eC14ODZfNjQvbGliL3B5dGhvbjIuNy9kaXN0dXRpbHMvZGlzdC5weXQOAAAAaGFzX2RhdGFfZmlsZXPkAwAAcwIAAAAAAWMBAAAAAQAAAAMAAABDAAAAcyQAAAB8AABqAACDAABvIwB8AABqAQCDAAAMbyMAfAAAagIAgwAADFMoAQAAAE4oAwAAAFIAAQAAUgEBAABSAgEAACgBAAAAUlgAAAAoAAAAACgAAAAAc1UAAAAvYnVpbGRib3QvdG1wL2J1aWxkaG9zdC9pbnN0YWxsL3ByZWJ1aWx0L2xpbnV4LXg4Nl82NC9saWIvcHl0aG9uMi43L2Rpc3R1dGlscy9kaXN0LnB5dAcAAABpc19wdXJl5wMAAHMGAAAAAAEMAQ0BKAQAAABzBwAAAHZlcmJvc2VSDgAAAHMXAAAAcnVuIHZlcmJvc2VseSAoZGVmYXVsdClpAQAAACgDAAAAcwUAAABxdWlldFIQAAAAcyEAAABydW4gcXVpZXRseSAodHVybnMgdmVyYm9zaXR5IG9mZikoAwAAAHMHAAAAZHJ5LXJ1blIRAAAAcxoAAABkb24ndCBhY3R1YWxseSBkbyBhbnl0aGluZygDAAAAcwQAAABoZWxwUhMAAABzGgAAAHNob3cgZGV0YWlsZWQgaGVscCBtZXNzYWdlTigDAAAAcwsAAABuby11c2VyLWNmZ05zLQAAAGlnbm9yZSBweWRpc3R1dGlscy5jZmcgaW4geW91ciBob21lIGRpcmVjdG9yeSgDAAAAcw0AAABoZWxwLWNvbW1hbmRzTnMbAAAAbGlzdCBhbGwgYXZhaWxhYmxlIGNvbW1hbmRzKAMAAABzBAAAAG5hbWVOcxIAAABwcmludCBwYWNrYWdlIG5hbWUoAwAAAHMHAAAAdmVyc2lvblIWAAAAcxUAAABwcmludCBwYWNrYWdlIHZlcnNpb24oAwAAAHMIAAAAZnVsbG5hbWVOcx4AAABwcmludCA8cGFja2FnZSBuYW1lPi08dmVyc2lvbj4oAwAAAHMGAAAAYXV0aG9yTnMXAAAAcHJpbnQgdGhlIGF1dGhvcidzIG5hbWUoAwAAAHMMAAAAYXV0aG9yLWVtYWlsTnMgAAAAcHJpbnQgdGhlIGF1dGhvcidzIGVtYWlsIGFkZHJlc3MoAwAAAHMKAAAAbWFpbnRhaW5lck5zGwAAAHByaW50IHRoZSBtYWludGFpbmVyJ3MgbmFtZSgDAAAAcxAAAABtYWludGFpbmVyLWVtYWlsTnMkAAAAcHJpbnQgdGhlIG1haW50YWluZXIncyBlbWFpbCBhZGRyZXNzKAMAAABSGgAAAE5zNwAAAHByaW50IHRoZSBtYWludGFpbmVyJ3MgbmFtZSBpZiBrbm93biwgZWxzZSB0aGUgYXV0aG9yJ3MoAwAAAHMNAAAAY29udGFjdC1lbWFpbE5zQAAAAHByaW50IHRoZSBtYWludGFpbmVyJ3MgZW1haWwgYWRkcmVzcyBpZiBrbm93biwgZWxzZSB0aGUgYXV0aG9yJ3MoAwAAAHMDAAAAdXJsTnMeAAAAcHJpbnQgdGhlIFVSTCBmb3IgdGhpcyBwYWNrYWdlKAMAAABzBwAAAGxpY2Vuc2VOcyAAAABwcmludCB0aGUgbGljZW5zZSBvZiB0aGUgcGFja2FnZSgDAAAAcwcAAABsaWNlbmNlTnMTAAAAYWxpYXMgZm9yIC0tbGljZW5zZSgDAAAAcwsAAABkZXNjcmlwdGlvbk5zHQAAAHByaW50IHRoZSBwYWNrYWdlIGRlc2NyaXB0aW9uKAMAAABzEAAAAGxvbmctZGVzY3JpcHRpb25OcyIAAABwcmludCB0aGUgbG9uZyBwYWNrYWdlIGRlc2NyaXB0aW9uKAMAAABzCQAAAHBsYXRmb3Jtc05zGwAAAHByaW50IHRoZSBsaXN0IG9mIHBsYXRmb3JtcygDAAAAcwsAAABjbGFzc2lmaWVyc05zHQAAAHByaW50IHRoZSBsaXN0IG9mIGNsYXNzaWZpZXJzKAMAAABzCAAAAGtleXdv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AFBsYXRmb3JtdAoAAABDbGFzc2lmaWVydAgAAABSZXF1aXJlc3QIAAAAUHJvdmlkZXN0CQAAAE9ic29sZXRlc04oFwAAAFIiAAAAUiMAAABSJAAAAFIgAAAAUg8BAAB0DAAAAF93cml0ZV9maWVsZHQIAAAAZ2V0X25hbWV0CwAAAGdldF92ZXJzaW9udA8AAABnZXRfZGVzY3JpcHRpb250BwAAAGdldF91cmx0CwAAAGdldF9jb250YWN0dBEAAABnZXRfY29udGFjdF9lbWFpbHQLAAAAZ2V0X2xpY2Vuc2VSCQAAAHQUAAAAZ2V0X2xvbmdfZGVzY3JpcHRpb25SfAAAAHQMAAAAZ2V0X2tleXdvcmRzdAsAAABfd3JpdGVfbGlzdHQNAAAAZ2V0X3BsYXRmb3Jtc3QPAAAAZ2V0X2NsYXNzaWZpZXJzdAwAAABnZXRfcmVxdWlyZXN0DAAAAGdldF9wcm92aWRlc3QNAAAAZ2V0X29ic29sZXRlcygFAAAAUlgAAABSGgEAAFIVAAAAdAkAAABsb25nX2Rlc2NSIQAAACgAAAAAKAAAAABzVQAAAC9idWlsZGJvdC90bXAvYnVpbGRob3N0L2luc3RhbGwvcHJlYnVpbHQvbGludXgteDg2XzY0L2xpYi9weXRob24yLjcvZGlzdHV0aWxzL2Rpc3QucHlSHQEAAFYEAABzMAAAAAADBgEbARIBCQITARkBGQEZARkBGQEZARkBCQEZAhIBEwIVAQYBFgIZARkDGQEZAWMEAAAABAAAAAUAAABDAAAAcyQAAAB8AQBqAABkAQB8AgB8AABqAQB8AwCDAQBmAgAWgwEAAWQAAFMoAgAAAE5zBwAAACVzOiAlcwooAgAAAFJQAAAAdA0AAABfZW5jb2RlX2ZpZWxkKAQAAABSWAAAAFIaAQAAUhQAAABSwQAAACgAAAAAKAAAAABzVQAAAC9idWlsZGJvdC90bXAvYnVpbGRob3N0L2luc3RhbGwvcHJlYnVpbHQvbGludXgteDg2XzY0L2xpYi9weXRob24yLjcvZGlzdHV0aWxzL2Rpc3QucHlSLgEAAHgEAABzAgAAAAABYwQAAAAFAAAABQAAAEMAAABzKAAAAHghAHwDAERdGQB9BAB8AABqAAB8AQB8AgB8BACDAwABcQcAV2QAAFMoAQAAAE4oAQAAAFIuAQAAKAUAAABSWAAAAFIaAQAAUhQAAABSFQEAAFLBAAAAKAAAAAAoAAAAAHNVAAAAL2J1aWxkYm90L3RtcC9idWlsZGhvc3QvaW5zdGFsbC9wcmVidWlsdC9saW51eC14ODZfNjQvbGliL3B5dGhvbjIuNy9kaXN0dXRpbHMvZGlzdC5weVI4AQAAewQAAHMEAAAAAAENAWMCAAAAAgAAAAMAAABDAAAAczYAAAB8AQBkAABrCAByEABkAABTdAEAfAEAdAIAgwIAciwAfAEAagMAdAQAgwEAU3QFAHwBAIMBAFMoAQAAAE4oBgAAAFI0AAAAUrIAAAB0BwAAAHVuaWNvZGV0BgAAAGVuY29kZXQRAAAAUEtHX0lORk9fRU5DT0RJTkdSwwAAACgCAAAAUlgAAABSwQAAACgAAAAAKAAAAABzVQAAAC9idWlsZGJvdC90bXAvYnVpbGRob3N0L2luc3RhbGwvcHJlYnVpbHQvbGludXgteDg2XzY0L2xpYi9weXRob24yLjcvZGlzdHV0aWxzL2Rpc3QucHlSPwEAAH8EAABzCgAAAAABDAEEAQ8BDQFjAQAAAAEAAAACAAAAQwAAAHMNAAAAfAAAagAAcAwAZAEAUygCAAAATlISAQAAKAEAAABSFAAAACgBAAAAUlgAAAAoAAAAACgAAAAAc1UAAAAvYnVpbGRib3QvdG1wL2J1aWxkaG9zdC9pbnN0YWxsL3ByZWJ1aWx0L2xpbnV4LXg4Nl82NC9saWIvcHl0aG9uMi43L2Rpc3R1dGlscy9kaXN0LnB5Ui8BAACIBAAAcwIAAAAAAWMBAAAAAQAAAAIAAABDAAAAcw0AAAB8AABqAABwDABkAQBTKAIAAABOcwUAAAAwLjAuMCgBAAAAUhUAAAAoAQAAAFJYAAAAKAAAAAAoAAAAAHNVAAAAL2J1aWxkYm90L3RtcC9idWlsZGhvc3QvaW5zdGFsbC9wcmVidWlsdC9saW51eC14ODZfNjQvbGliL3B5dGhvbjIuNy9kaXN0dXRpbHMvZGlzdC5weVIwAQAAiwQAAHMCAAAAAAFjAQAAAAEAAAADAAAAQwAAAHMaAAAAZAEAfAAAagAAgwAAfAAAagEAgwAAZgIAFlMoAgAAAE5zBQAAACVzLSVzKAIAAABSLwEAAFIwAQAAKAEAAABSWAAAACgAAAAAKAAAAABzVQAAAC9idWlsZGJvdC90bXAvYnVpbGRob3N0L2luc3RhbGwvcHJlYnVpbHQvbGludXgteDg2XzY0L2xpYi9weXRob24yLjcvZGlzdHV0aWxzL2Rpc3QucHl0DAAAAGdldF9mdWxsbmFtZY4EAABzAgAAAAABYwEAAAABAAAAAgAAAEMAAABzFgAAAHwAAGoAAHwAAGoBAIMBAHAVAGQBAFMoAgAAAE5SEgEAACgCAAAAUj8BAABSGAAAACgBAAAAUlgAAAAoAAAAACgAAAAAc1UAAAAvYnVpbGRib3QvdG1wL2J1aWxkaG9zdC9pbnN0YWxsL3ByZWJ1aWx0L2xpbnV4LXg4Nl82NC9saWIvcHl0aG9uMi43L2Rpc3R1dGlscy9kaXN0LnB5dAoAAABnZXRfYXV0aG9ykQQAAHMCAAAAAAFjAQAAAAEAAAACAAAAQwAAAHMNAAAAfAAAagAAcAwAZAEAUygCAAAATlISAQAAKAEAAABSCwEAACgBAAAAUlgAAAAoAAAAACgAAAAAc1UAAAAvYnVpbGRib3QvdG1wL2J1aWxkaG9zdC9pbnN0YWxsL3ByZWJ1aWx0L2xpbnV4LXg4Nl82NC9saWIvcHl0aG9uMi43L2Rpc3R1dGlscy9kaXN0LnB5dBAAAABnZXRfYXV0aG9yX2VtYWlslAQAAHMCAAAAAAFjAQAAAAEAAAACAAAAQwAAAHMWAAAAfAAAagAAfAAAagEAgwEAcBUAZAEAUygCAAAATlISAQAAKAIAAABSPwEAAFIZAAAAKAEAAABSWAAAACgAAAAAKAAAAABzVQAAAC9idWlsZGJvdC90bXAvYnVpbGRob3N0L2luc3RhbGwvcHJlYnVpbHQvbGludXgteDg2XzY0L2xpYi9weXRob24yLjcvZGlzdHV0aWxzL2Rpc3QucHl0DgAAAGdldF9tYWludGFpbmVylwQAAHMCAAAAAAFjAQAAAAEAAAACAAAAQwAAAHMNAAAAfAAAagAAcAwAZAEAUygCAAAATlISAQAAKAEAAABSDAEAACgBAAAAUlgAAAAoAAAAACgAAAAAc1UAAAAvYnVpbGRib3QvdG1wL2J1aWxkaG9zdC9pbnN0YWxsL3ByZWJ1aWx0L2xpbnV4LXg4Nl82NC9saWIvcHl0aG9uMi43L2Rpc3R1dGls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