Update MarketPools contract - 28/06/2022

{"id":"ssc-testnet-reaz","json":{"contractName":"contract","contractAction":"update","contractPayload":{"name":"marketpools","params":"","code":"Y29uc3QgVHJhZGVUeXBlPVsiZXhhY3RJbnB1dCIsImV4YWN0T3V0cHV0Il07ZnVuY3Rpb24gZ2V0UXVvdGUoaSxlLGEpe3JldHVybiEoIWFwaS5hc3NlcnQoYXBpLkJpZ051bWJlcihpKS5ndCgwKSwiaW5zdWZmaWNpZW50IGFtb3VudCIpfHwhYXBpLmFzc2VydChhcGkuQmlnTnVtYmVyKGUpLmd0KDApJiZhcGkuQmlnTnVtYmVyKGEpLmd0KDApLCJpbnN1ZmZpY2llbnQgbGlxdWlkaXR5IikpJiZhcGkuQmlnTnVtYmVyKGkpLnRpbWVzKGEpLmRpdmlkZWRCeShlKX1mdW5jdGlvbiBnZXRBbW91bnRJbihpLGUsYSx0KXtpZighYXBpLmFzc2VydChhcGkuQmlnTnVtYmVyKGUpLmd0KDApLCJpbnN1ZmZpY2llbnQgb3V0cHV0IGFtb3VudCIpfHwhYXBpLmFzc2VydChhcGkuQmlnTnVtYmVyKGEpLmd0KDApJiZhcGkuQmlnTnVtYmVyKHQpLmd0KDApJiZhcGkuQmlnTnVtYmVyKGUpLmx0KHQpLCJpbnN1ZmZpY2llbnQgbGlxdWlkaXR5IikpcmV0dXJuITE7Y29uc3Qgbj1hcGkuQmlnTnVtYmVyKGEpLnRpbWVzKGUpO2k9YXBpLkJpZ051bWJlcih0KS5taW51cyhlKS50aW1lcyhpLnRyYWRlRmVlTXVsKTtyZXR1cm4gbi5kaXZpZGVkQnkoaSl9ZnVuY3Rpb24gZ2V0QW1vdW50T3V0KGksZSxhLHQpe2lmKCFhcGkuYXNzZXJ0KGFwaS5CaWdOdW1iZXIoZSkuZ3QoMCksImluc3VmZmljaWVudCBvdXRwdXQgYW1vdW50Iil8fCFhcGkuYXNzZXJ0KGFwaS5CaWdOdW1iZXIoYSkuZ3QoMCkmJmFwaS5CaWdOdW1iZXIodCkuZ3QoMCksImluc3VmZmljaWVudCBsaXF1aWRpdHkiKSlyZXR1cm4hMTtpPWFwaS5CaWdOdW1iZXIoZSkudGltZXMoaS50cmFkZUZlZU11bCk7Y29uc3Qgbj1hcGkuQmlnTnVtYmVyKGkpLnRpbWVzKHQpO2k9YXBpLkJpZ051bWJlcihhKS5wbHVzKGkpLGk9bi5kaXZpZGVkQnkoaSk7cmV0dXJuISFhcGkuYXNzZXJ0KGFwaS5CaWdOdW1iZXIoaSkubHQodCksImluc3VmZmljaWVudCBsaXF1aWRpdHkiKSYmaX1hc3luYyBmdW5jdGlvbiB2YWxpZGF0ZU9yYWNsZShpLGUsYT1hcGkuQmlnTnVtYmVyKCIwLjAxIikpe3Zhclt0LGldPWkudG9rZW5QYWlyLnNwbGl0KCI6IiksdD0iU1dBUC5ISVZFIiE9PXQ/YXdhaXQgYXBpLmRiLmZpbmRPbmVJblRhYmxlKCJtYXJrZXQiLCJtZXRyaWNzIix7c3ltYm9sOnR9KTp7bGFzdFByaWNlOjF9LGk9IlNXQVAuSElWRSIhPT1pP2F3YWl0IGFwaS5kYi5maW5kT25lSW5UYWJsZSgibWFya2V0IiwibWV0cmljcyIse3N5bWJvbDppfSk6e2xhc3RQcmljZToxfTtpZighdHx8IWkpcmV0dXJuIG51bGw7aT1hcGkuQmlnTnVtYmVyKHQubGFzdFByaWNlKS5kaXZpZGVkQnkoaS5sYXN0UHJpY2UpLGk9YXBpLkJpZ051bWJlcihlKS5taW51cyhpKS5hYnMoKS5kaXZpZGVkQnkoaSk7cmV0dXJuISFhcGkuYXNzZXJ0KGFwaS5CaWdOdW1iZXIoaSkubHRlKGEpLCJleGNlZWRlZCBtYXggZGV2aWF0aW9uIGZyb20gb3JkZXIgYm9vayIpfWFzeW5jIGZ1bmN0aW9uIHZhbGlkYXRlVG9rZW5QYWlyKGkpe2lmKCFhcGkuYXNzZXJ0KCJzdHJpbmciPT10eXBlb2YgaSYmLTEhPT1pLmluZGV4T2YoIjoiKSwiaW52YWxpZCB0b2tlblBhaXIgZm9ybWF0IikpcmV0dXJuITE7dmFyW2UsaV09aS5zcGxpdCgiOiIpO3JldHVybiEhKGFwaS5hc3NlcnQoZSE9PWksInRva2VuUGFpciBjYW5ub3QgYmUgdGhlIHNhbWUgdG9rZW4iKSYmYXBpLmFzc2VydChhd2FpdCBhcGkuZGIuZmluZE9uZUluVGFibGUoInRva2VucyIsInRva2VucyIse3N5bWJvbDplfSksImJhc2VTeW1ib2wgZG9lcyBub3QgZXhpc3QiKSYmYXBpLmFzc2VydChhd2FpdCBhcGkuZGIuZmluZE9uZUluVGFibGUoInRva2VucyIsInRva2VucyIse3N5bWJvbDppfSksInF1b3RlU3ltYm9sIGRvZXMgbm90IGV4aXN0IikpfWFzeW5jIGZ1bmN0aW9uIHZhbGlkYXRlUG9vbChpKXtjb25zdFtlLGFdPWkuc3BsaXQoIjoiKTt2YXIgdD1hd2FpdCBhcGkuZGIuZmluZE9uZSgicG9vbHMiLHt0b2tlblBhaXI6aX0pLGk9YXdhaXQgYXBpLmRiLmZpbmRPbmUoInBvb2xzIix7dG9rZW5QYWlyOlthLGVdLmpvaW4oIjoiKX0pO3JldHVybiEhYXBpLmFzc2VydChudWxsPT09dCYmbnVsbD09PWksImEgcG9vbCBhbHJlYWR5IGV4aXN0cyBmb3IgdGhpcyB0b2tlblBhaXIiKX1hc3luYyBmdW5jdGlvbiB1cGRhdGVQb29sU3RhdHMoaSxlLGEsdCxuKXtjb25zdCBzPWk7cy5iYXNlUXVhbnRpdHk9YXBpLkJpZ051bWJlcihpLmJhc2VRdWFudGl0eSkucGx1cyhlKS50b0ZpeGVkKGkucHJlY2lzaW9uLGFwaS5CaWdOdW1iZXIuUk9VTkRfSEFMRl9VUCkscy5xdW90ZVF1YW50aXR5PWFwaS5CaWdOdW1iZXIoaS5xdW90ZVF1YW50aXR5KS5wbHVzKGEpLnRvRml4ZWQoaS5wcmVjaXNpb24sYXBpLkJpZ051bWJlci5ST1VORF9IQUxGX1VQKSxhcGkuQmlnTnVtYmVyKHMuYmFzZVF1YW50aXR5KS5ndCgwKSYmYXBpLkJpZ051bWJlcihzLnF1b3RlUXVhbnRpdHkpLmd0KDApJiYocy5iYXNlUHJpY2U9YXBpLkJpZ051bWJlcihzLnF1b3RlUXVhbnRpdHkpLmRpdmlkZWRCeShzLmJhc2VRdWFudGl0eSkudG9GaXhlZChpLnByZWNpc2lvbixhcGkuQmlnTnVtYmVyLlJPVU5EX0RPV04pLHMucXVvdGVQcmljZT1hcGkuQmlnTnVtYmVyKHMuYmFzZVF1YW50aXR5KS5kaXZpZGVkQnkocy5xdW90ZVF1YW50aXR5KS50b0ZpeGVkKGkucHJlY2lzaW9uLGFwaS5CaWdOdW1iZXIuUk9VTkRfRE9XTikpLHQmJihzLnRvdGFsU2hhcmVzPWFwaS5CaWdOdW1iZXIoaS50b3RhbFNoYXJlcykucGx1cyh0KSksbiYmKHMuYmFzZVZvbHVtZT1hcGkuQmlnTnVtYmVyKHMuYmFzZVZvbHVtZSkucGx1cyhNYXRoLmFicyhlKSkudG9GaXhlZChpLnByZWNpc2lvbixhcGkuQmlnTnVtYmVyLlJPVU5EX0RPV04pLHMucXVvdGVWb2x1bWU9YXBpLkJpZ051bWJlcihzLnF1b3RlVm9sdW1lKS5wbHVzKE1hdGguYWJzKGEpKS50b0ZpeGVkKGkucHJlY2lzaW9uLGFwaS5CaWdOdW1iZXIuUk9VTkRfRE9XTikpLGF3YWl0IGFwaS5kYi51cGRhdGUoInBvb2xzIixzKX1hY3Rpb25zLmNyZWF0ZVNTQz1hc3luYygpPT57aWYoITE9PT1hd2FpdCBhcGkuZGIudGFibGVFeGlzdHMoInBvb2xzIikpe2F3YWl0IGFwaS5kYi5jcmVhdGVUYWJsZSgicG9vbHMiLFsidG9rZW5QYWlyIl0pLGF3YWl0IGFwaS5kYi5jcmVhdGVUYWJsZSgibGlxdWlkaXR5UG9zaXRpb25zIixbImFjY291bnQiLCJ0b2tlblBhaXIiXSksYXdhaXQgYXBpLmRiLmNyZWF0ZVRhYmxlKCJwYXJhbXMiKTtjb25zdCBpPXtwb29sQ3JlYXRpb25GZWU6IjEwMDAifTthd2FpdCBhcGkuZGIuaW5zZXJ0KCJwYXJhbXMiLGkpfWVsc2V7Y29uc3QgYT1hd2FpdCBhcGkuZGIuZmluZE9uZSgicGFyYW1zIix7fSk7aWYoYS51cGRhdGVJbmRleCkxPT09YS51cGRhdGVJbmRleCYmKGEudHJhZGVGZWVNdWw9IjAuOTk3NSIsYS51cGRhdGVJbmRleD0yLGF3YWl0IGFwaS5kYi51cGRhdGUoInBhcmFtcyIsYSkpO2Vsc2V7Y29uc3QgdD1uZXcgRGF0ZShhcGkuaGl2ZUJsb2NrVGltZXN0YW1wKyIuMDAwWiIpO2xldCBlPWF3YWl0IGFwaS5kYi5maW5kKCJsaXF1aWRpdHlQb3NpdGlvbnMiLHt0aW1lRmFjdG9yOnskZXhpc3RzOiExfX0pO2Zvcig7MDxlLmxlbmd0aDspe2ZvcihsZXQgaT0wO2k8ZS5sZW5ndGg7aSs9MSl7Y29uc3Qgbj1lW2ldO24udGltZUZhY3Rvcj10LmdldFRpbWUoKSxhd2FpdCBhcGkuZGIudXBkYXRlKCJsaXF1aWRpdHlQb3NpdGlvbnMiLG4pfWU9YXdhaXQgYXBpLmRiLmZpbmQoImxpcXVpZGl0eVBvc2l0aW9ucyIse3RpbWVGYWN0b3I6eyRleGlzdHM6ITF9fSl9YS51cGRhdGVJbmRleD0xLGF3YWl0IGFwaS5kYi51cGRhdGUoInBhcmFtcyIsYSl9fX0sYWN0aW9ucy51cGRhdGVQYXJhbXM9YXN5bmMgaT0+e2k9aS5wb29sQ3JlYXRpb25GZWU7aWYoYXBpLnNlbmRlcj09PWFwaS5vd25lcil7Y29uc3QgZT1hd2FpdCBhcGkuZGIuZmluZE9uZSgicGFyYW1zIix7fSk7aWYoaSl7aWYoIWFwaS5hc3NlcnQoInN0cmluZyI9PXR5cGVvZiBpJiYhYXBpLkJpZ051bWJlcihpKS5pc05hTigpJiZhcGkuQmlnTnVtYmVyKGkpLmd0ZSgwKSwiaW52YWxpZCBwb29sQ3JlYXRpb25GZWUiKSlyZXR1cm47ZS5wb29sQ3JlYXRpb25GZWU9aX1hd2FpdCBhcGkuZGIudXBkYXRlKCJwYXJhbXMiLGUpfX0sYWN0aW9ucy5jcmVhdGVQb29sPWFzeW5jIGk9Pntjb25zdHt0b2tlblBhaXI6ZSxpc1NpZ25lZFdpdGhBY3RpdmVLZXk6YX09aTt2YXIgdD0oYXdhaXQgYXBpLmRiLmZpbmRPbmUoInBhcmFtcyIse30pKVsicG9vbENyZWF0aW9uRmVlIl0sbj1hd2FpdCBhcGkuZGIuZmluZE9uZUluVGFibGUoInRva2VucyIsImJhbGFuY2VzIix7YWNjb3VudDphcGkuc2VuZGVyLHN5bWJvbDoiQkVFIn0pLGk9ISghYXBpLkJpZ051bWJlcih0KS5sdGUoMCkmJmFwaS5zZW5kZXIhPT1hcGkub3duZXIpfHxuJiZhcGkuQmlnTnVtYmVyKG4uYmFsYW5jZSkuZ3RlKHQpO2FwaS5hc3NlcnQoaSwieW91IG11c3QgaGF2ZSBlbm91Z2ggdG9rZW5zIHRvIGNvdmVyIHRoZSBjcmVhdGlvbiBmZWUiKSYmYXdhaXQgdmFsaWRhdGVUb2tlblBhaXIoZSkmJmF3YWl0IHZhbGlkYXRlUG9vbChlKSYmYXBpLmFzc2VydCghMD09PWEsInlvdSBtdXN0IHVzZSBhIHRyYW5zYWN0aW9uIHNpZ25lZCB3aXRoIHlvdXIgYWN0aXZlIGtleSIpJiYoW24saV09ZS5zcGxpdCgiOiIpLG49YXdhaXQgYXBpLmRiLmZpbmRPbmVJblRhYmxlKCJ0b2tlbnMiLCJ0b2tlbnMiLHtzeW1ib2w6bn0pLGk9YXdhaXQgYXBpLmRiLmZpbmRPbmVJblRhYmxlKCJ0b2tlbnMiLCJ0b2tlbnMiLHtzeW1ib2w6aX0pLGk9e3Rva2VuUGFpcjplLGJhc2VRdWFudGl0eTowLGJhc2VWb2x1bWU6MCxiYXNlUHJpY2U6MCxxdW90ZVF1YW50aXR5OjAscXVvdGVWb2x1bWU6MCxxdW90ZVByaWNlOjAsdG90YWxTaGFyZXM6MCxwcmVjaXNpb246TWF0aC5tYXgobi5wcmVjaXNpb24saS5wcmVjaXNpb24pLGNyZWF0b3I6YXBpLnNlbmRlcn0sYXdhaXQgYXBpLmRiLmluc2VydCgicG9vbHMiLGkpLGFwaS5zZW5kZXIhPT1hcGkub3duZXImJmFwaS5CaWdOdW1iZXIodCkuZ3QoMCkmJmF3YWl0IGFwaS5leGVjdXRlU21hcnRDb250cmFjdCgidG9rZW5zIiwidHJhbnNmZXIiLHt0bzoibnVsbCIsc3ltYm9sOiJCRUUiLHF1YW50aXR5OnQsaXNTaWduZWRXaXRoQWN0aXZlS2V5OmF9KSxhcGkuZW1pdCgiY3JlYXRlUG9vbCIse3Rva2VuUGFpcjplfSkpfSxhY3Rpb25zLmNyZWF0ZVJld2FyZFBvb2w9YXN5bmMgaT0+e2NvbnN0e3Rva2VuUGFpcjplLGxvdHRlcnlXaW5uZXJzOmEsbG90dGVyeUludGVydmFsSG91cnM6dCxsb3R0ZXJ5QW1vdW50Om4sbWluZWRUb2tlbjpzLGlzU2lnbmVkV2l0aEFjdGl2ZUtleTpyfT1pO3ZhciBvPShhd2FpdCBhcGkuZGIuZmluZE9uZUluVGFibGUoIm1pbmluZyIsInBhcmFtcyIse30pKVsicG9vbENyZWF0aW9uRmVlIl0saT1hd2FpdCBhcGkuZGIuZmluZE9uZUluVGFibGUoInRva2VucyIsImJhbGFuY2VzIix7YWNjb3VudDphcGkuc2VuZGVyLHN5bWJvbDoiQkVFIn0pLGk9ISghYXBpLkJpZ051bWJlcihvKS5sdGUoMCkmJmFwaS5zZW5kZXIhPT1hcGkub3duZXIpfHxpJiZhcGkuQmlnTnVtYmVyKGkuYmFsYW5jZSkuZ3RlKG8pLG89YXdhaXQgYXBpLmRiLmZpbmQoImxpcXVpZGl0eVBvc2l0aW9ucyIse3Rva2VuUGFpcjplfSk7aWYoYXBpLmFzc2VydChpLCJ5b3UgbXVzdCBoYXZlIGVub3VnaCB0b2tlbnMgdG8gY292ZXIgdGhlIGNyZWF0aW9uIGZlZSIpJiZhd2FpdCB2YWxpZGF0ZVRva2VuUGFpcihlKSYmYXBpLmFzc2VydChvJiYwPG8ubGVuZ3RoLCJwb29sIG11c3QgaGF2ZSBsaXF1aWRpdHkgcG9zaXRpb25zIikmJmFwaS5hc3NlcnQoITA9PT1yLCJ5b3UgbXVzdCB1c2UgYSB0cmFuc2FjdGlvbiBzaWduZWQgd2l0aCB5b3VyIGFjdGl2ZSBrZXkiKSl7bz1zKyI6RVhULSIrZS5yZXBsYWNlKCI6IiwiIik7Y29uc3QgdT1hd2FpdCBhcGkuZXhlY3V0ZVNtYXJ0Q29udHJhY3QoIm1pbmluZyIsImNyZWF0ZVBvb2wiLHtsb3R0ZXJ5V2lubmVyczphLGxvdHRlcnlJbnRlcnZhbEhvdXJzOnQsbG90dGVyeUFtb3VudDpuLG1pbmVkVG9rZW46cyxleHRlcm5hbE1pbmVyczplfSk7dm9pZCAwPT09dS5lcnJvcnMmJnUuZXZlbnRzJiZ2b2lkIDAhPT11LmV2ZW50cy5maW5kKGk9PiJtaW5pbmciPT09aS5jb250cmFjdCYmImNyZWF0ZVBvb2wiPT09aS5ldmVudCkmJihhd2FpdCBhcGkuZXhlY3V0ZVNtYXJ0Q29udHJhY3QoIm1pbmluZyIsInNldEFjdGl2ZSIse2lkOm8sYWN0aXZlOiEwfSksYXBpLmVtaXQoImNyZWF0ZVJld2FyZFBvb2wiLHt0b2tlblBhaXI6ZSxyZXdhcmRQb29sSWQ6b30pKX19LGFjdGlvbnMudXBkYXRlUmV3YXJkUG9vbD1hc3luYyBpPT57Y29uc3R7dG9rZW5QYWlyOmUsbG90dGVyeVdpbm5lcnM6YSxsb3R0ZXJ5SW50ZXJ2YWxIb3Vyczp0LGxvdHRlcnlBbW91bnQ6bixtaW5lZFRva2VuOnMsaXNTaWduZWRXaXRoQWN0aXZlS2V5OnJ9PWk7dmFyIG89KGF3YWl0IGFwaS5kYi5maW5kT25lSW5UYWJsZSgibWluaW5nIiwicGFyYW1zIix7fSkpWyJwb29sVXBkYXRlRmVlIl0saT1hd2FpdCBhcGkuZGIuZmluZE9uZUluVGFibGUoInRva2VucyIsImJhbGFuY2VzIix7YWNjb3VudDphcGkuc2VuZGVyLHN5bWJvbDoiQkVFIn0pLGk9ISghYXBpLkJpZ051bWJlcihvKS5sdGUoMCkmJmFwaS5zZW5kZXIhPT1hcGkub3duZXIpfHxpJiZhcGkuQmlnTnVtYmVyKGkuYmFsYW5jZSkuZ3RlKG8pLG89YXdhaXQgYXBpLmRiLmZpbmQoImxpcXVpZGl0eVBvc2l0aW9ucyIse3Rva2VuUGFpcjplfSk7aWYoYXBpLmFzc2VydChpLCJ5b3UgbXVzdCBoYXZlIGVub3VnaCB0b2tlbnMgdG8gY292ZXIgdGhlIHVwZGF0ZSBmZWUiKSYmYXdhaXQgdmFsaWRhdGVUb2tlblBhaXIoZSkmJmFwaS5hc3NlcnQobyYmMDxvLmxlbmd0aCwicG9vbCBtdXN0IGhhdmUgbGlxdWlkaXR5IHBvc2l0aW9ucyIpJiZhcGkuYXNzZXJ0KCEwPT09ciwieW91IG11c3QgdXNlIGEgdHJhbnNhY3Rpb24gc2lnbmVkIHdpdGggeW91ciBhY3RpdmUga2V5Iikpe289cysiOkVYVC0iK2UucmVwbGFjZSgiOiIsIiIpO2NvbnN0IHU9YXdhaXQgYXBpLmV4ZWN1dGVTbWFydENvbnRyYWN0KCJtaW5pbmciLCJ1cGRhdGVQb29sIix7aWQ6byxsb3R0ZXJ5V2lubmVyczphLGxvdHRlcnlJbnRlcnZhbEhvdXJzOnQsbG90dGVyeUFtb3VudDpufSk7dm9pZCAwPT09dS5lcnJvcnMmJnUuZXZlbnRzJiZ2b2lkIDAhPT11LmV2ZW50cy5maW5kKGk9PiJtaW5pbmciPT09aS5jb250cmFjdCYmInVwZGF0ZVBvb2wiPT09aS5ldmVudCkmJmFwaS5lbWl0KCJ1cGRhdGVSZXdhcmRQb29sIix7dG9rZW5QYWlyOmUscmV3YXJkUG9vbElkOm99KX19LGFjdGlvbnMuc2V0UmV3YXJkUG9vbEFjdGl2ZT1hc3luYyBpPT57Y29uc3R7dG9rZW5QYWlyOmUsbWluZWRUb2tlbjphLGFjdGl2ZTp0LGlzU2lnbmVkV2l0aEFjdGl2ZUtleTpufT1pO2FwaS5hc3NlcnQoITA9PT1uLCJ5b3UgbXVzdCB1c2UgYSBjdXN0b21fanNvbiBzaWduZWQgd2l0aCB5b3VyIGFjdGl2ZSBrZXkiKSYmYXdhaXQgdmFsaWRhdGVUb2tlblBhaXIoZSkmJihpPWErIjpFWFQtIitlLnJlcGxhY2UoIjoiLCIiKSx2b2lkIDA9PT0oYXdhaXQgYXBpLmV4ZWN1dGVTbWFydENvbnRyYWN0KCJtaW5pbmciLCJzZXRBY3RpdmUiLHtpZDppLGFjdGl2ZTp0fSkpLmVycm9ycyYmYXBpLmVtaXQoInNldFJld2FyZFBvb2xBY3RpdmUiLHtyZXdhcmRQb29sSWQ6aSxhY3RpdmU6dH0pKX0sYWN0aW9ucy5hZGRMaXF1aWRpdHk9YXN5bmMgYT0+e2NvbnN0e3Rva2VuUGFpcjp0LGJhc2VRdWFudGl0eTpuLHF1b3RlUXVhbnRpdHk6cyxtYXhQcmljZUltcGFjdDpyLG1heERldmlhdGlvbjpvLGlzU2lnbmVkV2l0aEFjdGl2ZUtleTppfT1hO2lmKGFwaS5hc3NlcnQoITA9PT1pLCJ5b3UgbXVzdCB1c2UgYSB0cmFuc2FjdGlvbiBzaWduZWQgd2l0aCB5b3VyIGFjdGl2ZSBrZXkiKSYmYXBpLmFzc2VydCgic3RyaW5nIj09dHlwZW9mIG4mJmFwaS5CaWdOdW1iZXIobikuZ3QoMCksImludmFsaWQgYmFzZVF1YW50aXR5IikmJmFwaS5hc3NlcnQoInN0cmluZyI9PXR5cGVvZiBzJiZhcGkuQmlnTnVtYmVyKHMpLmd0KDApLCJpbnZhbGlkIHF1b3RlUXVhbnRpdHkiKSYmYXdhaXQgdmFsaWRhdGVUb2tlblBhaXIodCkpe2xldCBpPWFwaS5CaWdOdW1iZXIoIjAuMDEiKTtpZihyKXtpZighYXBpLmFzc2VydCgic3RyaW5nIj09dHlwZW9mIHImJmFwaS5CaWdOdW1iZXIocikuZ3QoMCkmJmFwaS5CaWdOdW1iZXIocikuZHAoKTw9MywibWF4UHJpY2VJbXBhY3QgbXVzdCBiZSBncmVhdGVyIHRoYW4gMCIpKXJldHVybjtpPWFwaS5CaWdOdW1iZXIocikuZGl2aWRlZEJ5KDEwMCl9bGV0IGU9YXBpLkJpZ051bWJlcigiMC4wMSIpO2lmKG8pe2lmKCFhcGkuYXNzZXJ0KCJzdHJpbmciPT10eXBlb2YgbyYmYXBpLkJpZ051bWJlcihvKS5pc0ludGVnZXIoKSYmYXBpLkJpZ051bWJlcihvKS5ndGUoMCksIm1heERldmlhdGlvbiBtdXN0IGJlIGFuIGludGVnZXIgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDAiKSlyZXR1cm47ZT1hcGkuQmlnTnVtYmVyKG8pLmRpdmlkZWRCeSgxMDApfXZhclt1LHBdPXQuc3BsaXQoIjoiKSxtPWF3YWl0IGFwaS5kYi5maW5kT25lSW5UYWJsZSgidG9rZW5zIiwidG9rZW5zIix7c3ltYm9sOnV9KSxkPWF3YWl0IGFwaS5kYi5maW5kT25lSW5UYWJsZSgidG9rZW5zIiwidG9rZW5zIix7c3ltYm9sOnB9KTtpZihhcGkuYXNzZXJ0KGFwaS5CaWdOdW1iZXIobikuZHAoKTw9bS5wcmVjaXNpb24sImJhc2VRdWFudGl0eSBwcmVjaXNpb24gbWlzbWF0Y2giKSYmYXBpLmFzc2VydChhcGkuQmlnTnVtYmVyKHMpLmRwKCk8PWQucHJlY2lzaW9uLCJxdW90ZVF1YW50aXR5IHByZWNpc2lvbiBtaXNtYXRjaCIpKXt2YXIgYj1hd2FpdCBhcGkuZGIuZmluZE9uZSgicG9vbHMiLHt0b2tlblBhaXI6dH0pO2lmKGFwaS5hc3NlcnQoYiwibm8gZXhpc3RpbmcgcG9vbCBmb3IgdG9rZW5QYWlyIikmJiEoYXBpLkJpZ051bWJlcihiLmJhc2VRdWFudGl0eSkuZXEoMCkmJmFwaS5CaWdOdW1iZXIoYi5xdW90ZVF1YW50aXR5KS5lcSgwKSYmZS5ndCgwKSYmITE9PT1hd2FpdCB2YWxpZGF0ZU9yYWNsZShiLGFwaS5CaWdOdW1iZXIocykuZGl2aWRlZEJ5KG4pLGUpKSl7bGV0IGU7dmFyIGw9YXBpLkJpZ051bWJlcihuKS50aW1lcyhhcGkuQmlnTnVtYmVyKCIxIikubWludXMoaSkpLGE9YXBpLkJpZ051bWJlcihzKS50aW1lcyhhcGkuQmlnTnVtYmVyKCIxIikubWludXMoaSkpO2lmKGFwaS5CaWdOdW1iZXIoYi5iYXNlUXVhbnRpdHkpLmd0KDApJiZhcGkuQmlnTnVtYmVyKGIucXVvdGVRdWFudGl0eSkuZ3QoMCkpe2Q9Z2V0UXVvdGUobixiLmJhc2VRdWFudGl0eSxiLnF1b3RlUXVhbnRpdHkpLnRvRml4ZWQoZC5wcmVjaXNpb24sYXBpLkJpZ051bWJlci5ST1VORF9IQUxGX1VQKTtpZihhcGkuQmlnTnVtYmVyKGQpLmx0ZShzKSl7aWYoIWFwaS5hc3NlcnQoYXBpLkJpZ051bWJlcihkKS5ndGUoYSksImV4Y2VlZGVkIG1heCBwcmljZSBpbXBhY3QgZm9yIGFkZGluZyBsaXF1aWRpdHkiKSlyZXR1cm47ZT1bbixkXX1lbHNle3ZhciBjPWdldFF1b3RlKHMsYi5xdW90ZVF1YW50aXR5LGIuYmFzZVF1YW50aXR5KS50b0ZpeGVkKG0ucHJlY2lzaW9uLGFwaS5CaWdOdW1iZXIuUk9VTkRfSEFMRl9VUCk7aWYoYXBpLkJpZ051bWJlcihjKS5sdGUobikpe2lmKCFhcGkuYXNzZXJ0KGFwaS5CaWdOdW1iZXIoYykuZ3RlKGwpLCJleGNlZWRlZCBtYXggcHJpY2UgaW1wYWN0IGZvciBhZGRpbmcgbGlxdWlkaXR5IikpcmV0dXJuO2U9W2Msc119fX1lbHNlIGU9W24sc107dmFyIGw9YXdhaXQgYXBpLmRiLmZpbmRPbmVJblRhYmxlKCJ0b2tlbnMiLCJiYWxhbmNlcyIse2FjY291bnQ6YXBpLnNlbmRlcixzeW1ib2w6dX0pLGM9YXdhaXQgYXBpLmRiLmZpbmRPbmVJblRhYmxlKCJ0b2tlbnMiLCJiYWxhbmNlcyIse2FjY291bnQ6YXBpLnNlbmRlcixzeW1ib2w6cH0pLGw9bCYmYyYmYXBpLkJpZ051bWJlcihsLmJhbGFuY2UpLmd0ZShlWzBdKSYmYXBpLkJpZ051bWJlcihjLmJhbGFuY2UpLmd0ZShlWzFdKTtpZihhcGkuYXNzZXJ0KGwsImluc3VmZmljaWVudCB0b2tlbiBiYWxhbmNlIikpe2xldCBpO2lmKGk9YXBpLkJpZ051bWJlcihiLnRvdGFsU2hhcmVzKS5lcSgwKT9hcGkuQmlnTnVtYmVyKGVbMF0pLnRpbWVzKGVbMV0pLnNxcnQoKTphcGkuQmlnTnVtYmVyLm1pbihhcGkuQmlnTnVtYmVyKGVbMF0pLnRpbWVzKGIudG90YWxTaGFyZXMpLmRpdmlkZWRCeShiLmJhc2VRdWFudGl0eSksYXBpLkJpZ051bWJlcihlWzFdKS50aW1lcyhiLnRvdGFsU2hhcmVzKS5kaXZpZGVkQnkoYi5xdW90ZVF1YW50aXR5KSksYXBpLmFzc2VydChhcGkuQmlnTnVtYmVyKGkpLmd0KDApLCJpbnN1ZmZpY2llbnQgbGlxdWlkaXR5IGNyZWF0ZWQiKSl7Y29uc3QgTj1uZXcgRGF0ZShhcGkuaGl2ZUJsb2NrVGltZXN0YW1wKyIuMDAwWiIpLEI9YXdhaXQgYXBpLmRiLmZpbmRPbmUoImxpcXVpZGl0eVBvc2l0aW9ucyIse2FjY291bnQ6YXBpLnNlbmRlcix0b2tlblBhaXI6dH0pO0I/KGc9Qi5zaGFyZXMsYz1hcGkuQmlnTnVtYmVyKEIuc2hhcmVzKS5wbHVzKGkpLGw9YXBpLkJpZ051bWJlcihOLmdldFRpbWUoKSkubWludXMoQi50aW1lRmFjdG9yKS5hYnMoKSxnPWFwaS5CaWdOdW1iZXIoYykubWludXMoZykuYWJzKCkuZGl2aWRlZEJ5KGFwaS5CaWdOdW1iZXIubWF4KGMsZykpLGc9YXBpLkJpZ051bWJlcihsKS50aW1lcyhnKSxCLnNoYXJlcz1jLEIudGltZUZhY3Rvcj1hcGkuQmlnTnVtYmVyLm1pbihhcGkuQmlnTnVtYmVyKEIudGltZUZhY3RvcikucGx1cyhnKS5kcCgwLGFwaS5CaWdOdW1iZXIuUk9VTkRfSEFMRl9VUCksTi5nZXRUaW1lKCkpLnRvTnVtYmVyKCksYXdhaXQgYXBpLmRiLnVwZGF0ZSgibGlxdWlkaXR5UG9zaXRpb25zIixCKSk6KHk9e2FjY291bnQ6YXBpLnNlbmRlcix0b2tlblBhaXI6dCxzaGFyZXM6aSx0aW1lRmFjdG9yOk4uZ2V0VGltZSgpfSxhd2FpdCBhcGkuZGIuaW5zZXJ0KCJsaXF1aWRpdHlQb3NpdGlvbnMiLHkpKTt2YXIgZz1hd2FpdCBhcGkuZXhlY3V0ZVNtYXJ0Q29udHJhY3QoInRva2VucyIsInRyYW5zZmVyVG9Db250cmFjdCIse3N5bWJvbDp1LHF1YW50aXR5OmVbMF0sdG86Im1hcmtldHBvb2xzIn0pLHk9YXdhaXQgYXBpLmV4ZWN1dGVTbWFydENvbnRyYWN0KCJ0b2tlbnMiLCJ0cmFuc2ZlclRvQ29udHJhY3QiLHtzeW1ib2w6cCxxdWFudGl0eTplWzFdLHRvOiJtYXJrZXRwb29scyJ9KTthcGkuYXNzZXJ0KHZvaWQgMD09PWcuZXJyb3JzJiZ2b2lkIDA9PT15LmVycm9ycywiZGVwb3NpdCB0cmFuc2ZlciBlcnJvcnMiKSYmKGF3YWl0IHVwZGF0ZVBvb2xTdGF0cyhiLGVbMF0sZVsxXSxpLCExKSxhcGkuZW1pdCgiYWRkTGlxdWlkaXR5Iix7YmFzZVN5bWJvbDp1LHF1b3RlU3ltYm9sOnB9KSl9fX19fX0sYWN0aW9ucy5yZW1vdmVMaXF1aWRpdHk9YXN5bmMgaT0+e2NvbnN0e3Rva2VuUGFpcjplLHNoYXJlc091dDphLGlzU2lnbmVkV2l0aEFjdGl2ZUtleTp0fT1pO2lmKGFwaS5hc3NlcnQoITA9PT10LCJ5b3UgbXVzdCB1c2UgYSB0cmFuc2FjdGlvbiBzaWduZWQgd2l0aCB5b3VyIGFjdGl2ZSBrZXkiKSYmYXBpLmFzc2VydCgic3RyaW5nIj09dHlwZW9mIGEmJmFwaS5CaWdOdW1iZXIoYSkuZ3QoMCkmJmFwaS5CaWdOdW1iZXIoYSkubHRlKDEwMCkmJmFwaS5CaWdOdW1iZXIoYSkuZHAoKTw9MywiaW52YWxpZCBzaGFyZXNPdXQsIG11c3QgYmUgPiAwIDw9IDEwMCIpJiZhd2FpdCB2YWxpZGF0ZVRva2VuUGFpcihlKSl7dmFyIG4scyxbcixvXT1lLnNwbGl0KCI6IiksdT1hd2FpdCBhcGkuZGIuZmluZE9uZUluVGFibGUoInRva2VucyIsInRva2VucyIse3N5bWJvbDpyfSkscD1hd2FpdCBhcGkuZGIuZmluZE9uZUluVGFibGUoInRva2VucyIsInRva2VucyIse3N5bWJvbDpvfSksbT1hd2FpdCBhcGkuZGIuZmluZE9uZSgicG9vbHMiLHt0b2tlblBhaXI6ZX0pO2lmKGFwaS5hc3NlcnQobSwibm8gZXhpc3RpbmcgcG9vbCBmb3IgdG9rZW5QYWlyIikpe2NvbnN0IGQ9YXdhaXQgYXBpLmRiLmZpbmRPbmUoImxpcXVpZGl0eVBvc2l0aW9ucyIse2FjY291bnQ6YXBpLnNlbmRlcix0b2tlblBhaXI6ZX0pO2FwaS5hc3NlcnQoZCwibm8gZXhpc3RpbmcgbGlxdWlkaXR5IHBvc2l0aW9uIikmJihuPWFwaS5CaWdOdW1iZXIoZC5zaGFyZXMpLnRpbWVzKGEpLmRpdmlkZWRCeSgxMDApLHM9YXBpLkJpZ051bWJlcihuKS50aW1lcyhtLmJhc2VRdWFudGl0eSkuZGl2aWRlZEJ5KG0udG90YWxTaGFyZXMpLnRvRml4ZWQodS5wcmVjaXNpb24sYXBpLkJpZ051bWJlci5ST1VORF9ET1dOKSxpPWFwaS5CaWdOdW1iZXIobikudGltZXMobS5xdW90ZVF1YW50aXR5KS5kaXZpZGVkQnkobS50b3RhbFNoYXJlcykudG9GaXhlZChwLnByZWNpc2lvbixhcGkuQmlnTnVtYmVyLlJPVU5EX0RPV04pLGFwaS5hc3NlcnQoYXBpLkJpZ051bWJlcihzKS5ndCgwKSYmYXBpLkJpZ051bWJlcihpKS5ndCgwKSYmYXBpLkJpZ051bWJlcihtLmJhc2VRdWFudGl0eSkuZ3RlKHMpJiZhcGkuQmlnTnVtYmVyKG0ucXVvdGVRdWFudGl0eSkuZ3RlKGkpLCJpbnN1ZmZpY2llbnQgbGlxdWlkaXR5IikmJihkLnNoYXJlcz1hcGkuQmlnTnVtYmVyKGQuc2hhcmVzKS5taW51cyhuKSxhcGkuQmlnTnVtYmVyKGQuc2hhcmVzKS5lcSgwKT9hd2FpdCBhcGkuZGIucmVtb3ZlKCJsaXF1aWRpdHlQb3NpdGlvbnMiLGQpOmF3YWl0IGFwaS5kYi51cGRhdGUoImxpcXVpZGl0eVBvc2l0aW9ucyIsZCksdT1hd2FpdCBhcGkudHJhbnNmZXJUb2tlbnMoYXBpLnNlbmRlcixyLHMsInVzZXIiKSxwPWF3YWl0IGFwaS50cmFuc2ZlclRva2VucyhhcGkuc2VuZGVyLG8saSwidXNlciIpLGFwaS5hc3NlcnQodm9pZCAwPT09dS5lcnJvcnMmJnZvaWQgMD09PXAuZXJyb3JzLCJ3aXRoZHJhd2FsIHRyYW5zZmVyIGVycm9ycyIpJiYoYXdhaXQgdXBkYXRlUG9vbFN0YXRzKG0sYXBpLkJpZ051bWJlcihzKS5uZWdhdGVkKCksYXBpLkJpZ051bWJlcihpKS5uZWdhdGVkKCksYXBpLkJpZ051bWJlcihuKS5uZWdhdGVkKCksITEpLGFwaS5lbWl0KCJyZW1vdmVMaXF1aWRpdHkiLHtiYXNlU3ltYm9sOnIscXVvdGVTeW1ib2w6b30pKSkpfX19LGFjdGlvbnMuc3dhcFRva2Vucz1hc3luYyB1PT57Y29uc3R7dG9rZW5QYWlyOmksdG9rZW5TeW1ib2w6cCx0b2tlbkFtb3VudDptLHRyYWRlVHlwZTpkLG1pbkFtb3VudE91dDpiLG1heEFtb3VudEluOmwsaXNTaWduZWRXaXRoQWN0aXZlS2V5OmV9PXU7aWYoYXBpLmFzc2VydCghMD09PWUsInlvdSBtdXN0IHVzZSBhIHRyYW5zYWN0aW9uIHNpZ25lZCB3aXRoIHlvdXIgYWN0aXZlIGtleSIpJiZhcGkuYXNzZXJ0KCJzdHJpbmciPT10eXBlb2YgcCwiaW52YWxpZCB0b2tlbiIpJiZhcGkuYXNzZXJ0KCJzdHJpbmciPT10eXBlb2YgbSYmYXBpLkJpZ051bWJlcihtKS5ndCgwKSwiaW5zdWZmaWNpZW50IHRva2VuQW1vdW50IikmJmFwaS5hc3NlcnQoInN0cmluZyI9PXR5cGVvZiBkJiYtMSE9PVRyYWRlVHlwZS5pbmRleE9mKGQpLCJpbnZhbGlkIHRyYWRlVHlwZSIpJiZhd2FpdCB2YWxpZGF0ZVRva2VuUGFpcihpKSYmKCFifHxhcGkuYXNzZXJ0KCJzdHJpbmciPT10eXBlb2YgYiYmYXBpLkJpZ051bWJlcihiKS5ndCgwKSwiaW5zdWZmaWNpZW50IG1pbkFtb3VudE91dCIpKSYmKCFsfHxhcGkuYXNzZXJ0KCJzdHJpbmciPT10eXBlb2YgbCYmYXBpLkJpZ051bWJlcihsKS5ndCgwKSwiaW5zdWZmaWNpZW50IG1heEFtb3VudEluIikpJiZhcGkuYXNzZXJ0KCEoYiYmbCksInNwZWNpZnkgbWluQW1vdW50T3V0IG9yIG1heEFtb3VudEluIGJ1dCBub3QgYm90aCIpKXt2YXJbYyxnXT1pLnNwbGl0KCI6IikseT1hd2FpdCBhcGkuZGIuZmluZE9uZSgicG9vbHMiLHt0b2tlblBhaXI6aX0pO2lmKGFwaS5hc3NlcnQoeSwibm8gZXhpc3RpbmcgcG9vbCBmb3IgdG9rZW5QYWlyIikpe2xldCBpLGUsYSx0O3Q9KCJleGFjdElucHV0Ij09PWQ/cD09PWM6cCE9PWMpPyhpPXkuYmFzZVF1YW50aXR5LGU9eS5xdW90ZVF1YW50aXR5LGE9YyxnKTooaT15LnF1b3RlUXVhbnRpdHksZT15LmJhc2VRdWFudGl0eSxhPWcsYyk7dmFyIE49YXdhaXQgYXBpLmRiLmZpbmRPbmUoInBhcmFtcyIse30pLEI9YXdhaXQgYXBpLmRiLmZpbmRPbmVJblRhYmxlKCJ0b2tlbnMiLCJ0b2tlbnMiLHtzeW1ib2w6YX0pLHU9YXdhaXQgYXBpLmRiLmZpbmRPbmVJblRhYmxlKCJ0b2tlbnMiLCJ0b2tlbnMiLHtzeW1ib2w6dH0pLGc9YXdhaXQgYXBpLmRiLmZpbmRPbmVJblRhYmxlKCJ0b2tlbnMiLCJiYWxhbmNlcyIse2FjY291bnQ6YXBpLnNlbmRlcixzeW1ib2w6YX0pO2xldCBuPSExLHMscixvO2lmKCJleGFjdElucHV0Ij09PWQpe2NvbnN0IGY9YXBpLkJpZ051bWJlcihnZXRBbW91bnRPdXQoTixtLGksZSkpO2lmKCFmLmlzRmluaXRlKCkpcmV0dXJuO2lmKG49ZyYmYXBpLkJpZ051bWJlcihnLmJhbGFuY2UpLmd0ZShtKSxzPXA9PT1jP1ttLGFwaS5CaWdOdW1iZXIoZikubmVnYXRlZCgpXTpbYXBpLkJpZ051bWJlcihmKS5uZWdhdGVkKCksbV0scj17c3ltYm9sOnQsYW1vdW50OmFwaS5CaWdOdW1iZXIoZikuZGl2aWRlZEJ5KE4udHJhZGVGZWVNdWwpLm1pbnVzKGYpLnRvRml4ZWQodS5wcmVjaXNpb24sYXBpLkJpZ051bWJlci5ST1VORF9IQUxGX1VQKX0sbz17aW46bSxvdXQ6Zn0sIWFwaS5hc3NlcnQoYXBpLkJpZ051bWJlcihvLmluKS5kcCgpPD1CLnByZWNpc2lvbiwic3ltYm9sSW4gcHJlY2lzaW9uIG1pc21hdGNoIikpcmV0dXJufWVsc2UgaWYoImV4YWN0T3V0cHV0Ij09PWQpe2NvbnN0IHY9YXBpLkJpZ051bWJlcihnZXRBbW91bnRJbihOLG0saSxlKSk7aWYoIXYuaXNGaW5pdGUoKSlyZXR1cm47aWYobj1nJiZhcGkuQmlnTnVtYmVyKGcuYmFsYW5jZSkuZ3RlKHYudG9GaXhlZChCLnByZWNpc2lvbixhcGkuQmlnTnVtYmVyLlJPVU5EX0hBTEZfVVApKSxzPXA9PT1jP1thcGkuQmlnTnVtYmVyKG0pLm5lZ2F0ZWQoKSx2XTpbdixhcGkuQmlnTnVtYmVyKG0pLm5lZ2F0ZWQoKV0scj17c3ltYm9sOmEsYW1vdW50OmFwaS5CaWdOdW1iZXIodikuZGl2aWRlZEJ5KE4udHJhZGVGZWVNdWwpLm1pbnVzKHYpLnRvRml4ZWQoQi5wcmVjaXNpb24sYXBpLkJpZ051bWJlci5ST1VORF9IQUxGX1VQKX0sbz17aW46dixvdXQ6bX0sIWFwaS5hc3NlcnQoYXBpLkJpZ051bWJlcihvLm91dCkuZHAoKTw9dS5wcmVjaXNpb24sInN5bWJvbE91dCBwcmVjaXNpb24gbWlzbWF0Y2giKSlyZXR1cm59aWYoYXBpLmFzc2VydChuLCJpbnN1ZmZpY2llbnQgaW5wdXQgYmFsYW5jZSIpJiYoby5pbj1hcGkuQmlnTnVtYmVyKG8uaW4pLmRwKEIucHJlY2lzaW9uLGFwaS5CaWdOdW1iZXIuUk9VTkRfQ0VJTCksby5vdXQ9YXBpLkJpZ051bWJlcihvLm91dCkuZHAodS5wcmVjaXNpb24sYXBpLkJpZ051bWJlci5ST1VORF9ET1dOKSxhcGkuYXNzZXJ0KG8uaW4uZ3QoMCksInN5bWJvbEluIHByZWNpc2lvbiBtaXNtYXRjaCIpJiZhcGkuYXNzZXJ0KG8ub3V0Lmd0KDApLCJzeW1ib2xPdXQgcHJlY2lzaW9uIG1pc21hdGNoIikpKXtpZihiKXtpZighYXBpLmFzc2VydChhcGkuQmlnTnVtYmVyKGIpLmRwKCk8PXUucHJlY2lzaW9uLCJtaW5BbW91bnRPdXQgcHJlY2lzaW9uIG1pc21hdGNoIikpcmV0dXJuO28ubWluT3V0PWFwaS5CaWdOdW1iZXIoYil9aWYobCl7aWYoIWFwaS5hc3NlcnQoYXBpLkJpZ051bWJlcihsKS5kcCgpPD1CLnByZWNpc2lvbiwibWF4QW1vdW50SW4gcHJlY2lzaW9uIG1pc21hdGNoIikpcmV0dXJuO28ubWF4SW49YXBpLkJpZ051bWJlcihsKX1pZigodm9pZCAwPT09by5taW5PdXR8fGFwaS5hc3NlcnQoYXBpLkJpZ051bWJlcihvLm91dCkuZ3RlKG8ubWluT3V0KSwiZXhjZWVkZWQgbWF4IHNsaXBwYWdlIGZvciBzd2FwIikpJiYodm9pZCAwPT09by5tYXhJbnx8YXBpLmFzc2VydChhcGkuQmlnTnVtYmVyKG8uaW4pLmx0ZShvLm1heEluKSwiZXhjZWVkZWQgbWF4IHNsaXBwYWdlIGZvciBzd2FwIikpKXtjb25zdCBrPWF3YWl0IGFwaS5leGVjdXRlU21hcnRDb250cmFjdCgidG9rZW5zIiwidHJhbnNmZXJUb0NvbnRyYWN0Iix7c3ltYm9sOmEscXVhbnRpdHk6by5pbi50b0ZpeGVkKCksdG86Im1hcmtldHBvb2xzIn0pO3ZvaWQgMD09PWsuZXJyb3JzJiZrLmV2ZW50cyYmdm9pZCAwIT09ay5ldmVudHMuZmluZChpPT4idG9rZW5zIj09PWkuY29udHJhY3QmJiJ0cmFuc2ZlclRvQ29udHJhY3QiPT09aS5ldmVudCYmaS5kYXRhLmZyb209PT1hcGkuc2VuZGVyJiYibWFya2V0cG9vbHMiPT09aS5kYXRhLnRvJiZpLmRhdGEucXVhbnRpdHk9PT1vLmluLnRvRml4ZWQoKSkmJihhd2FpdCBhcGkudHJhbnNmZXJUb2tlbnMoYXBpLnNlbmRlcix0LG8ub3V0LnRvRml4ZWQoKSwidXNlciIpLGF3YWl0IHVwZGF0ZVBvb2xTdGF0cyh5LHNbMF0sc1sxXSwhMSwhMCksYXBpLmVtaXQoInN3YXBUb2tlbnMiLHtzeW1ib2xJbjphLHN5bWJvbE91dDp0LGZlZTpyfSkpfX19fX07"}}}

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center