You are viewing a single comment's thread from:

RE: wit

{"id":"ssc-mainnet-hive","json":{"contractName":"contract","contractAction":"update","contractPayload":{"name":"witnesses","params":"","code":"Y29uc3QgTkJfQVBQUk9WQUxTX0FMTE9XRUQ9MzAsTkJfVE9QX1dJVE5FU1NFUz0yMCxOQl9CQUNLVVBfV0lUTkVTU0VTPTEsTkJfV0lUTkVTU0VTPTIxLE5CX1dJVE5FU1NFU19TSUdOQVRVUkVTX1JFUVVJUkVEPTE0LE1BWF9ST1VORFNfTUlTU0VEX0lOX0FfUk9XPTMsTUFYX1JPVU5EX1BST1BPU0lUSU9OX1dBSVRJTkdfUEVSSU9EPTQwLE5CX1RPS0VOU19UT19SRVdBUkQ9IjAuMDA5NTEyOTMiLE5CX1RPS0VOU19ORUVERURfQkVGT1JFX1JFV0FSRElORz0iMC4wNDc1NjQ2NSIsVVRJTElUWV9UT0tFTl9TWU1CT0w9IkJFRSIsR09WRVJOQU5DRV9UT0tFTl9TWU1CT0w9IkJFRSIsR09WRVJOQU5DRV9UT0tFTl9QUkVDSVNJT049MyxHT1ZFUk5BTkNFX1RPS0VOX01JTl9WQUxVRT0iMC4wMDEiO2FjdGlvbnMuY3JlYXRlU1NDPWFzeW5jKCk9PntpZighMT09PWF3YWl0IGFwaS5kYi50YWJsZUV4aXN0cygid2l0bmVzc2VzIikpe2F3YWl0IGFwaS5kYi5jcmVhdGVUYWJsZSgid2l0bmVzc2VzIixbImFwcHJvdmFsV2VpZ2h0Il0pLGF3YWl0IGFwaS5kYi5jcmVhdGVUYWJsZSgiYXBwcm92YWxzIixbImZyb20iLCJ0byJdKSxhd2FpdCBhcGkuZGIuY3JlYXRlVGFibGUoImFjY291bnRzIixbImFjY291bnQiXSksYXdhaXQgYXBpLmRiLmNyZWF0ZVRhYmxlKCJzY2hlZHVsZXMiKSxhd2FpdCBhcGkuZGIuY3JlYXRlVGFibGUoInBhcmFtcyIpO2NvbnN0IHBhcmFtcz17dG90YWxBcHByb3ZhbFdlaWdodDoiMCIsbnVtYmVyT2ZBcHByb3ZlZFdpdG5lc3NlczowLGxhc3RWZXJpZmllZEJsb2NrTnVtYmVyOjAscm91bmQ6MCxsYXN0QmxvY2tSb3VuZDowLGN1cnJlbnRXaXRuZXNzOm51bGwsYmxvY2tOdW1iZXJXaXRuZXNzQ2hhbmdlOjAsbGFzdFdpdG5lc3NlczpbXSxudW1iZXJPZkFwcHJvdmFsc1BlckFjY291bnQ6MzAsbnVtYmVyT2ZUb3BXaXRuZXNzZXM6MjAsbnVtYmVyT2ZXaXRuZXNzU2xvdHM6MjEsd2l0bmVzc1NpZ25hdHVyZXNSZXF1aXJlZDoxNCxtYXhSb3VuZHNNaXNzZWRJbkFSb3c6MyxtYXhSb3VuZFByb3Bvc2l0aW9uV2FpdGluZ1BlcmlvZDo0MH07YXdhaXQgYXBpLmRiLmluc2VydCgicGFyYW1zIixwYXJhbXMpfX0sYWN0aW9ucy5yZXNldFNjaGVkdWxlPWFzeW5jKCk9PntpZihhcGkuc2VuZGVyIT09YXBpLm93bmVyKXJldHVybjtjb25zdCBzY2hlZHVsZXM9YXdhaXQgYXBpLmRiLmZpbmQoInNjaGVkdWxlcyIse30pO2ZvcihsZXQgaW5kZXg9MDtpbmRleDxzY2hlZHVsZXMubGVuZ3RoO2luZGV4Kz0xKXtjb25zdCBzY2hlZHVsZT1zY2hlZHVsZXNbaW5kZXhdO2F3YWl0IGFwaS5kYi5yZW1vdmUoInNjaGVkdWxlcyIsc2NoZWR1bGUpfWNvbnN0IHBhcmFtcz1hd2FpdCBhcGkuZGIuZmluZE9uZSgicGFyYW1zIix7fSk7cGFyYW1zLmN1cnJlbnRXaXRuZXNzPW51bGwscGFyYW1zLmJsb2NrTnVtYmVyV2l0bmVzc0NoYW5nZT0wLHBhcmFtcy5sYXN0V2l0bmVzc2VzPVtdLGF3YWl0IGFwaS5kYi51cGRhdGUoInBhcmFtcyIscGFyYW1zKX0sYWN0aW9ucy51cGRhdGVQYXJhbXM9YXN5bmMgcGF5bG9hZD0+e2lmKGFwaS5zZW5kZXIhPT1hcGkub3duZXIpcmV0dXJuO2NvbnN0e251bWJlck9mQXBwcm92YWxzUGVyQWNjb3VudDpudW1iZXJPZkFwcHJvdmFsc1BlckFjY291bnQsbnVtYmVyT2ZUb3BXaXRuZXNzZXM6bnVtYmVyT2ZUb3BXaXRuZXNzZXMsbnVtYmVyT2ZXaXRuZXNzU2xvdHM6bnVtYmVyT2ZXaXRuZXNzU2xvdHMsd2l0bmVzc1NpZ25hdHVyZXNSZXF1aXJlZDp3aXRuZXNzU2lnbmF0dXJlc1JlcXVpcmVkLG1heFJvdW5kc01pc3NlZEluQVJvdzptYXhSb3VuZHNNaXNzZWRJbkFSb3csbWF4Um91bmRQcm9wb3NpdGlvbldhaXRpbmdQZXJpb2Q6bWF4Um91bmRQcm9wb3NpdGlvbldhaXRpbmdQZXJpb2R9PXBheWxvYWQscGFyYW1zPWF3YWl0IGFwaS5kYi5maW5kT25lKCJwYXJhbXMiLHt9KTtsZXQgc2hvdWxkUmVzZXRTY2hlZHVsZT0hMTtudW1iZXJPZkFwcHJvdmFsc1BlckFjY291bnQmJk51bWJlci5pc0ludGVnZXIobnVtYmVyT2ZBcHByb3ZhbHNQZXJBY2NvdW50KSYmKHBhcmFtcy5udW1iZXJPZkFwcHJvdmFsc1BlckFjY291bnQ9bnVtYmVyT2ZBcHByb3ZhbHNQZXJBY2NvdW50KSxudW1iZXJPZlRvcFdpdG5lc3NlcyYmTnVtYmVyLmlzSW50ZWdlcihudW1iZXJPZlRvcFdpdG5lc3NlcykmJihwYXJhbXMubnVtYmVyT2ZUb3BXaXRuZXNzZXM9bnVtYmVyT2ZUb3BXaXRuZXNzZXMpLG51bWJlck9mV2l0bmVzc1Nsb3RzJiZOdW1iZXIuaXNJbnRlZ2VyKG51bWJlck9mV2l0bmVzc1Nsb3RzKSYmcGFyYW1zLm51bWJlck9mV2l0bmVzc1Nsb3RzIT09bnVtYmVyT2ZXaXRuZXNzU2xvdHMmJihzaG91bGRSZXNldFNjaGVkdWxlPSEwLHBhcmFtcy5udW1iZXJPZldpdG5lc3NTbG90cz1udW1iZXJPZldpdG5lc3NTbG90cyksd2l0bmVzc1NpZ25hdHVyZXNSZXF1aXJlZCYmTnVtYmVyLmlzSW50ZWdlcih3aXRuZXNzU2lnbmF0dXJlc1JlcXVpcmVkKSYmKHBhcmFtcy53aXRuZXNzU2lnbmF0dXJlc1JlcXVpcmVkPXdpdG5lc3NTaWduYXR1cmVzUmVxdWlyZWQpLG1heFJvdW5kc01pc3NlZEluQVJvdyYmTnVtYmVyLmlzSW50ZWdlcihtYXhSb3VuZHNNaXNzZWRJbkFSb3cpJiYocGFyYW1zLm1heFJvdW5kc01pc3NlZEluQVJvdz1tYXhSb3VuZHNNaXNzZWRJbkFSb3cpLG1heFJvdW5kUHJvcG9zaXRpb25XYWl0aW5nUGVyaW9kJiZOdW1iZXIuaXNJbnRlZ2VyKG1heFJvdW5kUHJvcG9zaXRpb25XYWl0aW5nUGVyaW9kKSYmKHBhcmFtcy5tYXhSb3VuZFByb3Bvc2l0aW9uV2FpdGluZ1BlcmlvZD1tYXhSb3VuZFByb3Bvc2l0aW9uV2FpdGluZ1BlcmlvZCksYXBpLmFzc2VydChwYXJhbXMubnVtYmVyT2ZUb3BXaXRuZXNzZXMrMT09PXBhcmFtcy5udW1iZXJPZldpdG5lc3NTbG90cywib25seSAxIGJhY2t1cCBhbGxvd2VkIikmJihhd2FpdCBhcGkuZGIudXBkYXRlKCJwYXJhbXMiLHBhcmFtcyksc2hvdWxkUmVzZXRTY2hlZHVsZSYmYXdhaXQgYWN0aW9ucy5yZXNldFNjaGVkdWxlKCkpfTtjb25zdCB1cGRhdGVXaXRuZXNzUmFuaz1hc3luYyh3aXRuZXNzLGFwcHJvdmFsV2VpZ2h0KT0+e2NvbnN0IHdpdG5lc3NSZWM9YXdhaXQgYXBpLmRiLmZpbmRPbmUoIndpdG5lc3NlcyIse2FjY291bnQ6d2l0bmVzc30pO2lmKHdpdG5lc3NSZWMpe2NvbnN0IG9sZEFwcHJvdmFsV2VpZ2h0PXdpdG5lc3NSZWMuYXBwcm92YWxXZWlnaHQuJG51bWJlckRlY2ltYWw7d2l0bmVzc1JlYy5hcHByb3ZhbFdlaWdodC4kbnVtYmVyRGVjaW1hbD1hcGkuQmlnTnVtYmVyKHdpdG5lc3NSZWMuYXBwcm92YWxXZWlnaHQuJG51bWJlckRlY2ltYWwpLnBsdXMoYXBwcm92YWxXZWlnaHQpLnRvRml4ZWQoNSksYXdhaXQgYXBpLmRiLnVwZGF0ZSgid2l0bmVzc2VzIix3aXRuZXNzUmVjKTtjb25zdCBwYXJhbXM9YXdhaXQgYXBpLmRiLmZpbmRPbmUoInBhcmFtcyIse30pO3BhcmFtcy50b3RhbEFwcHJvdmFsV2VpZ2h0PWFwaS5CaWdOdW1iZXIocGFyYW1zLnRvdGFsQXBwcm92YWxXZWlnaHQpLnBsdXMoYXBwcm92YWxXZWlnaHQpLnRvRml4ZWQoNSksYXBpLkJpZ051bWJlcihvbGRBcHByb3ZhbFdlaWdodCkuZXEoMCkmJmFwaS5CaWdOdW1iZXIod2l0bmVzc1JlYy5hcHByb3ZhbFdlaWdodC4kbnVtYmVyRGVjaW1hbCkuZ3QoMCk/cGFyYW1zLm51bWJlck9mQXBwcm92ZWRXaXRuZXNzZXMrPTE6YXBpLkJpZ051bWJlcihvbGRBcHByb3ZhbFdlaWdodCkuZ3QoMCkmJmFwaS5CaWdOdW1iZXIod2l0bmVzc1JlYy5hcHByb3ZhbFdlaWdodC4kbnVtYmVyRGVjaW1hbCkuZXEoMCkmJihwYXJhbXMubnVtYmVyT2ZBcHByb3ZlZFdpdG5lc3Nlcy09MSksYXdhaXQgYXBpLmRiLnVwZGF0ZSgicGFyYW1zIixwYXJhbXMpfX07YWN0aW9ucy51cGRhdGVXaXRuZXNzZXNBcHByb3ZhbHM9YXN5bmMgcGF5bG9hZD0+e2NvbnN0e2FjY291bnQ6YWNjb3VudCxjYWxsaW5nQ29udHJhY3RJbmZvOmNhbGxpbmdDb250cmFjdEluZm99PXBheWxvYWQ7aWYodm9pZCAwPT09Y2FsbGluZ0NvbnRyYWN0SW5mbylyZXR1cm47aWYoInRva2VucyIhPT1jYWxsaW5nQ29udHJhY3RJbmZvLm5hbWUpcmV0dXJuO2NvbnN0IGFjY3Q9YXdhaXQgYXBpLmRiLmZpbmRPbmUoImFjY291bnRzIix7YWNjb3VudDphY2NvdW50fSk7aWYobnVsbCE9PWFjY3Qpe2NvbnN0IGJhbGFuY2U9YXdhaXQgYXBpLmRiLmZpbmRPbmVJblRhYmxlKCJ0b2tlbnMiLCJiYWxhbmNlcyIse2FjY291bnQ6YWNjb3VudCxzeW1ib2w6IldPUktFUkJFRSJ9KTtsZXQgYXBwcm92YWxXZWlnaHQ9MDtiYWxhbmNlJiZiYWxhbmNlLnN0YWtlJiYoYXBwcm92YWxXZWlnaHQ9YmFsYW5jZS5zdGFrZSksYmFsYW5jZSYmYmFsYW5jZS5kZWxlZ2F0aW9uc0luJiYoYXBwcm92YWxXZWlnaHQ9YXBpLkJpZ051bWJlcihhcHByb3ZhbFdlaWdodCkucGx1cyhiYWxhbmNlLmRlbGVnYXRpb25zSW4pLnRvRml4ZWQoNSkpO2NvbnN0IG9sZEFwcHJvdmFsV2VpZ2h0PWFjY3QuYXBwcm92YWxXZWlnaHQsZGVsdGFBcHByb3ZhbFdlaWdodD1hcGkuQmlnTnVtYmVyKGFwcHJvdmFsV2VpZ2h0KS5taW51cyhvbGRBcHByb3ZhbFdlaWdodCkudG9GaXhlZCg1KTtpZihhY2N0LmFwcHJvdmFsV2VpZ2h0PWFwcHJvdmFsV2VpZ2h0LCFhcGkuQmlnTnVtYmVyKGRlbHRhQXBwcm92YWxXZWlnaHQpLmVxKDApKXthd2FpdCBhcGkuZGIudXBkYXRlKCJhY2NvdW50cyIsYWNjdCk7Y29uc3QgYXBwcm92YWxzPWF3YWl0IGFwaS5kYi5maW5kKCJhcHByb3ZhbHMiLHtmcm9tOmFjY291bnR9KTtmb3IobGV0IGluZGV4PTA7aW5kZXg8YXBwcm92YWxzLmxlbmd0aDtpbmRleCs9MSl7Y29uc3QgYXBwcm92YWw9YXBwcm92YWxzW2luZGV4XTthd2FpdCB1cGRhdGVXaXRuZXNzUmFuayhhcHByb3ZhbC50byxkZWx0YUFwcHJvdmFsV2VpZ2h0KX19fX0sYWN0aW9ucy5yZWdpc3Rlcj1hc3luYyBwYXlsb2FkPT57Y29uc3R7SVA6SVAsUlBDUG9ydDpSUENQb3J0LFAyUFBvcnQ6UDJQUG9ydCxzaWduaW5nS2V5OnNpZ25pbmdLZXksZW5hYmxlZDplbmFibGVkLGlzU2lnbmVkV2l0aEFjdGl2ZUtleTppc1NpZ25lZFdpdGhBY3RpdmVLZXl9PXBheWxvYWQ7aWYoYXBpLmFzc2VydCghMD09PWlzU2lnbmVkV2l0aEFjdGl2ZUtleSwiYWN0aXZlIGtleSByZXF1aXJlZCIpJiZhcGkuYXNzZXJ0KElQJiYic3RyaW5nIj09dHlwZW9mIElQJiZhcGkudmFsaWRhdG9yLmlzSVAoSVApLCJJUCBpcyBpbnZhbGlkIikmJmFwaS5hc3NlcnQoUlBDUG9ydCYmTnVtYmVyLmlzSW50ZWdlcihSUENQb3J0KSYmUlBDUG9ydD49MCYmUlBDUG9ydDw9NjU1MzUsIlJQQ1BvcnQgbXVzdCBiZSBhbiBpbnRlZ2VyIGJldHdlZW4gMCBhbmQgNjU1MzUiKSYmYXBpLmFzc2VydChQMlBQb3J0JiZOdW1iZXIuaXNJbnRlZ2VyKFAyUFBvcnQpJiZQMlBQb3J0Pj0wJiZQMlBQb3J0PD02NTUzNSwiUDJQUG9ydCBtdXN0IGJlIGFuIGludGVnZXIgYmV0d2VlbiAwIGFuZCA2NTUzNSIpJiZhcGkuYXNzZXJ0KGFwaS52YWxpZGF0b3IuaXNBbHBoYW51bWVyaWMoc2lnbmluZ0tleSkmJjUzPT09c2lnbmluZ0tleS5sZW5ndGgsImludmFsaWQgc2lnbmluZyBrZXkiKSYmYXBpLmFzc2VydCgiYm9vbGVhbiI9PXR5cGVvZiBlbmFibGVkLCJlbmFibGVkIG11c3QgYmUgYSBib29sZWFuIikpe2xldCB3aXRuZXNzPWF3YWl0IGFwaS5kYi5maW5kT25lKCJ3aXRuZXNzZXMiLHtzaWduaW5nS2V5OnNpZ25pbmdLZXl9KTthcGkuYXNzZXJ0KG51bGw9PT13aXRuZXNzfHx3aXRuZXNzLmFjY291bnQ9PT1hcGkuc2VuZGVyLCJhIHdpdG5lc3MgaXMgYWxyZWFkeSB1c2luZyB0aGlzIHNpZ25pbmcga2V5IikmJih3aXRuZXNzPWF3YWl0IGFwaS5kYi5maW5kT25lKCJ3aXRuZXNzZXMiLHtJUDpJUCxQMlBQb3J0OlAyUFBvcnR9KSxhcGkuYXNzZXJ0KG51bGw9PT13aXRuZXNzfHx3aXRuZXNzLmFjY291bnQ9PT1hcGkuc2VuZGVyLCJhIHdpdG5lc3MgaXMgYWxyZWFkeSB1c2luZyB0aGlzIElQL1BvcnQiKSYmKHdpdG5lc3M9YXdhaXQgYXBpLmRiLmZpbmRPbmUoIndpdG5lc3NlcyIse2FjY291bnQ6YXBpLnNlbmRlcn0pLHdpdG5lc3M/KHdpdG5lc3MuSVA9SVAsd2l0bmVzcy5SUENQb3J0PVJQQ1BvcnQsd2l0bmVzcy5QMlBQb3J0PVAyUFBvcnQsd2l0bmVzcy5zaWduaW5nS2V5PXNpZ25pbmdLZXksd2l0bmVzcy5lbmFibGVkPWVuYWJsZWQsYXdhaXQgYXBpLmRiLnVwZGF0ZSgid2l0bmVzc2VzIix3aXRuZXNzKSk6KHdpdG5lc3M9e2FjY291bnQ6YXBpLnNlbmRlcixhcHByb3ZhbFdlaWdodDp7JG51bWJlckRlY2ltYWw6IjAifSxzaWduaW5nS2V5OnNpZ25pbmdLZXksSVA6SVAsUlBDUG9ydDpSUENQb3J0LFAyUFBvcnQ6UDJQUG9ydCxlbmFibGVkOmVuYWJsZWQsbWlzc2VkUm91bmRzOjAsbWlzc2VkUm91bmRzSW5BUm93OjAsdmVyaWZpZWRSb3VuZHM6MCxsYXN0Um91bmRWZXJpZmllZDpudWxsLGxhc3RCbG9ja1ZlcmlmaWVkOm51bGx9LGF3YWl0IGFwaS5kYi5pbnNlcnQoIndpdG5lc3NlcyIsd2l0bmVzcykpKSl9fSxhY3Rpb25zLmFwcHJvdmU9YXN5bmMgcGF5bG9hZD0+e2NvbnN0e3dpdG5lc3M6d2l0bmVzc309cGF5bG9hZCxwYXJhbXM9YXdhaXQgYXBpLmRiLmZpbmRPbmUoInBhcmFtcyIse30pO2lmKGFwaS5hc3NlcnQod2l0bmVzcyYmInN0cmluZyI9PXR5cGVvZiB3aXRuZXNzJiZ3aXRuZXNzLmxlbmd0aD49MyYmd2l0bmVzcy5sZW5ndGg8PTE2LCJpbnZhbGlkIHdpdG5lc3MgYWNjb3VudCIpKXtjb25zdCB3aXRuZXNzUmVjPWF3YWl0IGFwaS5kYi5maW5kT25lKCJ3aXRuZXNzZXMiLHthY2NvdW50OndpdG5lc3N9KTtpZihhcGkuYXNzZXJ0KHdpdG5lc3NSZWMsIndpdG5lc3MgZG9lcyBub3QgZXhpc3QiKSl7bGV0IGFjY3Q9YXdhaXQgYXBpLmRiLmZpbmRPbmUoImFjY291bnRzIix7YWNjb3VudDphcGkuc2VuZGVyfSk7aWYobnVsbD09PWFjY3QmJihhY2N0PXthY2NvdW50OmFwaS5zZW5kZXIsYXBwcm92YWxzOjAsYXBwcm92YWxXZWlnaHQ6eyRudW1iZXJEZWNpbWFsOiIwIn19LGFjY3Q9YXdhaXQgYXBpLmRiLmluc2VydCgiYWNjb3VudHMiLGFjY3QpKSxhcGkuYXNzZXJ0KGFjY3QuYXBwcm92YWxzPHBhcmFtcy5udW1iZXJPZkFwcHJvdmFsc1BlckFjY291bnQsYHlvdSBjYW4gb25seSBhcHByb3ZlICR7cGFyYW1zLm51bWJlck9mQXBwcm92YWxzUGVyQWNjb3VudH0gd2l0bmVzc2VzYCkpe2xldCBhcHByb3ZhbD1hd2FpdCBhcGkuZGIuZmluZE9uZSgiYXBwcm92YWxzIix7ZnJvbTphcGkuc2VuZGVyLHRvOndpdG5lc3N9KTtpZihhcGkuYXNzZXJ0KG51bGw9PT1hcHByb3ZhbCwieW91IGFscmVhZHkgYXBwcm92ZWQgdGhpcyB3aXRuZXNzIikpe2FwcHJvdmFsPXtmcm9tOmFwaS5zZW5kZXIsdG86d2l0bmVzc30sYXdhaXQgYXBpLmRiLmluc2VydCgiYXBwcm92YWxzIixhcHByb3ZhbCk7Y29uc3QgYmFsYW5jZT1hd2FpdCBhcGkuZGIuZmluZE9uZUluVGFibGUoInRva2VucyIsImJhbGFuY2VzIix7YWNjb3VudDphcGkuc2VuZGVyLHN5bWJvbDoiV09SS0VSQkVFIn0pO2xldCBhcHByb3ZhbFdlaWdodD0wO2JhbGFuY2UmJmJhbGFuY2Uuc3Rha2UmJihhcHByb3ZhbFdlaWdodD1iYWxhbmNlLnN0YWtlKSxiYWxhbmNlJiZiYWxhbmNlLmRlbGVnYXRpb25zSW4mJihhcHByb3ZhbFdlaWdodD1hcGkuQmlnTnVtYmVyKGFwcHJvdmFsV2VpZ2h0KS5wbHVzKGJhbGFuY2UuZGVsZWdhdGlvbnNJbikudG9GaXhlZCg1KSksYWNjdC5hcHByb3ZhbHMrPTEsYWNjdC5hcHByb3ZhbFdlaWdodD1hcHByb3ZhbFdlaWdodCxhd2FpdCBhcGkuZGIudXBkYXRlKCJhY2NvdW50cyIsYWNjdCksYXdhaXQgdXBkYXRlV2l0bmVzc1Jhbmsod2l0bmVzcyxhcHByb3ZhbFdlaWdodCl9fX19fSxhY3Rpb25zLmRpc2FwcHJvdmU9YXN5bmMgcGF5bG9hZD0+e2NvbnN0e3dpdG5lc3M6d2l0bmVzc309cGF5bG9hZDtpZihhcGkuYXNzZXJ0KHdpdG5lc3MmJiJzdHJpbmciPT10eXBlb2Ygd2l0bmVzcyYmd2l0bmVzcy5sZW5ndGg+PTMmJndpdG5lc3MubGVuZ3RoPD0xNiwiaW52YWxpZCB3aXRuZXNzIGFjY291bnQiKSl7Y29uc3Qgd2l0bmVzc1JlYz1hd2FpdCBhcGkuZGIuZmluZE9uZSgid2l0bmVzc2VzIix7YWNjb3VudDp3aXRuZXNzfSk7aWYoYXBpLmFzc2VydCh3aXRuZXNzUmVjLCJ3aXRuZXNzIGRvZXMgbm90IGV4aXN0Iikpe2xldCBhY2N0PWF3YWl0IGFwaS5kYi5maW5kT25lKCJhY2NvdW50cyIse2FjY291bnQ6YXBpLnNlbmRlcn0pO2lmKG51bGw9PT1hY2N0JiYoYWNjdD17YWNjb3VudDphcGkuc2VuZGVyLGFwcHJvdmFsczowLGFwcHJvdmFsV2VpZ2h0OnskbnVtYmVyRGVjaW1hbDoiMCJ9fSxhd2FpdCBhcGkuZGIuaW5zZXJ0KCJhY2NvdW50cyIsYWNjdCkpLGFwaS5hc3NlcnQoYWNjdC5hcHByb3ZhbHM+MCwibm8gYXBwcm92YWxzIGZvdW5kIikpe2NvbnN0IGFwcHJvdmFsPWF3YWl0IGFwaS5kYi5maW5kT25lKCJhcHByb3ZhbHMiLHtmcm9tOmFwaS5zZW5kZXIsdG86d2l0bmVzc30pO2lmKGFwaS5hc3NlcnQobnVsbCE9PWFwcHJvdmFsLCJ5b3UgaGF2ZSBub3QgYXBwcm92ZWQgdGhpcyB3aXRuZXNzIikpe2F3YWl0IGFwaS5kYi5yZW1vdmUoImFwcHJvdmFscyIsYXBwcm92YWwpO2NvbnN0IGJhbGFuY2U9YXdhaXQgYXBpLmRiLmZpbmRPbmVJblRhYmxlKCJ0b2tlbnMiLCJiYWxhbmNlcyIse2FjY291bnQ6YXBpLnNlbmRlcixzeW1ib2w6IldPUktFUkJFRSJ9KTtsZXQgYXBwcm92YWxXZWlnaHQ9MDtiYWxhbmNlJiZiYWxhbmNlLnN0YWtlJiYoYXBwcm92YWxXZWlnaHQ9YmFsYW5jZS5zdGFrZSksYmFsYW5jZSYmYmFsYW5jZS5kZWxlZ2F0aW9uc0luJiYoYXBwcm92YWxXZWlnaHQ9YXBpLkJpZ051bWJlcihhcHByb3ZhbFdlaWdodCkucGx1cyhiYWxhbmNlLmRlbGVnYXRpb25zSW4pLnRvRml4ZWQoNSkpLGFjY3QuYXBwcm92YWxzLT0xLGFjY3QuYXBwcm92YWxXZWlnaHQ9YXBwcm92YWxXZWlnaHQsYXdhaXQgYXBpLmRiLnVwZGF0ZSgiYWNjb3VudHMiLGFjY3QpLGF3YWl0IHVwZGF0ZVdpdG5lc3NSYW5rKHdpdG5lc3MsIi0iK2FwcHJvdmFsV2VpZ2h0KX19fX19O2NvbnN0IGNoYW5nZUN1cnJlbnRXaXRuZXNzPWFzeW5jKCk9Pntjb25zdCBwYXJhbXM9YXdhaXQgYXBpLmRiLmZpbmRPbmUoInBhcmFtcyIse30pLHtjdXJyZW50V2l0bmVzczpjdXJyZW50V2l0bmVzcyx0b3RhbEFwcHJvdmFsV2VpZ2h0OnRvdGFsQXBwcm92YWxXZWlnaHQsbGFzdFdpdG5lc3NlczpsYXN0V2l0bmVzc2VzLGxhc3RCbG9ja1JvdW5kOmxhc3RCbG9ja1JvdW5kLHJvdW5kOnJvdW5kLG1heFJvdW5kc01pc3NlZEluQVJvdzptYXhSb3VuZHNNaXNzZWRJbkFSb3csbWF4Um91bmRQcm9wb3NpdGlvbldhaXRpbmdQZXJpb2Q6bWF4Um91bmRQcm9wb3NpdGlvbldhaXRpbmdQZXJpb2R9PXBhcmFtcztsZXQgd2l0bmVzc0ZvdW5kPSExO2NvbnN0IHJhbmRvbT1hcGkucmFuZG9tKCkscmFuZG9tV2VpZ2h0PWFwaS5CaWdOdW1iZXIodG90YWxBcHByb3ZhbFdlaWdodCkudGltZXMocmFuZG9tKS50b0ZpeGVkKDUsMSk7bGV0IG9mZnNldD0wLGFjY1dlaWdodD0wLHdpdG5lc3Nlcz1hd2FpdCBhcGkuZGIuZmluZCgid2l0bmVzc2VzIix7YXBwcm92YWxXZWlnaHQ6eyRndDp7JG51bWJlckRlY2ltYWw6IjAifX19LDEwMCxvZmZzZXQsW3tpbmRleDoiYXBwcm92YWxXZWlnaHQiLGRlc2NlbmRpbmc6ITB9XSk7Y29uc3Qgc2NoZWR1bGVzPWF3YWl0IGFwaS5kYi5maW5kKCJzY2hlZHVsZXMiLHtyb3VuZDpyb3VuZH0pLHByZXZpb3VzUm91bmRXaXRuZXNzPWxhc3RXaXRuZXNzZXMubGVuZ3RoPjE/bGFzdFdpdG5lc3Nlc1tsYXN0V2l0bmVzc2VzLmxlbmd0aC0yXToiIixzY2hlZHVsZT1hd2FpdCBhcGkuZGIuZmluZE9uZSgic2NoZWR1bGVzIix7cm91bmQ6cm91bmQsd2l0bmVzczpjdXJyZW50V2l0bmVzcyxibG9ja051bWJlcjpsYXN0QmxvY2tSb3VuZH0pO2Rve2ZvcihsZXQgaW5kZXg9MDtpbmRleDx3aXRuZXNzZXMubGVuZ3RoO2luZGV4Kz0xKXtjb25zdCB3aXRuZXNzPXdpdG5lc3Nlc1tpbmRleF07aWYoYWNjV2VpZ2h0PWFwaS5CaWdOdW1iZXIoYWNjV2VpZ2h0KS5wbHVzKHdpdG5lc3MuYXBwcm92YWxXZWlnaHQuJG51bWJlckRlY2ltYWwpLnRvRml4ZWQoNSksITA9PT13aXRuZXNzLmVuYWJsZWQmJndpdG5lc3MuYWNjb3VudCE9PXByZXZpb3VzUm91bmRXaXRuZXNzJiZ2b2lkIDA9PT1zY2hlZHVsZXMuZmluZChzPT5zLndpdG5lc3M9PT13aXRuZXNzLmFjY291bnQpJiZhcGkuQmlnTnVtYmVyKHJhbmRvbVdlaWdodCkubHRlKGFjY1dlaWdodCkpe2FwaS5kZWJ1ZyhgY2hhbmdlZCBjdXJyZW50IHdpdG5lc3MgZnJvbSAke3NjaGVkdWxlLndpdG5lc3N9IHRvICR7d2l0bmVzcy5hY2NvdW50fWApLHNjaGVkdWxlLndpdG5lc3M9d2l0bmVzcy5hY2NvdW50LGF3YWl0IGFwaS5kYi51cGRhdGUoInNjaGVkdWxlcyIsc2NoZWR1bGUpLHBhcmFtcy5jdXJyZW50V2l0bmVzcz13aXRuZXNzLmFjY291bnQscGFyYW1zLmxhc3RXaXRuZXNzZXMucHVzaCh3aXRuZXNzLmFjY291bnQpLHBhcmFtcy5ibG9ja051bWJlcldpdG5lc3NDaGFuZ2U9YXBpLmJsb2NrTnVtYmVyK21heFJvdW5kUHJvcG9zaXRpb25XYWl0aW5nUGVyaW9kLGF3YWl0IGFwaS5kYi51cGRhdGUoInBhcmFtcyIscGFyYW1zKTtjb25zdCBzY2hlZHVsZWRXaXRuZXNzPWF3YWl0IGFwaS5kYi5maW5kT25lKCJ3aXRuZXNzZXMiLHthY2NvdW50OmN1cnJlbnRXaXRuZXNzfSk7c2NoZWR1bGVkV2l0bmVzcy5taXNzZWRSb3VuZHMrPTEsc2NoZWR1bGVkV2l0bmVzcy5taXNzZWRSb3VuZHNJbkFSb3crPTEsc2NoZWR1bGVkV2l0bmVzcy5taXNzZWRSb3VuZHNJbkFSb3c+PW1heFJvdW5kc01pc3NlZEluQVJvdyYmKHNjaGVkdWxlZFdpdG5lc3MubWlzc2VkUm91bmRzSW5BUm93PTAsc2NoZWR1bGVkV2l0bmVzcy5lbmFibGVkPSExKSxhd2FpdCBhcGkuZGIudXBkYXRlKCJ3aXRuZXNzZXMiLHNjaGVkdWxlZFdpdG5lc3MpLHdpdG5lc3NGb3VuZD0hMCxhcGkuZW1pdCgiY3VycmVudFdpdG5lc3NDaGFuZ2VkIix7fSk7YnJlYWt9fSExPT09d2l0bmVzc0ZvdW5kJiYob2Zmc2V0Kz0xMDAsd2l0bmVzc2VzPWF3YWl0IGFwaS5kYi5maW5kKCJ3aXRuZXNzZXMiLHthcHByb3ZhbFdlaWdodDp7JGd0OnskbnVtYmVyRGVjaW1hbDoiMCJ9fX0sMTAwLG9mZnNldCxbe2luZGV4OiJhcHByb3ZhbFdlaWdodCIsZGVzY2VuZGluZzohMH1dKSl9d2hpbGUod2l0bmVzc2VzLmxlbmd0aD4wJiYhMT09PXdpdG5lc3NGb3VuZCk7aWYoITE9PT13aXRuZXNzRm91bmQpe2FwaS5kZWJ1Zygibm8gYmFja3VwIHdpdG5lc3Mgd2FzIGZvdW5kLCBpbnRlcmNoYW5naW5nIHdpdG5lc3NlcyB3aXRoaW4gdGhlIGN1cnJlbnQgc2NoZWR1bGUiKTtmb3IobGV0IGluZGV4PTA7aW5kZXg8c2NoZWR1bGVzLmxlbmd0aC0xO2luZGV4Kz0xKXtjb25zdCBzY2hlZD1zY2hlZHVsZXNbaW5kZXhdLG5ld1dpdG5lc3M9c2NoZWQud2l0bmVzcztpZihuZXdXaXRuZXNzIT09cHJldmlvdXNSb3VuZFdpdG5lc3Mpe2FwaS5kZWJ1ZyhgY2hhbmdlZCBjdXJyZW50IHdpdG5lc3MgZnJvbSAke2N1cnJlbnRXaXRuZXNzfSB0byAke25ld1dpdG5lc3N9YCksc2NoZWR1bGUud2l0bmVzcz1uZXdXaXRuZXNzLGF3YWl0IGFwaS5kYi51cGRhdGUoInNjaGVkdWxlcyIsc2NoZWR1bGUpLHNjaGVkLndpdG5lc3M9Y3VycmVudFdpdG5lc3MsYXdhaXQgYXBpLmRiLnVwZGF0ZSgic2NoZWR1bGVzIixzY2hlZCkscGFyYW1zLmN1cnJlbnRXaXRuZXNzPW5ld1dpdG5lc3MscGFyYW1zLmxhc3RXaXRuZXNzZXMucHVzaChuZXdXaXRuZXNzKSxwYXJhbXMuYmxvY2tOdW1iZXJXaXRuZXNzQ2hhbmdlPWFwaS5ibG9ja051bWJlcittYXhSb3VuZFByb3Bvc2l0aW9uV2FpdGluZ1BlcmlvZCxhd2FpdCBhcGkuZGIudXBkYXRlKCJwYXJhbXMiLHBhcmFtcyk7Y29uc3Qgc2NoZWR1bGVkV2l0bmVzcz1hd2FpdCBhcGkuZGIuZmluZE9uZSgid2l0bmVzc2VzIix7YWNjb3VudDpjdXJyZW50V2l0bmVzc30pO3NjaGVkdWxlZFdpdG5lc3MubWlzc2VkUm91bmRzKz0xLHNjaGVkdWxlZFdpdG5lc3MubWlzc2VkUm91bmRzSW5BUm93Kz0xLHNjaGVkdWxlZFdpdG5lc3MubWlzc2VkUm91bmRzSW5BUm93Pj1tYXhSb3VuZHNNaXNzZWRJbkFSb3cmJihzY2hlZHVsZWRXaXRuZXNzLm1pc3NlZFJvdW5kc0luQVJvdz0wLHNjaGVkdWxlZFdpdG5lc3MuZW5hYmxlZD0hMSksYXdhaXQgYXBpLmRiLnVwZGF0ZSgid2l0bmVzc2VzIixzY2hlZHVsZWRXaXRuZXNzKSxhcGkuZW1pdCgiY3VycmVudFdpdG5lc3NDaGFuZ2VkIix7fSk7YnJlYWt9fX19LG1hbmFnZVdpdG5lc3Nlc1NjaGVkdWxlPWFzeW5jKCk9PntpZigibnVsbCIhPT1hcGkuc2VuZGVyKXJldHVybjtjb25zdCBwYXJhbXM9YXdhaXQgYXBpLmRiLmZpbmRPbmUoInBhcmFtcyIse30pLHtudW1iZXJPZkFwcHJvdmVkV2l0bmVzc2VzOm51bWJlck9mQXBwcm92ZWRXaXRuZXNzZXMsdG90YWxBcHByb3ZhbFdlaWdodDp0b3RhbEFwcHJvdmFsV2VpZ2h0LGxhc3RWZXJpZmllZEJsb2NrTnVtYmVyOmxhc3RWZXJpZmllZEJsb2NrTnVtYmVyLGJsb2NrTnVtYmVyV2l0bmVzc0NoYW5nZTpibG9ja051bWJlcldpdG5lc3NDaGFuZ2UsbGFzdEJsb2NrUm91bmQ6bGFzdEJsb2NrUm91bmQsbnVtYmVyT2ZUb3BXaXRuZXNzZXM6bnVtYmVyT2ZUb3BXaXRuZXNzZXMsbnVtYmVyT2ZXaXRuZXNzU2xvdHM6bnVtYmVyT2ZXaXRuZXNzU2xvdHMsbWF4Um91bmRQcm9wb3NpdGlvbldhaXRpbmdQZXJpb2Q6bWF4Um91bmRQcm9wb3NpdGlvbldhaXRpbmdQZXJpb2R9PXBhcmFtcyxjdXJyZW50QmxvY2s9bGFzdFZlcmlmaWVkQmxvY2tOdW1iZXIrMTtsZXQgc2NoZWR1bGU9YXdhaXQgYXBpLmRiLmZpbmRPbmUoInNjaGVkdWxlcyIse2Jsb2NrTnVtYmVyOmN1cnJlbnRCbG9ja30pO2lmKG51bGw9PT1zY2hlZHVsZSl7aWYoYXBpLmRlYnVnKCJjYWxjdWxhdGluZyBuZXcgc2NoZWR1bGUiKSxzY2hlZHVsZT1bXSxudW1iZXJPZkFwcHJvdmVkV2l0bmVzc2VzPj1udW1iZXJPZldpdG5lc3NTbG90cyl7Y29uc3QgcmFuZG9tPWFwaS5yYW5kb20oKTtsZXQgcmFuZG9tV2VpZ2h0PW51bGwsb2Zmc2V0PTAsYWNjV2VpZ2h0PTAsd2l0bmVzc2VzPWF3YWl0IGFwaS5kYi5maW5kKCJ3aXRuZXNzZXMiLHthcHByb3ZhbFdlaWdodDp7JGd0OnskbnVtYmVyRGVjaW1hbDoiMCJ9fX0sMTAwLG9mZnNldCxbe2luZGV4OiJhcHByb3ZhbFdlaWdodCIsZGVzY2VuZGluZzohMH1dKTtkb3tmb3IobGV0IGluZGV4PTA7aW5kZXg8d2l0bmVzc2VzLmxlbmd0aDtpbmRleCs9MSl7Y29uc3Qgd2l0bmVzcz13aXRuZXNzZXNbaW5kZXhdO3NjaGVkdWxlLmxlbmd0aD49bnVtYmVyT2ZUb3BXaXRuZXNzZXMmJm51bGw9PT1yYW5kb21XZWlnaHQmJihyYW5kb21XZWlnaHQ9YXBpLkJpZ051bWJlcihhY2NXZWlnaHQpLnBsdXMoIjAuMDAwMDEiKS5wbHVzKGFwaS5CaWdOdW1iZXIodG90YWxBcHByb3ZhbFdlaWdodCkubWludXMoYWNjV2VpZ2h0KS50aW1lcyhyYW5kb20pLnRvRml4ZWQoNSwxKSkudG9GaXhlZCg1KSksYWNjV2VpZ2h0PWFwaS5CaWdOdW1iZXIoYWNjV2VpZ2h0KS5wbHVzKHdpdG5lc3MuYXBwcm92YWxXZWlnaHQuJG51bWJlckRlY2ltYWwpLnRvRml4ZWQoNSksITA9PT13aXRuZXNzLmVuYWJsZWQmJihzY2hlZHVsZS5sZW5ndGg8bnVtYmVyT2ZUb3BXaXRuZXNzZXN8fGFwaS5CaWdOdW1iZXIocmFuZG9tV2VpZ2h0KS5sdGUoYWNjV2VpZ2h0KSkmJnNjaGVkdWxlLnB1c2goe3dpdG5lc3M6d2l0bmVzcy5hY2NvdW50LGJsb2NrTnVtYmVyOm51bGx9KSxzY2hlZHVsZS5sZW5ndGg+PW51bWJlck9mV2l0bmVzc1Nsb3RzJiYoaW5kZXg9d2l0bmVzc2VzLmxlbmd0aCl9c2NoZWR1bGUubGVuZ3RoPG51bWJlck9mV2l0bmVzc1Nsb3RzJiYob2Zmc2V0Kz0xMDAsd2l0bmVzc2VzPWF3YWl0IGFwaS5kYi5maW5kKCJ3aXRuZXNzZXMiLHthcHByb3ZhbFdlaWdodDp7JGd0OnskbnVtYmVyRGVjaW1hbDoiMCJ9fX0sMTAwLG9mZnNldCxbe2luZGV4OiJhcHByb3ZhbFdlaWdodCIsZGVzY2VuZGluZzohMH1dKSl9d2hpbGUod2l0bmVzc2VzLmxlbmd0aD4wJiZzY2hlZHVsZS5sZW5ndGg8bnVtYmVyT2ZXaXRuZXNzU2xvdHMpfWlmKHNjaGVkdWxlLmxlbmd0aD09PW51bWJlck9mV2l0bmVzc1Nsb3RzKXtsZXQgaix4O2ZvcihsZXQgaT1zY2hlZHVsZS5sZW5ndGgtMTtpPjA7aS09MSl7Y29uc3QgcmFuZG9tPWFwaS5yYW5kb20oKTtqPU1hdGguZmxvb3IocmFuZG9tKihpKzEpKSx4PXNjaGVkdWxlW2ldLHNjaGVkdWxlW2ldPXNjaGVkdWxlW2pdLHNjaGVkdWxlW2pdPXh9bGV0IGxhc3RXaXRuZXNzZXM9cGFyYW1zLmxhc3RXaXRuZXNzZXM7Y29uc3QgcHJldmlvdXNSb3VuZFdpdG5lc3M9bGFzdFdpdG5lc3Nlcy5sZW5ndGg+MD9sYXN0V2l0bmVzc2VzW2xhc3RXaXRuZXNzZXMubGVuZ3RoLTFdOiIiO2xhc3RXaXRuZXNzZXMubGVuZ3RoPj1udW1iZXJPZldpdG5lc3NTbG90cyYmKGxhc3RXaXRuZXNzZXM9W10pO2NvbnN0IGxhc3RXaXRuZXNzPXNjaGVkdWxlW3NjaGVkdWxlLmxlbmd0aC0xXS53aXRuZXNzO2lmKGxhc3RXaXRuZXNzZXMuaW5jbHVkZXMobGFzdFdpdG5lc3MpfHxwcmV2aW91c1JvdW5kV2l0bmVzcz09PWxhc3RXaXRuZXNzKWZvcihsZXQgaT0wO2k8c2NoZWR1bGUubGVuZ3RoO2krPTEpaWYoIWxhc3RXaXRuZXNzZXMuaW5jbHVkZXMoc2NoZWR1bGVbaV0ud2l0bmVzcykmJnNjaGVkdWxlW2ldLndpdG5lc3MhPT1wcmV2aW91c1JvdW5kV2l0bmVzcyl7Y29uc3QgdGhpc1dpdG5lc3M9c2NoZWR1bGVbaV0ud2l0bmVzcztzY2hlZHVsZVtpXS53aXRuZXNzPWxhc3RXaXRuZXNzLHNjaGVkdWxlW3NjaGVkdWxlLmxlbmd0aC0xXS53aXRuZXNzPXRoaXNXaXRuZXNzO2JyZWFrfWlmKHNjaGVkdWxlWzBdLndpdG5lc3M9PT1wcmV2aW91c1JvdW5kV2l0bmVzcyl7Y29uc3QgZmlyc3RXaXRuZXNzPXNjaGVkdWxlWzBdLndpdG5lc3Msc2Vjb25kV2l0bmVzcz1zY2hlZHVsZVsxXS53aXRuZXNzO3NjaGVkdWxlWzBdLndpdG5lc3M9c2Vjb25kV2l0bmVzcyxzY2hlZHVsZVsxXS53aXRuZXNzPWZpcnN0V2l0bmVzc31sZXQgYmxvY2tOdW1iZXI9MD09PWxhc3RWZXJpZmllZEJsb2NrTnVtYmVyP2FwaS5ibG9ja051bWJlcjpsYXN0VmVyaWZpZWRCbG9ja051bWJlcisxO3BhcmFtcy5yb3VuZCs9MTtmb3IobGV0IGk9MDtpPHNjaGVkdWxlLmxlbmd0aDtpKz0xKXNjaGVkdWxlW2ldLmJsb2NrTnVtYmVyPWJsb2NrTnVtYmVyLHNjaGVkdWxlW2ldLnJvdW5kPXBhcmFtcy5yb3VuZCxhcGkuZGVidWcoYHNjaGVkdWxlZCB3aXRuZXNzICR7c2NoZWR1bGVbaV0ud2l0bmVzc30gZm9yIGJsb2NrICR7YmxvY2tOdW1iZXJ9IChyb3VuZCAke3BhcmFtcy5yb3VuZH0pYCksYXdhaXQgYXBpLmRiLmluc2VydCgic2NoZWR1bGVzIixzY2hlZHVsZVtpXSksYmxvY2tOdW1iZXIrPTE7MD09PWxhc3RWZXJpZmllZEJsb2NrTnVtYmVyJiYocGFyYW1zLmxhc3RWZXJpZmllZEJsb2NrTnVtYmVyPWFwaS5ibG9ja051bWJlci0xKTtjb25zdCBsYXN0V2l0bmVzc1JvdW5kU2NoZWR1bGU9c2NoZWR1bGVbc2NoZWR1bGUubGVuZ3RoLTFdO3BhcmFtcy5sYXN0QmxvY2tSb3VuZD1sYXN0V2l0bmVzc1JvdW5kU2NoZWR1bGUuYmxvY2tOdW1iZXIscGFyYW1zLmN1cnJlbnRXaXRuZXNzPWxhc3RXaXRuZXNzUm91bmRTY2hlZHVsZS53aXRuZXNzLGxhc3RXaXRuZXNzZXMucHVzaChsYXN0V2l0bmVzc1JvdW5kU2NoZWR1bGUud2l0bmVzcykscGFyYW1zLmxhc3RXaXRuZXNzZXM9bGFzdFdpdG5lc3NlcyxwYXJhbXMuYmxvY2tOdW1iZXJXaXRuZXNzQ2hhbmdlPWFwaS5ibG9ja051bWJlcittYXhSb3VuZFByb3Bvc2l0aW9uV2FpdGluZ1BlcmlvZCxhd2FpdCBhcGkuZGIudXBkYXRlKCJwYXJhbXMiLHBhcmFtcyksYXBpLmVtaXQoIm5ld1NjaGVkdWxlIix7fSl9fWVsc2UgYXBpLmJsb2NrTnVtYmVyPj1ibG9ja051bWJlcldpdG5lc3NDaGFuZ2UmJihhcGkuYmxvY2tOdW1iZXI+bGFzdEJsb2NrUm91bmQ/YXdhaXQgY2hhbmdlQ3VycmVudFdpdG5lc3MoKToocGFyYW1zLmJsb2NrTnVtYmVyV2l0bmVzc0NoYW5nZT1hcGkuYmxvY2tOdW1iZXIrbWF4Um91bmRQcm9wb3NpdGlvbldhaXRpbmdQZXJpb2QsYXdhaXQgYXBpLmRiLnVwZGF0ZSgicGFyYW1zIixwYXJhbXMpLGFwaS5lbWl0KCJhd2FpdGluZ1JvdW5kRW5kIix7fSkpKX07YWN0aW9ucy5wcm9wb3NlUm91bmQ9YXN5bmMgcGF5bG9hZD0+e2NvbnN0e3JvdW5kSGFzaDpyb3VuZEhhc2gsaXNTaWduZWRXaXRoQWN0aXZlS2V5OmlzU2lnbmVkV2l0aEFjdGl2ZUtleSxzaWduYXR1cmVzOnNpZ25hdHVyZXN9PXBheWxvYWQscGFyYW1zPWF3YWl0IGFwaS5kYi5maW5kT25lKCJwYXJhbXMiLHt9KSx7bGFzdFZlcmlmaWVkQmxvY2tOdW1iZXI6bGFzdFZlcmlmaWVkQmxvY2tOdW1iZXIscm91bmQ6cm91bmQsbGFzdEJsb2NrUm91bmQ6bGFzdEJsb2NrUm91bmQsY3VycmVudFdpdG5lc3M6Y3VycmVudFdpdG5lc3N9PXBhcmFtcyxzY2hlZHVsZXM9YXdhaXQgYXBpLmRiLmZpbmQoInNjaGVkdWxlcyIse3JvdW5kOnJvdW5kfSwxZTMsMCxbe2luZGV4OiJfaWQiLGRlc2NlbmRpbmc6ITF9XSksbnVtYmVyT2ZXaXRuZXNzU2xvdHM9c2NoZWR1bGVzLmxlbmd0aCx7d2l0bmVzc1NpZ25hdHVyZXNSZXF1aXJlZDp3aXRuZXNzU2lnbmF0dXJlc1JlcXVpcmVkfT1wYXJhbXM7aWYoITA9PT1pc1NpZ25lZFdpdGhBY3RpdmVLZXkmJnJvdW5kSGFzaCYmInN0cmluZyI9PXR5cGVvZiByb3VuZEhhc2gmJjY0PT09cm91bmRIYXNoLmxlbmd0aCYmQXJyYXkuaXNBcnJheShzaWduYXR1cmVzKSYmc2lnbmF0dXJlcy5sZW5ndGg8PW51bWJlck9mV2l0bmVzc1Nsb3RzJiZzaWduYXR1cmVzLmxlbmd0aD49d2l0bmVzc1NpZ25hdHVyZXNSZXF1aXJlZCl7bGV0IGN1cnJlbnRCbG9jaz1sYXN0VmVyaWZpZWRCbG9ja051bWJlcisxLGNhbGN1bGF0ZWRSb3VuZEhhc2g9IiI7aWYoYXBpLnNlbmRlcj09PWN1cnJlbnRXaXRuZXNzKXtmb3IoO2N1cnJlbnRCbG9jazw9bGFzdEJsb2NrUm91bmQ7KXtjb25zdCBibG9jaz1hd2FpdCBhcGkuZGIuZ2V0QmxvY2tJbmZvKGN1cnJlbnRCbG9jayk7aWYobnVsbD09PWJsb2NrKXtjYWxjdWxhdGVkUm91bmRIYXNoPSIiO2JyZWFrfWNhbGN1bGF0ZWRSb3VuZEhhc2g9YXBpLlNIQTI1NihgJHtjYWxjdWxhdGVkUm91bmRIYXNofSR7YmxvY2suaGFzaH1gKSxjdXJyZW50QmxvY2srPTF9aWYoIiIhPT1jYWxjdWxhdGVkUm91bmRIYXNoJiZjYWxjdWxhdGVkUm91bmRIYXNoPT09cm91bmRIYXNoKXtsZXQgc2lnbmF0dXJlc0NoZWNrZWQ9MDtjb25zdCB2ZXJpZmllZEJsb2NrSW5mb3JtYXRpb249W10sY3VycmVudFdpdG5lc3NJbmZvPWF3YWl0IGFwaS5kYi5maW5kT25lKCJ3aXRuZXNzZXMiLHthY2NvdW50OmN1cnJlbnRXaXRuZXNzfSksY3VycmVudFdpdG5lc3NTaWduYXR1cmU9c2lnbmF0dXJlcy5maW5kKHM9PnNbMF09PT1jdXJyZW50V2l0bmVzcyk7Zm9yKGxldCBpbmRleD0wO2luZGV4PHNjaGVkdWxlcy5sZW5ndGg7aW5kZXgrPTEpe2NvbnN0IHNjaGVkdWxlZFdpdG5lc3M9c2NoZWR1bGVzW2luZGV4XSx3aXRuZXNzPWF3YWl0IGFwaS5kYi5maW5kT25lKCJ3aXRuZXNzZXMiLHthY2NvdW50OnNjaGVkdWxlZFdpdG5lc3Mud2l0bmVzc30pO2lmKG51bGwhPT13aXRuZXNzKXtjb25zdCBzaWduYXR1cmU9c2lnbmF0dXJlcy5maW5kKHM9PnNbMF09PT13aXRuZXNzLmFjY291bnQpO3NpZ25hdHVyZSYmYXBpLmNoZWNrU2lnbmF0dXJlKGNhbGN1bGF0ZWRSb3VuZEhhc2gsc2lnbmF0dXJlWzFdLHdpdG5lc3Muc2lnbmluZ0tleSwhMCkmJihhcGkuZGVidWcoYHdpdG5lc3MgJHt3aXRuZXNzLmFjY291bnR9IHNpZ25lZCByb3VuZCAke3JvdW5kfWApLHNpZ25hdHVyZXNDaGVja2VkKz0xKSx2ZXJpZmllZEJsb2NrSW5mb3JtYXRpb24ucHVzaCh7YmxvY2tOdW1iZXI6c2NoZWR1bGVkV2l0bmVzcy5ibG9ja051bWJlcix3aXRuZXNzOmN1cnJlbnRXaXRuZXNzLHNpZ25pbmdLZXk6Y3VycmVudFdpdG5lc3NJbmZvLnNpZ25pbmdLZXkscm91bmRTaWduYXR1cmU6Y3VycmVudFdpdG5lc3NTaWduYXR1cmVbMV0scm91bmQ6cm91bmQscm91bmRIYXNoOnJvdW5kSGFzaH0pfX1pZihzaWduYXR1cmVzQ2hlY2tlZD49d2l0bmVzc1NpZ25hdHVyZXNSZXF1aXJlZCl7Zm9yKGxldCBpbmRleD0wO2luZGV4PHZlcmlmaWVkQmxvY2tJbmZvcm1hdGlvbi5sZW5ndGg7aW5kZXgrPTEpYXdhaXQgYXBpLnZlcmlmeUJsb2NrKHZlcmlmaWVkQmxvY2tJbmZvcm1hdGlvbltpbmRleF0pO2NvbnN0IGNvbnRyYWN0QmFsYW5jZT1hd2FpdCBhcGkuZGIuZmluZE9uZUluVGFibGUoInRva2VucyIsImNvbnRyYWN0c0JhbGFuY2VzIix7YWNjb3VudDoid2l0bmVzc2VzIixzeW1ib2w6IkJFRSJ9KTtsZXQgcmV3YXJkV2l0bmVzc2VzPSExO2NvbnRyYWN0QmFsYW5jZSYmYXBpLkJpZ051bWJlcihjb250cmFjdEJhbGFuY2UuYmFsYW5jZSkuZ3RlKCIwLjA0NzU2NDY1IikmJihyZXdhcmRXaXRuZXNzZXM9ITApO2ZvcihsZXQgaW5kZXg9MDtpbmRleDxzY2hlZHVsZXMubGVuZ3RoO2luZGV4Kz0xKXtjb25zdCBzY2hlZHVsZT1zY2hlZHVsZXNbaW5kZXhdOyEwPT09cmV3YXJkV2l0bmVzc2VzJiZhd2FpdCBhcGkudHJhbnNmZXJUb2tlbnMoc2NoZWR1bGUud2l0bmVzcywiQkVFIiwiMC4wMDk1MTI5MyIsInVzZXIiKSxhd2FpdCBhcGkuZGIucmVtb3ZlKCJzY2hlZHVsZXMiLHNjaGVkdWxlKX1wYXJhbXMuY3VycmVudFdpdG5lc3M9bnVsbCxwYXJhbXMubGFzdFZlcmlmaWVkQmxvY2tOdW1iZXI9bGFzdEJsb2NrUm91bmQsYXdhaXQgYXBpLmRiLnVwZGF0ZSgicGFyYW1zIixwYXJhbXMpO2NvbnN0IHdpdG5lc3M9YXdhaXQgYXBpLmRiLmZpbmRPbmUoIndpdG5lc3NlcyIse2FjY291bnQ6Y3VycmVudFdpdG5lc3N9KTt3aXRuZXNzLm1pc3NlZFJvdW5kc0luQVJvdz0wLHdpdG5lc3MubGFzdFJvdW5kVmVyaWZpZWQ9cm91bmQsd2l0bmVzcy5sYXN0QmxvY2tWZXJpZmllZD1sYXN0QmxvY2tSb3VuZCx3aXRuZXNzLnZlcmlmaWVkUm91bmRzKz0xLGF3YWl0IGFwaS5kYi51cGRhdGUoIndpdG5lc3NlcyIsd2l0bmVzcyksYXdhaXQgbWFuYWdlV2l0bmVzc2VzU2NoZWR1bGUoKX19fX19LGFjdGlvbnMuc2NoZWR1bGVXaXRuZXNzZXM9YXN5bmMoKT0+eyJudWxsIj09PWFwaS5zZW5kZXImJmF3YWl0IG1hbmFnZVdpdG5lc3Nlc1NjaGVkdWxlKCl9Ow=="}}}