1688054431
waR3U4bTeM%3A43ac8830676ace04afb92efcd78fb8d8-5ac4a54817e45e7ebf8696040574efba
s:172360:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGhhc2giO3M6MzI6IjVhYzRhNTQ4MTdlNDVlN2ViZjg2OTYwNDA1NzRlZmJhIjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWUiO3M6MTA6IkxvYWRlci5waHAiO3M6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAcGF0aCI7czo2MToidmVuZG9yL3BocHVuaXQvcGhwdW5pdC9zcmMvVGV4dFVJL1htbENvbmZpZ3VyYXRpb24vTG9hZGVyLnBocCI7czo0MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBzb3VyY2UiO3M6NDIyMzg6Ijw/cGhwIGRlY2xhcmUoc3RyaWN0X3R5cGVzPTEpOwovKgogKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBQSFBVbml0LgogKgogKiAoYykgU2ViYXN0aWFuIEJlcmdtYW5uIDxzZWJhc3RpYW5AcGhwdW5pdC5kZT4KICoKICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0UKICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuCiAqLwpuYW1lc3BhY2UgUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvbjsKCnVzZSBjb25zdCBESVJFQ1RPUllfU0VQQVJBVE9SOwp1c2UgY29uc3QgUEhQX1ZFUlNJT047CnVzZSBmdW5jdGlvbiBhc3NlcnQ7CnVzZSBmdW5jdGlvbiBkZWZpbmVkOwp1c2UgZnVuY3Rpb24gZGlybmFtZTsKdXNlIGZ1bmN0aW9uIGV4cGxvZGU7CnVzZSBmdW5jdGlvbiBpc19maWxlOwp1c2UgZnVuY3Rpb24gaXNfbnVtZXJpYzsKdXNlIGZ1bmN0aW9uIHByZWdfbWF0Y2g7CnVzZSBmdW5jdGlvbiBzdHJlYW1fcmVzb2x2ZV9pbmNsdWRlX3BhdGg7CnVzZSBmdW5jdGlvbiBzdHJsZW47CnVzZSBmdW5jdGlvbiBzdHJwb3M7CnVzZSBmdW5jdGlvbiBzdHJ0b2xvd2VyOwp1c2UgZnVuY3Rpb24gc3Vic3RyOwp1c2UgZnVuY3Rpb24gdHJpbTsKdXNlIERPTURvY3VtZW50Owp1c2UgRE9NRWxlbWVudDsKdXNlIERPTU5vZGVMaXN0Owp1c2UgRE9NWFBhdGg7CnVzZSBQSFBVbml0XFJ1bm5lclxUZXN0U3VpdGVTb3J0ZXI7CnVzZSBQSFBVbml0XFJ1bm5lclxWZXJzaW9uOwp1c2UgUEhQVW5pdFxUZXh0VUlcRGVmYXVsdFJlc3VsdFByaW50ZXI7CnVzZSBQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXENvZGVDb3ZlcmFnZVxDb2RlQ292ZXJhZ2U7CnVzZSBQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXENvZGVDb3ZlcmFnZVxGaWx0ZXJcRGlyZWN0b3J5IGFzIEZpbHRlckRpcmVjdG9yeTsKdXNlIFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cQ29kZUNvdmVyYWdlXEZpbHRlclxEaXJlY3RvcnlDb2xsZWN0aW9uIGFzIEZpbHRlckRpcmVjdG9yeUNvbGxlY3Rpb247CnVzZSBQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXENvZGVDb3ZlcmFnZVxSZXBvcnRcQ2xvdmVyOwp1c2UgUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxDb2RlQ292ZXJhZ2VcUmVwb3J0XENvYmVydHVyYTsKdXNlIFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cQ29kZUNvdmVyYWdlXFJlcG9ydFxDcmFwNGo7CnVzZSBQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXENvZGVDb3ZlcmFnZVxSZXBvcnRcSHRtbCBhcyBDb2RlQ292ZXJhZ2VIdG1sOwp1c2UgUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxDb2RlQ292ZXJhZ2VcUmVwb3J0XFBocCBhcyBDb2RlQ292ZXJhZ2VQaHA7CnVzZSBQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXENvZGVDb3ZlcmFnZVxSZXBvcnRcVGV4dCBhcyBDb2RlQ292ZXJhZ2VUZXh0Owp1c2UgUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxDb2RlQ292ZXJhZ2VcUmVwb3J0XFhtbCBhcyBDb2RlQ292ZXJhZ2VYbWw7CnVzZSBQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvZ2dpbmdcSnVuaXQ7CnVzZSBQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvZ2dpbmdcTG9nZ2luZzsKdXNlIFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9nZ2luZ1xUZWFtQ2l0eTsKdXNlIFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9nZ2luZ1xUZXN0RG94XEh0bWwgYXMgVGVzdERveEh0bWw7CnVzZSBQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvZ2dpbmdcVGVzdERveFxUZXh0IGFzIFRlc3REb3hUZXh0Owp1c2UgUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2dnaW5nXFRlc3REb3hcWG1sIGFzIFRlc3REb3hYbWw7CnVzZSBQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvZ2dpbmdcVGV4dDsKdXNlIFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cVGVzdFN1aXRlIGFzIFRlc3RTdWl0ZUNvbmZpZ3VyYXRpb247CnVzZSBQSFBVbml0XFV0aWxcVGVzdERveFxDbGlUZXN0RG94UHJpbnRlcjsKdXNlIFBIUFVuaXRcVXRpbFxWZXJzaW9uQ29tcGFyaXNvbk9wZXJhdG9yOwp1c2UgUEhQVW5pdFxVdGlsXFhtbDsKdXNlIFBIUFVuaXRcVXRpbFxYbWxcRXhjZXB0aW9uIGFzIFhtbEV4Y2VwdGlvbjsKdXNlIFBIUFVuaXRcVXRpbFxYbWxcTG9hZGVyIGFzIFhtbExvYWRlcjsKdXNlIFBIUFVuaXRcVXRpbFxYbWxcU2NoZW1hRmluZGVyOwp1c2UgUEhQVW5pdFxVdGlsXFhtbFxWYWxpZGF0b3I7CgovKioKICogQGludGVybmFsIFRoaXMgY2xhc3MgaXMgbm90IGNvdmVyZWQgYnkgdGhlIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgcHJvbWlzZSBmb3IgUEhQVW5pdAogKi8KZmluYWwgY2xhc3MgTG9hZGVyCnsKICAgIC8qKgogICAgICogQHRocm93cyBFeGNlcHRpb24KICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGxvYWQoc3RyaW5nICRmaWxlbmFtZSk6IENvbmZpZ3VyYXRpb24KICAgIHsKICAgICAgICB0cnkgewogICAgICAgICAgICAkZG9jdW1lbnQgPSAobmV3IFhtbExvYWRlciktPmxvYWRGaWxlKCRmaWxlbmFtZSwgZmFsc2UsIHRydWUsIHRydWUpOwogICAgICAgIH0gY2F0Y2ggKFhtbEV4Y2VwdGlvbiAkZSkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXhjZXB0aW9uKAogICAgICAgICAgICAgICAgJGUtPmdldE1lc3NhZ2UoKSwKICAgICAgICAgICAgICAgIChpbnQpICRlLT5nZXRDb2RlKCksCiAgICAgICAgICAgICAgICAkZQogICAgICAgICAgICApOwogICAgICAgIH0KCiAgICAgICAgJHhwYXRoID0gbmV3IERPTVhQYXRoKCRkb2N1bWVudCk7CgogICAgICAgIHRyeSB7CiAgICAgICAgICAgICR4c2RGaWxlbmFtZSA9IChuZXcgU2NoZW1hRmluZGVyKS0+ZmluZChWZXJzaW9uOjpzZXJpZXMoKSk7CiAgICAgICAgfSBjYXRjaCAoWG1sRXhjZXB0aW9uICRlKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oCiAgICAgICAgICAgICAgICAkZS0+Z2V0TWVzc2FnZSgpLAogICAgICAgICAgICAgICAgKGludCkgJGUtPmdldENvZGUoKSwKICAgICAgICAgICAgICAgICRlCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gbmV3IENvbmZpZ3VyYXRpb24oCiAgICAgICAgICAgICRmaWxlbmFtZSwKICAgICAgICAgICAgKG5ldyBWYWxpZGF0b3IpLT52YWxpZGF0ZSgkZG9jdW1lbnQsICR4c2RGaWxlbmFtZSksCiAgICAgICAgICAgICR0aGlzLT5leHRlbnNpb25zKCRmaWxlbmFtZSwgJHhwYXRoKSwKICAgICAgICAgICAgJHRoaXMtPmNvZGVDb3ZlcmFnZSgkZmlsZW5hbWUsICR4cGF0aCwgJGRvY3VtZW50KSwKICAgICAgICAgICAgJHRoaXMtPmdyb3VwcygkeHBhdGgpLAogICAgICAgICAgICAkdGhpcy0+dGVzdGRveEdyb3VwcygkeHBhdGgpLAogICAgICAgICAgICAkdGhpcy0+bGlzdGVuZXJzKCRmaWxlbmFtZSwgJHhwYXRoKSwKICAgICAgICAgICAgJHRoaXMtPmxvZ2dpbmcoJGZpbGVuYW1lLCAkeHBhdGgpLAogICAgICAgICAgICAkdGhpcy0+cGhwKCRmaWxlbmFtZSwgJHhwYXRoKSwKICAgICAgICAgICAgJHRoaXMtPnBocHVuaXQoJGZpbGVuYW1lLCAkZG9jdW1lbnQpLAogICAgICAgICAgICAkdGhpcy0+dGVzdFN1aXRlKCRmaWxlbmFtZSwgJHhwYXRoKQogICAgICAgICk7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIGxvZ2dpbmcoc3RyaW5nICRmaWxlbmFtZSwgRE9NWFBhdGggJHhwYXRoKTogTG9nZ2luZwogICAgewogICAgICAgIGlmICgkeHBhdGgtPnF1ZXJ5KCdsb2dnaW5nL2xvZycpLT5sZW5ndGggIT09IDApIHsKICAgICAgICAgICAgcmV0dXJuICR0aGlzLT5sZWdhY3lMb2dnaW5nKCRmaWxlbmFtZSwgJHhwYXRoKTsKICAgICAgICB9CgogICAgICAgICRqdW5pdCAgID0gbnVsbDsKICAgICAgICAkZWxlbWVudCA9ICR0aGlzLT5lbGVtZW50KCR4cGF0aCwgJ2xvZ2dpbmcvanVuaXQnKTsKCiAgICAgICAgaWYgKCRlbGVtZW50KSB7CiAgICAgICAgICAgICRqdW5pdCA9IG5ldyBKdW5pdCgKICAgICAgICAgICAgICAgIG5ldyBGaWxlKAogICAgICAgICAgICAgICAgICAgICR0aGlzLT50b0Fic29sdXRlUGF0aCgKICAgICAgICAgICAgICAgICAgICAgICAgJGZpbGVuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAoc3RyaW5nKSAkdGhpcy0+Z2V0U3RyaW5nQXR0cmlidXRlKCRlbGVtZW50LCAnb3V0cHV0RmlsZScpCiAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICApOwogICAgICAgIH0KCiAgICAgICAgJHRleHQgICAgPSBudWxsOwogICAgICAgICRlbGVtZW50ID0gJHRoaXMtPmVsZW1lbnQoJHhwYXRoLCAnbG9nZ2luZy90ZXh0Jyk7CgogICAgICAgIGlmICgkZWxlbWVudCkgewogICAgICAgICAgICAkdGV4dCA9IG5ldyBUZXh0KAogICAgICAgICAgICAgICAgbmV3IEZpbGUoCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPnRvQWJzb2x1dGVQYXRoKAogICAgICAgICAgICAgICAgICAgICAgICAkZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmcpICR0aGlzLT5nZXRTdHJpbmdBdHRyaWJ1dGUoJGVsZW1lbnQsICdvdXRwdXRGaWxlJykKICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICAkdGVhbUNpdHkgPSBudWxsOwogICAgICAgICRlbGVtZW50ICA9ICR0aGlzLT5lbGVtZW50KCR4cGF0aCwgJ2xvZ2dpbmcvdGVhbWNpdHknKTsKCiAgICAgICAgaWYgKCRlbGVtZW50KSB7CiAgICAgICAgICAgICR0ZWFtQ2l0eSA9IG5ldyBUZWFtQ2l0eSgKICAgICAgICAgICAgICAgIG5ldyBGaWxlKAogICAgICAgICAgICAgICAgICAgICR0aGlzLT50b0Fic29sdXRlUGF0aCgKICAgICAgICAgICAgICAgICAgICAgICAgJGZpbGVuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAoc3RyaW5nKSAkdGhpcy0+Z2V0U3RyaW5nQXR0cmlidXRlKCRlbGVtZW50LCAnb3V0cHV0RmlsZScpCiAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICApOwogICAgICAgIH0KCiAgICAgICAgJHRlc3REb3hIdG1sID0gbnVsbDsKICAgICAgICAkZWxlbWVudCAgICAgPSAkdGhpcy0+ZWxlbWVudCgkeHBhdGgsICdsb2dnaW5nL3Rlc3Rkb3hIdG1sJyk7CgogICAgICAgIGlmICgkZWxlbWVudCkgewogICAgICAgICAgICAkdGVzdERveEh0bWwgPSBuZXcgVGVzdERveEh0bWwoCiAgICAgICAgICAgICAgICBuZXcgRmlsZSgKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+dG9BYnNvbHV0ZVBhdGgoCiAgICAgICAgICAgICAgICAgICAgICAgICRmaWxlbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgKHN0cmluZykgJHRoaXMtPmdldFN0cmluZ0F0dHJpYnV0ZSgkZWxlbWVudCwgJ291dHB1dEZpbGUnKQogICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICR0ZXN0RG94VGV4dCA9IG51bGw7CiAgICAgICAgJGVsZW1lbnQgICAgID0gJHRoaXMtPmVsZW1lbnQoJHhwYXRoLCAnbG9nZ2luZy90ZXN0ZG94VGV4dCcpOwoKICAgICAgICBpZiAoJGVsZW1lbnQpIHsKICAgICAgICAgICAgJHRlc3REb3hUZXh0ID0gbmV3IFRlc3REb3hUZXh0KAogICAgICAgICAgICAgICAgbmV3IEZpbGUoCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPnRvQWJzb2x1dGVQYXRoKAogICAgICAgICAgICAgICAgICAgICAgICAkZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmcpICR0aGlzLT5nZXRTdHJpbmdBdHRyaWJ1dGUoJGVsZW1lbnQsICdvdXRwdXRGaWxlJykKICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICAkdGVzdERveFhtbCA9IG51bGw7CiAgICAgICAgJGVsZW1lbnQgICAgPSAkdGhpcy0+ZWxlbWVudCgkeHBhdGgsICdsb2dnaW5nL3Rlc3Rkb3hYbWwnKTsKCiAgICAgICAgaWYgKCRlbGVtZW50KSB7CiAgICAgICAgICAgICR0ZXN0RG94WG1sID0gbmV3IFRlc3REb3hYbWwoCiAgICAgICAgICAgICAgICBuZXcgRmlsZSgKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+dG9BYnNvbHV0ZVBhdGgoCiAgICAgICAgICAgICAgICAgICAgICAgICRmaWxlbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgKHN0cmluZykgJHRoaXMtPmdldFN0cmluZ0F0dHJpYnV0ZSgkZWxlbWVudCwgJ291dHB1dEZpbGUnKQogICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIHJldHVybiBuZXcgTG9nZ2luZygKICAgICAgICAgICAgJGp1bml0LAogICAgICAgICAgICAkdGV4dCwKICAgICAgICAgICAgJHRlYW1DaXR5LAogICAgICAgICAgICAkdGVzdERveEh0bWwsCiAgICAgICAgICAgICR0ZXN0RG94VGV4dCwKICAgICAgICAgICAgJHRlc3REb3hYbWwKICAgICAgICApOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBsZWdhY3lMb2dnaW5nKHN0cmluZyAkZmlsZW5hbWUsIERPTVhQYXRoICR4cGF0aCk6IExvZ2dpbmcKICAgIHsKICAgICAgICAkanVuaXQgICAgICAgPSBudWxsOwogICAgICAgICR0ZWFtQ2l0eSAgICA9IG51bGw7CiAgICAgICAgJHRlc3REb3hIdG1sID0gbnVsbDsKICAgICAgICAkdGVzdERveFRleHQgPSBudWxsOwogICAgICAgICR0ZXN0RG94WG1sICA9IG51bGw7CiAgICAgICAgJHRleHQgICAgICAgID0gbnVsbDsKCiAgICAgICAgZm9yZWFjaCAoJHhwYXRoLT5xdWVyeSgnbG9nZ2luZy9sb2cnKSBhcyAkbG9nKSB7CiAgICAgICAgICAgIGFzc2VydCgkbG9nIGluc3RhbmNlb2YgRE9NRWxlbWVudCk7CgogICAgICAgICAgICAkdHlwZSAgID0gKHN0cmluZykgJGxvZy0+Z2V0QXR0cmlidXRlKCd0eXBlJyk7CiAgICAgICAgICAgICR0YXJnZXQgPSAoc3RyaW5nKSAkbG9nLT5nZXRBdHRyaWJ1dGUoJ3RhcmdldCcpOwoKICAgICAgICAgICAgaWYgKCEkdGFyZ2V0KSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJHRhcmdldCA9ICR0aGlzLT50b0Fic29sdXRlUGF0aCgkZmlsZW5hbWUsICR0YXJnZXQpOwoKICAgICAgICAgICAgc3dpdGNoICgkdHlwZSkgewogICAgICAgICAgICAgICAgY2FzZSAncGxhaW4nOgogICAgICAgICAgICAgICAgICAgICR0ZXh0ID0gbmV3IFRleHQoCiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBGaWxlKCR0YXJnZXQpCiAgICAgICAgICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICAgICAgY2FzZSAnanVuaXQnOgogICAgICAgICAgICAgICAgICAgICRqdW5pdCA9IG5ldyBKdW5pdCgKICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEZpbGUoJHRhcmdldCkKICAgICAgICAgICAgICAgICAgICApOwoKICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICBjYXNlICd0ZWFtY2l0eSc6CiAgICAgICAgICAgICAgICAgICAgJHRlYW1DaXR5ID0gbmV3IFRlYW1DaXR5KAogICAgICAgICAgICAgICAgICAgICAgICBuZXcgRmlsZSgkdGFyZ2V0KQogICAgICAgICAgICAgICAgICAgICk7CgogICAgICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgICAgIGNhc2UgJ3Rlc3Rkb3gtaHRtbCc6CiAgICAgICAgICAgICAgICAgICAgJHRlc3REb3hIdG1sID0gbmV3IFRlc3REb3hIdG1sKAogICAgICAgICAgICAgICAgICAgICAgICBuZXcgRmlsZSgkdGFyZ2V0KQogICAgICAgICAgICAgICAgICAgICk7CgogICAgICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgICAgIGNhc2UgJ3Rlc3Rkb3gtdGV4dCc6CiAgICAgICAgICAgICAgICAgICAgJHRlc3REb3hUZXh0ID0gbmV3IFRlc3REb3hUZXh0KAogICAgICAgICAgICAgICAgICAgICAgICBuZXcgRmlsZSgkdGFyZ2V0KQogICAgICAgICAgICAgICAgICAgICk7CgogICAgICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgICAgIGNhc2UgJ3Rlc3Rkb3gteG1sJzoKICAgICAgICAgICAgICAgICAgICAkdGVzdERveFhtbCA9IG5ldyBUZXN0RG94WG1sKAogICAgICAgICAgICAgICAgICAgICAgICBuZXcgRmlsZSgkdGFyZ2V0KQogICAgICAgICAgICAgICAgICAgICk7CgogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gbmV3IExvZ2dpbmcoCiAgICAgICAgICAgICRqdW5pdCwKICAgICAgICAgICAgJHRleHQsCiAgICAgICAgICAgICR0ZWFtQ2l0eSwKICAgICAgICAgICAgJHRlc3REb3hIdG1sLAogICAgICAgICAgICAkdGVzdERveFRleHQsCiAgICAgICAgICAgICR0ZXN0RG94WG1sCiAgICAgICAgKTsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIGV4dGVuc2lvbnMoc3RyaW5nICRmaWxlbmFtZSwgRE9NWFBhdGggJHhwYXRoKTogRXh0ZW5zaW9uQ29sbGVjdGlvbgogICAgewogICAgICAgICRleHRlbnNpb25zID0gW107CgogICAgICAgIGZvcmVhY2ggKCR4cGF0aC0+cXVlcnkoJ2V4dGVuc2lvbnMvZXh0ZW5zaW9uJykgYXMgJGV4dGVuc2lvbikgewogICAgICAgICAgICBhc3NlcnQoJGV4dGVuc2lvbiBpbnN0YW5jZW9mIERPTUVsZW1lbnQpOwoKICAgICAgICAgICAgJGV4dGVuc2lvbnNbXSA9ICR0aGlzLT5nZXRFbGVtZW50Q29uZmlndXJhdGlvblBhcmFtZXRlcnMoJGZpbGVuYW1lLCAkZXh0ZW5zaW9uKTsKICAgICAgICB9CgogICAgICAgIHJldHVybiBFeHRlbnNpb25Db2xsZWN0aW9uOjpmcm9tQXJyYXkoJGV4dGVuc2lvbnMpOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0RWxlbWVudENvbmZpZ3VyYXRpb25QYXJhbWV0ZXJzKHN0cmluZyAkZmlsZW5hbWUsIERPTUVsZW1lbnQgJGVsZW1lbnQpOiBFeHRlbnNpb24KICAgIHsKICAgICAgICAvKiogQHBzYWxtLXZhciBjbGFzcy1zdHJpbmcgJGNsYXNzICovCiAgICAgICAgJGNsYXNzICAgICA9IChzdHJpbmcpICRlbGVtZW50LT5nZXRBdHRyaWJ1dGUoJ2NsYXNzJyk7CiAgICAgICAgJGZpbGUgICAgICA9ICcnOwogICAgICAgICRhcmd1bWVudHMgPSAkdGhpcy0+Z2V0Q29uZmlndXJhdGlvbkFyZ3VtZW50cygkZmlsZW5hbWUsICRlbGVtZW50LT5jaGlsZE5vZGVzKTsKCiAgICAgICAgaWYgKCRlbGVtZW50LT5nZXRBdHRyaWJ1dGUoJ2ZpbGUnKSkgewogICAgICAgICAgICAkZmlsZSA9ICR0aGlzLT50b0Fic29sdXRlUGF0aCgKICAgICAgICAgICAgICAgICRmaWxlbmFtZSwKICAgICAgICAgICAgICAgIChzdHJpbmcpICRlbGVtZW50LT5nZXRBdHRyaWJ1dGUoJ2ZpbGUnKSwKICAgICAgICAgICAgICAgIHRydWUKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgIHJldHVybiBuZXcgRXh0ZW5zaW9uKCRjbGFzcywgJGZpbGUsICRhcmd1bWVudHMpOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gdG9BYnNvbHV0ZVBhdGgoc3RyaW5nICRmaWxlbmFtZSwgc3RyaW5nICRwYXRoLCBib29sICR1c2VJbmNsdWRlUGF0aCA9IGZhbHNlKTogc3RyaW5nCiAgICB7CiAgICAgICAgJHBhdGggPSB0cmltKCRwYXRoKTsKCiAgICAgICAgaWYgKHN0cnBvcygkcGF0aCwgJy8nKSA9PT0gMCkgewogICAgICAgICAgICByZXR1cm4gJHBhdGg7CiAgICAgICAgfQoKICAgICAgICAvLyBNYXRjaGVzIHRoZSBmb2xsb3dpbmcgb24gV2luZG93czoKICAgICAgICAvLyAgLSBcXE5ldHdvcmtDb21wdXRlclxQYXRoCiAgICAgICAgLy8gIC0gXFwuXEQ6CiAgICAgICAgLy8gIC0gXFwuXGM6CiAgICAgICAgLy8gIC0gQzpcV2luZG93cwogICAgICAgIC8vICAtIEM6XHdpbmRvd3MKICAgICAgICAvLyAgLSBDOi93aW5kb3dzCiAgICAgICAgLy8gIC0gYzovd2luZG93cwogICAgICAgIGlmIChkZWZpbmVkKCdQSFBfV0lORE9XU19WRVJTSU9OX0JVSUxEJykgJiYKICAgICAgICAgICAgKCRwYXRoWzBdID09PSAnXFwnIHx8IChzdHJsZW4oJHBhdGgpID49IDMgJiYgcHJlZ19tYXRjaCgnI15bQS1aXVw6Wy9cXFxdI2knLCBzdWJzdHIoJHBhdGgsIDAsIDMpKSkpKSB7CiAgICAgICAgICAgIHJldHVybiAkcGF0aDsKICAgICAgICB9CgogICAgICAgIGlmIChzdHJwb3MoJHBhdGgsICc6Ly8nKSAhPT0gZmFsc2UpIHsKICAgICAgICAgICAgcmV0dXJuICRwYXRoOwogICAgICAgIH0KCiAgICAgICAgJGZpbGUgPSBkaXJuYW1lKCRmaWxlbmFtZSkgLiBESVJFQ1RPUllfU0VQQVJBVE9SIC4gJHBhdGg7CgogICAgICAgIGlmICgkdXNlSW5jbHVkZVBhdGggJiYgIWlzX2ZpbGUoJGZpbGUpKSB7CiAgICAgICAgICAgICRpbmNsdWRlUGF0aEZpbGUgPSBzdHJlYW1fcmVzb2x2ZV9pbmNsdWRlX3BhdGgoJHBhdGgpOwoKICAgICAgICAgICAgaWYgKCRpbmNsdWRlUGF0aEZpbGUpIHsKICAgICAgICAgICAgICAgICRmaWxlID0gJGluY2x1ZGVQYXRoRmlsZTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmV0dXJuICRmaWxlOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0Q29uZmlndXJhdGlvbkFyZ3VtZW50cyhzdHJpbmcgJGZpbGVuYW1lLCBET01Ob2RlTGlzdCAkbm9kZXMpOiBhcnJheQogICAgewogICAgICAgICRhcmd1bWVudHMgPSBbXTsKCiAgICAgICAgaWYgKCRub2Rlcy0+bGVuZ3RoID09PSAwKSB7CiAgICAgICAgICAgIHJldHVybiAkYXJndW1lbnRzOwogICAgICAgIH0KCiAgICAgICAgZm9yZWFjaCAoJG5vZGVzIGFzICRub2RlKSB7CiAgICAgICAgICAgIGlmICghJG5vZGUgaW5zdGFuY2VvZiBET01FbGVtZW50KSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKCRub2RlLT50YWdOYW1lICE9PSAnYXJndW1lbnRzJykgewogICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZvcmVhY2ggKCRub2RlLT5jaGlsZE5vZGVzIGFzICRhcmd1bWVudCkgewogICAgICAgICAgICAgICAgaWYgKCEkYXJndW1lbnQgaW5zdGFuY2VvZiBET01FbGVtZW50KSB7CiAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKCRhcmd1bWVudC0+dGFnTmFtZSA9PT0gJ2ZpbGUnIHx8ICRhcmd1bWVudC0+dGFnTmFtZSA9PT0gJ2RpcmVjdG9yeScpIHsKICAgICAgICAgICAgICAgICAgICAkYXJndW1lbnRzW10gPSAkdGhpcy0+dG9BYnNvbHV0ZVBhdGgoJGZpbGVuYW1lLCAoc3RyaW5nKSAkYXJndW1lbnQtPnRleHRDb250ZW50KTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJGFyZ3VtZW50c1tdID0gWG1sOjp4bWxUb1ZhcmlhYmxlKCRhcmd1bWVudCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHJldHVybiAkYXJndW1lbnRzOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gY29kZUNvdmVyYWdlKHN0cmluZyAkZmlsZW5hbWUsIERPTVhQYXRoICR4cGF0aCwgRE9NRG9jdW1lbnQgJGRvY3VtZW50KTogQ29kZUNvdmVyYWdlCiAgICB7CiAgICAgICAgaWYgKCR4cGF0aC0+cXVlcnkoJ2ZpbHRlci93aGl0ZWxpc3QnKS0+bGVuZ3RoICE9PSAwKSB7CiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+bGVnYWN5Q29kZUNvdmVyYWdlKCRmaWxlbmFtZSwgJHhwYXRoLCAkZG9jdW1lbnQpOwogICAgICAgIH0KCiAgICAgICAgJGNhY2hlRGlyZWN0b3J5ICAgICAgICAgICAgPSBudWxsOwogICAgICAgICRwYXRoQ292ZXJhZ2UgICAgICAgICAgICAgID0gZmFsc2U7CiAgICAgICAgJGluY2x1ZGVVbmNvdmVyZWRGaWxlcyAgICAgPSB0cnVlOwogICAgICAgICRwcm9jZXNzVW5jb3ZlcmVkRmlsZXMgICAgID0gZmFsc2U7CiAgICAgICAgJGlnbm9yZURlcHJlY2F0ZWRDb2RlVW5pdHMgPSBmYWxzZTsKICAgICAgICAkZGlzYWJsZUNvZGVDb3ZlcmFnZUlnbm9yZSA9IGZhbHNlOwoKICAgICAgICAkZWxlbWVudCA9ICR0aGlzLT5lbGVtZW50KCR4cGF0aCwgJ2NvdmVyYWdlJyk7CgogICAgICAgIGlmICgkZWxlbWVudCkgewogICAgICAgICAgICAkY2FjaGVEaXJlY3RvcnkgPSAkdGhpcy0+Z2V0U3RyaW5nQXR0cmlidXRlKCRlbGVtZW50LCAnY2FjaGVEaXJlY3RvcnknKTsKCiAgICAgICAgICAgIGlmICgkY2FjaGVEaXJlY3RvcnkgIT09IG51bGwpIHsKICAgICAgICAgICAgICAgICRjYWNoZURpcmVjdG9yeSA9IG5ldyBEaXJlY3RvcnkoCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPnRvQWJzb2x1dGVQYXRoKCRmaWxlbmFtZSwgJGNhY2hlRGlyZWN0b3J5KQogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJHBhdGhDb3ZlcmFnZSA9ICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKAogICAgICAgICAgICAgICAgJGVsZW1lbnQsCiAgICAgICAgICAgICAgICAncGF0aENvdmVyYWdlJywKICAgICAgICAgICAgICAgIGZhbHNlCiAgICAgICAgICAgICk7CgogICAgICAgICAgICAkaW5jbHVkZVVuY292ZXJlZEZpbGVzID0gJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoCiAgICAgICAgICAgICAgICAkZWxlbWVudCwKICAgICAgICAgICAgICAgICdpbmNsdWRlVW5jb3ZlcmVkRmlsZXMnLAogICAgICAgICAgICAgICAgdHJ1ZQogICAgICAgICAgICApOwoKICAgICAgICAgICAgJHByb2Nlc3NVbmNvdmVyZWRGaWxlcyA9ICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKAogICAgICAgICAgICAgICAgJGVsZW1lbnQsCiAgICAgICAgICAgICAgICAncHJvY2Vzc1VuY292ZXJlZEZpbGVzJywKICAgICAgICAgICAgICAgIGZhbHNlCiAgICAgICAgICAgICk7CgogICAgICAgICAgICAkaWdub3JlRGVwcmVjYXRlZENvZGVVbml0cyA9ICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKAogICAgICAgICAgICAgICAgJGVsZW1lbnQsCiAgICAgICAgICAgICAgICAnaWdub3JlRGVwcmVjYXRlZENvZGVVbml0cycsCiAgICAgICAgICAgICAgICBmYWxzZQogICAgICAgICAgICApOwoKICAgICAgICAgICAgJGRpc2FibGVDb2RlQ292ZXJhZ2VJZ25vcmUgPSAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgKICAgICAgICAgICAgICAgICRlbGVtZW50LAogICAgICAgICAgICAgICAgJ2Rpc2FibGVDb2RlQ292ZXJhZ2VJZ25vcmUnLAogICAgICAgICAgICAgICAgZmFsc2UKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICRjbG92ZXIgID0gbnVsbDsKICAgICAgICAkZWxlbWVudCA9ICR0aGlzLT5lbGVtZW50KCR4cGF0aCwgJ2NvdmVyYWdlL3JlcG9ydC9jbG92ZXInKTsKCiAgICAgICAgaWYgKCRlbGVtZW50KSB7CiAgICAgICAgICAgICRjbG92ZXIgPSBuZXcgQ2xvdmVyKAogICAgICAgICAgICAgICAgbmV3IEZpbGUoCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPnRvQWJzb2x1dGVQYXRoKAogICAgICAgICAgICAgICAgICAgICAgICAkZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmcpICR0aGlzLT5nZXRTdHJpbmdBdHRyaWJ1dGUoJGVsZW1lbnQsICdvdXRwdXRGaWxlJykKICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICAkY29iZXJ0dXJhID0gbnVsbDsKICAgICAgICAkZWxlbWVudCAgID0gJHRoaXMtPmVsZW1lbnQoJHhwYXRoLCAnY292ZXJhZ2UvcmVwb3J0L2NvYmVydHVyYScpOwoKICAgICAgICBpZiAoJGVsZW1lbnQpIHsKICAgICAgICAgICAgJGNvYmVydHVyYSA9IG5ldyBDb2JlcnR1cmEoCiAgICAgICAgICAgICAgICBuZXcgRmlsZSgKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+dG9BYnNvbHV0ZVBhdGgoCiAgICAgICAgICAgICAgICAgICAgICAgICRmaWxlbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgKHN0cmluZykgJHRoaXMtPmdldFN0cmluZ0F0dHJpYnV0ZSgkZWxlbWVudCwgJ291dHB1dEZpbGUnKQogICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICRjcmFwNGogID0gbnVsbDsKICAgICAgICAkZWxlbWVudCA9ICR0aGlzLT5lbGVtZW50KCR4cGF0aCwgJ2NvdmVyYWdlL3JlcG9ydC9jcmFwNGonKTsKCiAgICAgICAgaWYgKCRlbGVtZW50KSB7CiAgICAgICAgICAgICRjcmFwNGogPSBuZXcgQ3JhcDRqKAogICAgICAgICAgICAgICAgbmV3IEZpbGUoCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPnRvQWJzb2x1dGVQYXRoKAogICAgICAgICAgICAgICAgICAgICAgICAkZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmcpICR0aGlzLT5nZXRTdHJpbmdBdHRyaWJ1dGUoJGVsZW1lbnQsICdvdXRwdXRGaWxlJykKICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICApLAogICAgICAgICAgICAgICAgJHRoaXMtPmdldEludGVnZXJBdHRyaWJ1dGUoJGVsZW1lbnQsICd0aHJlc2hvbGQnLCAzMCkKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICRodG1sICAgID0gbnVsbDsKICAgICAgICAkZWxlbWVudCA9ICR0aGlzLT5lbGVtZW50KCR4cGF0aCwgJ2NvdmVyYWdlL3JlcG9ydC9odG1sJyk7CgogICAgICAgIGlmICgkZWxlbWVudCkgewogICAgICAgICAgICAkaHRtbCA9IG5ldyBDb2RlQ292ZXJhZ2VIdG1sKAogICAgICAgICAgICAgICAgbmV3IERpcmVjdG9yeSgKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+dG9BYnNvbHV0ZVBhdGgoCiAgICAgICAgICAgICAgICAgICAgICAgICRmaWxlbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgKHN0cmluZykgJHRoaXMtPmdldFN0cmluZ0F0dHJpYnV0ZSgkZWxlbWVudCwgJ291dHB1dERpcmVjdG9yeScpCiAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKSwKICAgICAgICAgICAgICAgICR0aGlzLT5nZXRJbnRlZ2VyQXR0cmlidXRlKCRlbGVtZW50LCAnbG93VXBwZXJCb3VuZCcsIDUwKSwKICAgICAgICAgICAgICAgICR0aGlzLT5nZXRJbnRlZ2VyQXR0cmlidXRlKCRlbGVtZW50LCAnaGlnaExvd2VyQm91bmQnLCA5MCkKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICRwaHAgICAgID0gbnVsbDsKICAgICAgICAkZWxlbWVudCA9ICR0aGlzLT5lbGVtZW50KCR4cGF0aCwgJ2NvdmVyYWdlL3JlcG9ydC9waHAnKTsKCiAgICAgICAgaWYgKCRlbGVtZW50KSB7CiAgICAgICAgICAgICRwaHAgPSBuZXcgQ29kZUNvdmVyYWdlUGhwKAogICAgICAgICAgICAgICAgbmV3IEZpbGUoCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPnRvQWJzb2x1dGVQYXRoKAogICAgICAgICAgICAgICAgICAgICAgICAkZmlsZW5hbWUsCiAgICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmcpICR0aGlzLT5nZXRTdHJpbmdBdHRyaWJ1dGUoJGVsZW1lbnQsICdvdXRwdXRGaWxlJykKICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICAkdGV4dCAgICA9IG51bGw7CiAgICAgICAgJGVsZW1lbnQgPSAkdGhpcy0+ZWxlbWVudCgkeHBhdGgsICdjb3ZlcmFnZS9yZXBvcnQvdGV4dCcpOwoKICAgICAgICBpZiAoJGVsZW1lbnQpIHsKICAgICAgICAgICAgJHRleHQgPSBuZXcgQ29kZUNvdmVyYWdlVGV4dCgKICAgICAgICAgICAgICAgIG5ldyBGaWxlKAogICAgICAgICAgICAgICAgICAgICR0aGlzLT50b0Fic29sdXRlUGF0aCgKICAgICAgICAgICAgICAgICAgICAgICAgJGZpbGVuYW1lLAogICAgICAgICAgICAgICAgICAgICAgICAoc3RyaW5nKSAkdGhpcy0+Z2V0U3RyaW5nQXR0cmlidXRlKCRlbGVtZW50LCAnb3V0cHV0RmlsZScpCiAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKSwKICAgICAgICAgICAgICAgICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRlbGVtZW50LCAnc2hvd1VuY292ZXJlZEZpbGVzJywgZmFsc2UpLAogICAgICAgICAgICAgICAgJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoJGVsZW1lbnQsICdzaG93T25seVN1bW1hcnknLCBmYWxzZSkKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICR4bWwgICAgID0gbnVsbDsKICAgICAgICAkZWxlbWVudCA9ICR0aGlzLT5lbGVtZW50KCR4cGF0aCwgJ2NvdmVyYWdlL3JlcG9ydC94bWwnKTsKCiAgICAgICAgaWYgKCRlbGVtZW50KSB7CiAgICAgICAgICAgICR4bWwgPSBuZXcgQ29kZUNvdmVyYWdlWG1sKAogICAgICAgICAgICAgICAgbmV3IERpcmVjdG9yeSgKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+dG9BYnNvbHV0ZVBhdGgoCiAgICAgICAgICAgICAgICAgICAgICAgICRmaWxlbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgKHN0cmluZykgJHRoaXMtPmdldFN0cmluZ0F0dHJpYnV0ZSgkZWxlbWVudCwgJ291dHB1dERpcmVjdG9yeScpCiAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgKQogICAgICAgICAgICApOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIG5ldyBDb2RlQ292ZXJhZ2UoCiAgICAgICAgICAgICRjYWNoZURpcmVjdG9yeSwKICAgICAgICAgICAgJHRoaXMtPnJlYWRGaWx0ZXJEaXJlY3RvcmllcygkZmlsZW5hbWUsICR4cGF0aCwgJ2NvdmVyYWdlL2luY2x1ZGUvZGlyZWN0b3J5JyksCiAgICAgICAgICAgICR0aGlzLT5yZWFkRmlsdGVyRmlsZXMoJGZpbGVuYW1lLCAkeHBhdGgsICdjb3ZlcmFnZS9pbmNsdWRlL2ZpbGUnKSwKICAgICAgICAgICAgJHRoaXMtPnJlYWRGaWx0ZXJEaXJlY3RvcmllcygkZmlsZW5hbWUsICR4cGF0aCwgJ2NvdmVyYWdlL2V4Y2x1ZGUvZGlyZWN0b3J5JyksCiAgICAgICAgICAgICR0aGlzLT5yZWFkRmlsdGVyRmlsZXMoJGZpbGVuYW1lLCAkeHBhdGgsICdjb3ZlcmFnZS9leGNsdWRlL2ZpbGUnKSwKICAgICAgICAgICAgJHBhdGhDb3ZlcmFnZSwKICAgICAgICAgICAgJGluY2x1ZGVVbmNvdmVyZWRGaWxlcywKICAgICAgICAgICAgJHByb2Nlc3NVbmNvdmVyZWRGaWxlcywKICAgICAgICAgICAgJGlnbm9yZURlcHJlY2F0ZWRDb2RlVW5pdHMsCiAgICAgICAgICAgICRkaXNhYmxlQ29kZUNvdmVyYWdlSWdub3JlLAogICAgICAgICAgICAkY2xvdmVyLAogICAgICAgICAgICAkY29iZXJ0dXJhLAogICAgICAgICAgICAkY3JhcDRqLAogICAgICAgICAgICAkaHRtbCwKICAgICAgICAgICAgJHBocCwKICAgICAgICAgICAgJHRleHQsCiAgICAgICAgICAgICR4bWwKICAgICAgICApOwogICAgfQoKICAgIC8qKgogICAgICogQGRlcHJlY2F0ZWQKICAgICAqLwogICAgcHJpdmF0ZSBmdW5jdGlvbiBsZWdhY3lDb2RlQ292ZXJhZ2Uoc3RyaW5nICRmaWxlbmFtZSwgRE9NWFBhdGggJHhwYXRoLCBET01Eb2N1bWVudCAkZG9jdW1lbnQpOiBDb2RlQ292ZXJhZ2UKICAgIHsKICAgICAgICAkaWdub3JlRGVwcmVjYXRlZENvZGVVbml0cyA9ICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKAogICAgICAgICAgICAkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwKICAgICAgICAgICAgJ2lnbm9yZURlcHJlY2F0ZWRDb2RlVW5pdHNGcm9tQ29kZUNvdmVyYWdlJywKICAgICAgICAgICAgZmFsc2UKICAgICAgICApOwoKICAgICAgICAkZGlzYWJsZUNvZGVDb3ZlcmFnZUlnbm9yZSA9ICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKAogICAgICAgICAgICAkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwKICAgICAgICAgICAgJ2Rpc2FibGVDb2RlQ292ZXJhZ2VJZ25vcmUnLAogICAgICAgICAgICBmYWxzZQogICAgICAgICk7CgogICAgICAgICRpbmNsdWRlVW5jb3ZlcmVkRmlsZXMgPSB0cnVlOwogICAgICAgICRwcm9jZXNzVW5jb3ZlcmVkRmlsZXMgPSBmYWxzZTsKCiAgICAgICAgJGVsZW1lbnQgPSAkdGhpcy0+ZWxlbWVudCgkeHBhdGgsICdmaWx0ZXIvd2hpdGVsaXN0Jyk7CgogICAgICAgIGlmICgkZWxlbWVudCkgewogICAgICAgICAgICBpZiAoJGVsZW1lbnQtPmhhc0F0dHJpYnV0ZSgnYWRkVW5jb3ZlcmVkRmlsZXNGcm9tV2hpdGVsaXN0JykpIHsKICAgICAgICAgICAgICAgICRpbmNsdWRlVW5jb3ZlcmVkRmlsZXMgPSAoYm9vbCkgJHRoaXMtPmdldEJvb2xlYW4oCiAgICAgICAgICAgICAgICAgICAgKHN0cmluZykgJGVsZW1lbnQtPmdldEF0dHJpYnV0ZSgnYWRkVW5jb3ZlcmVkRmlsZXNGcm9tV2hpdGVsaXN0JyksCiAgICAgICAgICAgICAgICAgICAgdHJ1ZQogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKCRlbGVtZW50LT5oYXNBdHRyaWJ1dGUoJ3Byb2Nlc3NVbmNvdmVyZWRGaWxlc0Zyb21XaGl0ZWxpc3QnKSkgewogICAgICAgICAgICAgICAgJHByb2Nlc3NVbmNvdmVyZWRGaWxlcyA9IChib29sKSAkdGhpcy0+Z2V0Qm9vbGVhbigKICAgICAgICAgICAgICAgICAgICAoc3RyaW5nKSAkZWxlbWVudC0+Z2V0QXR0cmlidXRlKCdwcm9jZXNzVW5jb3ZlcmVkRmlsZXNGcm9tV2hpdGVsaXN0JyksCiAgICAgICAgICAgICAgICAgICAgZmFsc2UKICAgICAgICAgICAgICAgICk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgICRjbG92ZXIgICAgPSBudWxsOwogICAgICAgICRjb2JlcnR1cmEgPSBudWxsOwogICAgICAgICRjcmFwNGogICAgPSBudWxsOwogICAgICAgICRodG1sICAgICAgPSBudWxsOwogICAgICAgICRwaHAgICAgICAgPSBudWxsOwogICAgICAgICR0ZXh0ICAgICAgPSBudWxsOwogICAgICAgICR4bWwgICAgICAgPSBudWxsOwoKICAgICAgICBmb3JlYWNoICgkeHBhdGgtPnF1ZXJ5KCdsb2dnaW5nL2xvZycpIGFzICRsb2cpIHsKICAgICAgICAgICAgYXNzZXJ0KCRsb2cgaW5zdGFuY2VvZiBET01FbGVtZW50KTsKCiAgICAgICAgICAgICR0eXBlICAgPSAoc3RyaW5nKSAkbG9nLT5nZXRBdHRyaWJ1dGUoJ3R5cGUnKTsKICAgICAgICAgICAgJHRhcmdldCA9IChzdHJpbmcpICRsb2ctPmdldEF0dHJpYnV0ZSgndGFyZ2V0Jyk7CgogICAgICAgICAgICBpZiAoISR0YXJnZXQpIHsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CgogICAgICAgICAgICAkdGFyZ2V0ID0gJHRoaXMtPnRvQWJzb2x1dGVQYXRoKCRmaWxlbmFtZSwgJHRhcmdldCk7CgogICAgICAgICAgICBzd2l0Y2ggKCR0eXBlKSB7CiAgICAgICAgICAgICAgICBjYXNlICdjb3ZlcmFnZS1jbG92ZXInOgogICAgICAgICAgICAgICAgICAgICRjbG92ZXIgPSBuZXcgQ2xvdmVyKAogICAgICAgICAgICAgICAgICAgICAgICBuZXcgRmlsZSgkdGFyZ2V0KQogICAgICAgICAgICAgICAgICAgICk7CgogICAgICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgICAgIGNhc2UgJ2NvdmVyYWdlLWNvYmVydHVyYSc6CiAgICAgICAgICAgICAgICAgICAgJGNvYmVydHVyYSA9IG5ldyBDb2JlcnR1cmEoCiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBGaWxlKCR0YXJnZXQpCiAgICAgICAgICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICAgICAgY2FzZSAnY292ZXJhZ2UtY3JhcDRqJzoKICAgICAgICAgICAgICAgICAgICAkY3JhcDRqID0gbmV3IENyYXA0aigKICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEZpbGUoJHRhcmdldCksCiAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5nZXRJbnRlZ2VyQXR0cmlidXRlKCRsb2csICd0aHJlc2hvbGQnLCAzMCkKICAgICAgICAgICAgICAgICAgICApOwoKICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICBjYXNlICdjb3ZlcmFnZS1odG1sJzoKICAgICAgICAgICAgICAgICAgICAkaHRtbCA9IG5ldyBDb2RlQ292ZXJhZ2VIdG1sKAogICAgICAgICAgICAgICAgICAgICAgICBuZXcgRGlyZWN0b3J5KCR0YXJnZXQpLAogICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+Z2V0SW50ZWdlckF0dHJpYnV0ZSgkbG9nLCAnbG93VXBwZXJCb3VuZCcsIDUwKSwKICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmdldEludGVnZXJBdHRyaWJ1dGUoJGxvZywgJ2hpZ2hMb3dlckJvdW5kJywgOTApCiAgICAgICAgICAgICAgICAgICAgKTsKCiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICAgICAgY2FzZSAnY292ZXJhZ2UtcGhwJzoKICAgICAgICAgICAgICAgICAgICAkcGhwID0gbmV3IENvZGVDb3ZlcmFnZVBocCgKICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEZpbGUoJHRhcmdldCkKICAgICAgICAgICAgICAgICAgICApOwoKICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICBjYXNlICdjb3ZlcmFnZS10ZXh0JzoKICAgICAgICAgICAgICAgICAgICAkdGV4dCA9IG5ldyBDb2RlQ292ZXJhZ2VUZXh0KAogICAgICAgICAgICAgICAgICAgICAgICBuZXcgRmlsZSgkdGFyZ2V0KSwKICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoJGxvZywgJ3Nob3dVbmNvdmVyZWRGaWxlcycsIGZhbHNlKSwKICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoJGxvZywgJ3Nob3dPbmx5U3VtbWFyeScsIGZhbHNlKQogICAgICAgICAgICAgICAgICAgICk7CgogICAgICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgICAgIGNhc2UgJ2NvdmVyYWdlLXhtbCc6CiAgICAgICAgICAgICAgICAgICAgJHhtbCA9IG5ldyBDb2RlQ292ZXJhZ2VYbWwoCiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBEaXJlY3RvcnkoJHRhcmdldCkKICAgICAgICAgICAgICAgICAgICApOwoKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIG5ldyBDb2RlQ292ZXJhZ2UoCiAgICAgICAgICAgIG51bGwsCiAgICAgICAgICAgICR0aGlzLT5yZWFkRmlsdGVyRGlyZWN0b3JpZXMoJGZpbGVuYW1lLCAkeHBhdGgsICdmaWx0ZXIvd2hpdGVsaXN0L2RpcmVjdG9yeScpLAogICAgICAgICAgICAkdGhpcy0+cmVhZEZpbHRlckZpbGVzKCRmaWxlbmFtZSwgJHhwYXRoLCAnZmlsdGVyL3doaXRlbGlzdC9maWxlJyksCiAgICAgICAgICAgICR0aGlzLT5yZWFkRmlsdGVyRGlyZWN0b3JpZXMoJGZpbGVuYW1lLCAkeHBhdGgsICdmaWx0ZXIvd2hpdGVsaXN0L2V4Y2x1ZGUvZGlyZWN0b3J5JyksCiAgICAgICAgICAgICR0aGlzLT5yZWFkRmlsdGVyRmlsZXMoJGZpbGVuYW1lLCAkeHBhdGgsICdmaWx0ZXIvd2hpdGVsaXN0L2V4Y2x1ZGUvZmlsZScpLAogICAgICAgICAgICBmYWxzZSwKICAgICAgICAgICAgJGluY2x1ZGVVbmNvdmVyZWRGaWxlcywKICAgICAgICAgICAgJHByb2Nlc3NVbmNvdmVyZWRGaWxlcywKICAgICAgICAgICAgJGlnbm9yZURlcHJlY2F0ZWRDb2RlVW5pdHMsCiAgICAgICAgICAgICRkaXNhYmxlQ29kZUNvdmVyYWdlSWdub3JlLAogICAgICAgICAgICAkY2xvdmVyLAogICAgICAgICAgICAkY29iZXJ0dXJhLAogICAgICAgICAgICAkY3JhcDRqLAogICAgICAgICAgICAkaHRtbCwKICAgICAgICAgICAgJHBocCwKICAgICAgICAgICAgJHRleHQsCiAgICAgICAgICAgICR4bWwKICAgICAgICApOwogICAgfQoKICAgIC8qKgogICAgICogSWYgJHZhbHVlIGlzICdmYWxzZScgb3IgJ3RydWUnLCB0aGlzIHJldHVybnMgdGhlIHZhbHVlIHRoYXQgJHZhbHVlIHJlcHJlc2VudHMuCiAgICAgKiBPdGhlcndpc2UsIHJldHVybnMgJGRlZmF1bHQsIHdoaWNoIG1heSBiZSBhIHN0cmluZyBpbiByYXJlIGNhc2VzLgogICAgICoKICAgICAqIEBzZWUgXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25UZXN0Ojp0ZXN0UEhQQ29uZmlndXJhdGlvbklzUmVhZENvcnJlY3RseQogICAgICoKICAgICAqIEBwYXJhbSBib29sfHN0cmluZyAkZGVmYXVsdAogICAgICoKICAgICAqIEByZXR1cm4gYm9vbHxzdHJpbmcKICAgICAqLwogICAgcHJpdmF0ZSBmdW5jdGlvbiBnZXRCb29sZWFuKHN0cmluZyAkdmFsdWUsICRkZWZhdWx0KQogICAgewogICAgICAgIGlmIChzdHJ0b2xvd2VyKCR2YWx1ZSkgPT09ICdmYWxzZScpIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KCiAgICAgICAgaWYgKHN0cnRvbG93ZXIoJHZhbHVlKSA9PT0gJ3RydWUnKSB7CiAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuICRkZWZhdWx0OwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gcmVhZEZpbHRlckRpcmVjdG9yaWVzKHN0cmluZyAkZmlsZW5hbWUsIERPTVhQYXRoICR4cGF0aCwgc3RyaW5nICRxdWVyeSk6IEZpbHRlckRpcmVjdG9yeUNvbGxlY3Rpb24KICAgIHsKICAgICAgICAkZGlyZWN0b3JpZXMgPSBbXTsKCiAgICAgICAgZm9yZWFjaCAoJHhwYXRoLT5xdWVyeSgkcXVlcnkpIGFzICRkaXJlY3RvcnlOb2RlKSB7CiAgICAgICAgICAgIGFzc2VydCgkZGlyZWN0b3J5Tm9kZSBpbnN0YW5jZW9mIERPTUVsZW1lbnQpOwoKICAgICAgICAgICAgJGRpcmVjdG9yeVBhdGggPSAoc3RyaW5nKSAkZGlyZWN0b3J5Tm9kZS0+dGV4dENvbnRlbnQ7CgogICAgICAgICAgICBpZiAoISRkaXJlY3RvcnlQYXRoKSB7CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJGRpcmVjdG9yaWVzW10gPSBuZXcgRmlsdGVyRGlyZWN0b3J5KAogICAgICAgICAgICAgICAgJHRoaXMtPnRvQWJzb2x1dGVQYXRoKCRmaWxlbmFtZSwgJGRpcmVjdG9yeVBhdGgpLAogICAgICAgICAgICAgICAgJGRpcmVjdG9yeU5vZGUtPmhhc0F0dHJpYnV0ZSgncHJlZml4JykgPyAoc3RyaW5nKSAkZGlyZWN0b3J5Tm9kZS0+Z2V0QXR0cmlidXRlKCdwcmVmaXgnKSA6ICcnLAogICAgICAgICAgICAgICAgJGRpcmVjdG9yeU5vZGUtPmhhc0F0dHJpYnV0ZSgnc3VmZml4JykgPyAoc3RyaW5nKSAkZGlyZWN0b3J5Tm9kZS0+Z2V0QXR0cmlidXRlKCdzdWZmaXgnKSA6ICcucGhwJywKICAgICAgICAgICAgICAgICRkaXJlY3RvcnlOb2RlLT5oYXNBdHRyaWJ1dGUoJ2dyb3VwJykgPyAoc3RyaW5nKSAkZGlyZWN0b3J5Tm9kZS0+Z2V0QXR0cmlidXRlKCdncm91cCcpIDogJ0RFRkFVTFQnCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gRmlsdGVyRGlyZWN0b3J5Q29sbGVjdGlvbjo6ZnJvbUFycmF5KCRkaXJlY3Rvcmllcyk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiByZWFkRmlsdGVyRmlsZXMoc3RyaW5nICRmaWxlbmFtZSwgRE9NWFBhdGggJHhwYXRoLCBzdHJpbmcgJHF1ZXJ5KTogRmlsZUNvbGxlY3Rpb24KICAgIHsKICAgICAgICAkZmlsZXMgPSBbXTsKCiAgICAgICAgZm9yZWFjaCAoJHhwYXRoLT5xdWVyeSgkcXVlcnkpIGFzICRmaWxlKSB7CiAgICAgICAgICAgICRmaWxlUGF0aCA9IChzdHJpbmcpICRmaWxlLT50ZXh0Q29udGVudDsKCiAgICAgICAgICAgIGlmICgkZmlsZVBhdGgpIHsKICAgICAgICAgICAgICAgICRmaWxlc1tdID0gbmV3IEZpbGUoJHRoaXMtPnRvQWJzb2x1dGVQYXRoKCRmaWxlbmFtZSwgJGZpbGVQYXRoKSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHJldHVybiBGaWxlQ29sbGVjdGlvbjo6ZnJvbUFycmF5KCRmaWxlcyk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBncm91cHMoRE9NWFBhdGggJHhwYXRoKTogR3JvdXBzCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5wYXJzZUdyb3VwQ29uZmlndXJhdGlvbigkeHBhdGgsICdncm91cHMnKTsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIHRlc3Rkb3hHcm91cHMoRE9NWFBhdGggJHhwYXRoKTogR3JvdXBzCiAgICB7CiAgICAgICAgcmV0dXJuICR0aGlzLT5wYXJzZUdyb3VwQ29uZmlndXJhdGlvbigkeHBhdGgsICd0ZXN0ZG94R3JvdXBzJyk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBwYXJzZUdyb3VwQ29uZmlndXJhdGlvbihET01YUGF0aCAkeHBhdGgsIHN0cmluZyAkcm9vdCk6IEdyb3VwcwogICAgewogICAgICAgICRpbmNsdWRlID0gW107CiAgICAgICAgJGV4Y2x1ZGUgPSBbXTsKCiAgICAgICAgZm9yZWFjaCAoJHhwYXRoLT5xdWVyeSgkcm9vdCAuICcvaW5jbHVkZS9ncm91cCcpIGFzICRncm91cCkgewogICAgICAgICAgICAkaW5jbHVkZVtdID0gbmV3IEdyb3VwKChzdHJpbmcpICRncm91cC0+dGV4dENvbnRlbnQpOwogICAgICAgIH0KCiAgICAgICAgZm9yZWFjaCAoJHhwYXRoLT5xdWVyeSgkcm9vdCAuICcvZXhjbHVkZS9ncm91cCcpIGFzICRncm91cCkgewogICAgICAgICAgICAkZXhjbHVkZVtdID0gbmV3IEdyb3VwKChzdHJpbmcpICRncm91cC0+dGV4dENvbnRlbnQpOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIG5ldyBHcm91cHMoCiAgICAgICAgICAgIEdyb3VwQ29sbGVjdGlvbjo6ZnJvbUFycmF5KCRpbmNsdWRlKSwKICAgICAgICAgICAgR3JvdXBDb2xsZWN0aW9uOjpmcm9tQXJyYXkoJGV4Y2x1ZGUpCiAgICAgICAgKTsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIGxpc3RlbmVycyhzdHJpbmcgJGZpbGVuYW1lLCBET01YUGF0aCAkeHBhdGgpOiBFeHRlbnNpb25Db2xsZWN0aW9uCiAgICB7CiAgICAgICAgJGxpc3RlbmVycyA9IFtdOwoKICAgICAgICBmb3JlYWNoICgkeHBhdGgtPnF1ZXJ5KCdsaXN0ZW5lcnMvbGlzdGVuZXInKSBhcyAkbGlzdGVuZXIpIHsKICAgICAgICAgICAgYXNzZXJ0KCRsaXN0ZW5lciBpbnN0YW5jZW9mIERPTUVsZW1lbnQpOwoKICAgICAgICAgICAgJGxpc3RlbmVyc1tdID0gJHRoaXMtPmdldEVsZW1lbnRDb25maWd1cmF0aW9uUGFyYW1ldGVycygkZmlsZW5hbWUsICRsaXN0ZW5lcik7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gRXh0ZW5zaW9uQ29sbGVjdGlvbjo6ZnJvbUFycmF5KCRsaXN0ZW5lcnMpOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0Qm9vbGVhbkF0dHJpYnV0ZShET01FbGVtZW50ICRlbGVtZW50LCBzdHJpbmcgJGF0dHJpYnV0ZSwgYm9vbCAkZGVmYXVsdCk6IGJvb2wKICAgIHsKICAgICAgICBpZiAoISRlbGVtZW50LT5oYXNBdHRyaWJ1dGUoJGF0dHJpYnV0ZSkpIHsKICAgICAgICAgICAgcmV0dXJuICRkZWZhdWx0OwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIChib29sKSAkdGhpcy0+Z2V0Qm9vbGVhbigKICAgICAgICAgICAgKHN0cmluZykgJGVsZW1lbnQtPmdldEF0dHJpYnV0ZSgkYXR0cmlidXRlKSwKICAgICAgICAgICAgZmFsc2UKICAgICAgICApOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0SW50ZWdlckF0dHJpYnV0ZShET01FbGVtZW50ICRlbGVtZW50LCBzdHJpbmcgJGF0dHJpYnV0ZSwgaW50ICRkZWZhdWx0KTogaW50CiAgICB7CiAgICAgICAgaWYgKCEkZWxlbWVudC0+aGFzQXR0cmlidXRlKCRhdHRyaWJ1dGUpKSB7CiAgICAgICAgICAgIHJldHVybiAkZGVmYXVsdDsKICAgICAgICB9CgogICAgICAgIHJldHVybiAkdGhpcy0+Z2V0SW50ZWdlcigKICAgICAgICAgICAgKHN0cmluZykgJGVsZW1lbnQtPmdldEF0dHJpYnV0ZSgkYXR0cmlidXRlKSwKICAgICAgICAgICAgJGRlZmF1bHQKICAgICAgICApOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0U3RyaW5nQXR0cmlidXRlKERPTUVsZW1lbnQgJGVsZW1lbnQsIHN0cmluZyAkYXR0cmlidXRlKTogP3N0cmluZwogICAgewogICAgICAgIGlmICghJGVsZW1lbnQtPmhhc0F0dHJpYnV0ZSgkYXR0cmlidXRlKSkgewogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CgogICAgICAgIHJldHVybiAoc3RyaW5nKSAkZWxlbWVudC0+Z2V0QXR0cmlidXRlKCRhdHRyaWJ1dGUpOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0SW50ZWdlcihzdHJpbmcgJHZhbHVlLCBpbnQgJGRlZmF1bHQpOiBpbnQKICAgIHsKICAgICAgICBpZiAoaXNfbnVtZXJpYygkdmFsdWUpKSB7CiAgICAgICAgICAgIHJldHVybiAoaW50KSAkdmFsdWU7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gJGRlZmF1bHQ7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBwaHAoc3RyaW5nICRmaWxlbmFtZSwgRE9NWFBhdGggJHhwYXRoKTogUGhwCiAgICB7CiAgICAgICAgJGluY2x1ZGVQYXRocyA9IFtdOwoKICAgICAgICBmb3JlYWNoICgkeHBhdGgtPnF1ZXJ5KCdwaHAvaW5jbHVkZVBhdGgnKSBhcyAkaW5jbHVkZVBhdGgpIHsKICAgICAgICAgICAgJHBhdGggPSAoc3RyaW5nKSAkaW5jbHVkZVBhdGgtPnRleHRDb250ZW50OwoKICAgICAgICAgICAgaWYgKCRwYXRoKSB7CiAgICAgICAgICAgICAgICAkaW5jbHVkZVBhdGhzW10gPSBuZXcgRGlyZWN0b3J5KCR0aGlzLT50b0Fic29sdXRlUGF0aCgkZmlsZW5hbWUsICRwYXRoKSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgICRpbmlTZXR0aW5ncyA9IFtdOwoKICAgICAgICBmb3JlYWNoICgkeHBhdGgtPnF1ZXJ5KCdwaHAvaW5pJykgYXMgJGluaSkgewogICAgICAgICAgICBhc3NlcnQoJGluaSBpbnN0YW5jZW9mIERPTUVsZW1lbnQpOwoKICAgICAgICAgICAgJGluaVNldHRpbmdzW10gPSBuZXcgSW5pU2V0dGluZygKICAgICAgICAgICAgICAgIChzdHJpbmcpICRpbmktPmdldEF0dHJpYnV0ZSgnbmFtZScpLAogICAgICAgICAgICAgICAgKHN0cmluZykgJGluaS0+Z2V0QXR0cmlidXRlKCd2YWx1ZScpCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICAkY29uc3RhbnRzID0gW107CgogICAgICAgIGZvcmVhY2ggKCR4cGF0aC0+cXVlcnkoJ3BocC9jb25zdCcpIGFzICRjb25zdCkgewogICAgICAgICAgICBhc3NlcnQoJGNvbnN0IGluc3RhbmNlb2YgRE9NRWxlbWVudCk7CgogICAgICAgICAgICAkdmFsdWUgPSAoc3RyaW5nKSAkY29uc3QtPmdldEF0dHJpYnV0ZSgndmFsdWUnKTsKCiAgICAgICAgICAgICRjb25zdGFudHNbXSA9IG5ldyBDb25zdGFudCgKICAgICAgICAgICAgICAgIChzdHJpbmcpICRjb25zdC0+Z2V0QXR0cmlidXRlKCduYW1lJyksCiAgICAgICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbigkdmFsdWUsICR2YWx1ZSkKICAgICAgICAgICAgKTsKICAgICAgICB9CgogICAgICAgICR2YXJpYWJsZXMgPSBbCiAgICAgICAgICAgICd2YXInICAgICA9PiBbXSwKICAgICAgICAgICAgJ2VudicgICAgID0+IFtdLAogICAgICAgICAgICAncG9zdCcgICAgPT4gW10sCiAgICAgICAgICAgICdnZXQnICAgICA9PiBbXSwKICAgICAgICAgICAgJ2Nvb2tpZScgID0+IFtdLAogICAgICAgICAgICAnc2VydmVyJyAgPT4gW10sCiAgICAgICAgICAgICdmaWxlcycgICA9PiBbXSwKICAgICAgICAgICAgJ3JlcXVlc3QnID0+IFtdLAogICAgICAgIF07CgogICAgICAgIGZvcmVhY2ggKFsndmFyJywgJ2VudicsICdwb3N0JywgJ2dldCcsICdjb29raWUnLCAnc2VydmVyJywgJ2ZpbGVzJywgJ3JlcXVlc3QnXSBhcyAkYXJyYXkpIHsKICAgICAgICAgICAgZm9yZWFjaCAoJHhwYXRoLT5xdWVyeSgncGhwLycgLiAkYXJyYXkpIGFzICR2YXIpIHsKICAgICAgICAgICAgICAgIGFzc2VydCgkdmFyIGluc3RhbmNlb2YgRE9NRWxlbWVudCk7CgogICAgICAgICAgICAgICAgJG5hbWUgICAgID0gKHN0cmluZykgJHZhci0+Z2V0QXR0cmlidXRlKCduYW1lJyk7CiAgICAgICAgICAgICAgICAkdmFsdWUgICAgPSAoc3RyaW5nKSAkdmFyLT5nZXRBdHRyaWJ1dGUoJ3ZhbHVlJyk7CiAgICAgICAgICAgICAgICAkZm9yY2UgICAgPSBmYWxzZTsKICAgICAgICAgICAgICAgICR2ZXJiYXRpbSA9IGZhbHNlOwoKICAgICAgICAgICAgICAgIGlmICgkdmFyLT5oYXNBdHRyaWJ1dGUoJ2ZvcmNlJykpIHsKICAgICAgICAgICAgICAgICAgICAkZm9yY2UgPSAoYm9vbCkgJHRoaXMtPmdldEJvb2xlYW4oJHZhci0+Z2V0QXR0cmlidXRlKCdmb3JjZScpLCBmYWxzZSk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKCR2YXItPmhhc0F0dHJpYnV0ZSgndmVyYmF0aW0nKSkgewogICAgICAgICAgICAgICAgICAgICR2ZXJiYXRpbSA9ICR0aGlzLT5nZXRCb29sZWFuKCR2YXItPmdldEF0dHJpYnV0ZSgndmVyYmF0aW0nKSwgZmFsc2UpOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmICghJHZlcmJhdGltKSB7CiAgICAgICAgICAgICAgICAgICAgJHZhbHVlID0gJHRoaXMtPmdldEJvb2xlYW4oJHZhbHVlLCAkdmFsdWUpOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICR2YXJpYWJsZXNbJGFycmF5XVtdID0gbmV3IFZhcmlhYmxlKCRuYW1lLCAkdmFsdWUsICRmb3JjZSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHJldHVybiBuZXcgUGhwKAogICAgICAgICAgICBEaXJlY3RvcnlDb2xsZWN0aW9uOjpmcm9tQXJyYXkoJGluY2x1ZGVQYXRocyksCiAgICAgICAgICAgIEluaVNldHRpbmdDb2xsZWN0aW9uOjpmcm9tQXJyYXkoJGluaVNldHRpbmdzKSwKICAgICAgICAgICAgQ29uc3RhbnRDb2xsZWN0aW9uOjpmcm9tQXJyYXkoJGNvbnN0YW50cyksCiAgICAgICAgICAgIFZhcmlhYmxlQ29sbGVjdGlvbjo6ZnJvbUFycmF5KCR2YXJpYWJsZXNbJ3ZhciddKSwKICAgICAgICAgICAgVmFyaWFibGVDb2xsZWN0aW9uOjpmcm9tQXJyYXkoJHZhcmlhYmxlc1snZW52J10pLAogICAgICAgICAgICBWYXJpYWJsZUNvbGxlY3Rpb246OmZyb21BcnJheSgkdmFyaWFibGVzWydwb3N0J10pLAogICAgICAgICAgICBWYXJpYWJsZUNvbGxlY3Rpb246OmZyb21BcnJheSgkdmFyaWFibGVzWydnZXQnXSksCiAgICAgICAgICAgIFZhcmlhYmxlQ29sbGVjdGlvbjo6ZnJvbUFycmF5KCR2YXJpYWJsZXNbJ2Nvb2tpZSddKSwKICAgICAgICAgICAgVmFyaWFibGVDb2xsZWN0aW9uOjpmcm9tQXJyYXkoJHZhcmlhYmxlc1snc2VydmVyJ10pLAogICAgICAgICAgICBWYXJpYWJsZUNvbGxlY3Rpb246OmZyb21BcnJheSgkdmFyaWFibGVzWydmaWxlcyddKSwKICAgICAgICAgICAgVmFyaWFibGVDb2xsZWN0aW9uOjpmcm9tQXJyYXkoJHZhcmlhYmxlc1sncmVxdWVzdCddKSwKICAgICAgICApOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gcGhwdW5pdChzdHJpbmcgJGZpbGVuYW1lLCBET01Eb2N1bWVudCAkZG9jdW1lbnQpOiBQSFBVbml0CiAgICB7CiAgICAgICAgJGV4ZWN1dGlvbk9yZGVyICAgICAgPSBUZXN0U3VpdGVTb3J0ZXI6Ok9SREVSX0RFRkFVTFQ7CiAgICAgICAgJGRlZmVjdHNGaXJzdCAgICAgICAgPSBmYWxzZTsKICAgICAgICAkcmVzb2x2ZURlcGVuZGVuY2llcyA9ICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAncmVzb2x2ZURlcGVuZGVuY2llcycsIHRydWUpOwoKICAgICAgICBpZiAoJGRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQtPmhhc0F0dHJpYnV0ZSgnZXhlY3V0aW9uT3JkZXInKSkgewogICAgICAgICAgICBmb3JlYWNoIChleHBsb2RlKCcsJywgJGRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQtPmdldEF0dHJpYnV0ZSgnZXhlY3V0aW9uT3JkZXInKSkgYXMgJG9yZGVyKSB7CiAgICAgICAgICAgICAgICBzd2l0Y2ggKCRvcmRlcikgewogICAgICAgICAgICAgICAgICAgIGNhc2UgJ2RlZmF1bHQnOgogICAgICAgICAgICAgICAgICAgICAgICAkZXhlY3V0aW9uT3JkZXIgICAgICA9IFRlc3RTdWl0ZVNvcnRlcjo6T1JERVJfREVGQVVMVDsKICAgICAgICAgICAgICAgICAgICAgICAgJGRlZmVjdHNGaXJzdCAgICAgICAgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgJHJlc29sdmVEZXBlbmRlbmNpZXMgPSB0cnVlOwoKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICAgICAgICAgIGNhc2UgJ2RlcGVuZHMnOgogICAgICAgICAgICAgICAgICAgICAgICAkcmVzb2x2ZURlcGVuZGVuY2llcyA9IHRydWU7CgogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICAgICAgY2FzZSAnbm8tZGVwZW5kcyc6CiAgICAgICAgICAgICAgICAgICAgICAgICRyZXNvbHZlRGVwZW5kZW5jaWVzID0gZmFsc2U7CgogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICAgICAgY2FzZSAnZGVmZWN0cyc6CiAgICAgICAgICAgICAgICAgICAgICAgICRkZWZlY3RzRmlyc3QgPSB0cnVlOwoKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICAgICAgICAgIGNhc2UgJ2R1cmF0aW9uJzoKICAgICAgICAgICAgICAgICAgICAgICAgJGV4ZWN1dGlvbk9yZGVyID0gVGVzdFN1aXRlU29ydGVyOjpPUkRFUl9EVVJBVElPTjsKCiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgICAgICAgICBjYXNlICdyYW5kb20nOgogICAgICAgICAgICAgICAgICAgICAgICAkZXhlY3V0aW9uT3JkZXIgPSBUZXN0U3VpdGVTb3J0ZXI6Ok9SREVSX1JBTkRPTUlaRUQ7CgogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICAgICAgY2FzZSAncmV2ZXJzZSc6CiAgICAgICAgICAgICAgICAgICAgICAgICRleGVjdXRpb25PcmRlciA9IFRlc3RTdWl0ZVNvcnRlcjo6T1JERVJfUkVWRVJTRUQ7CgogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICAgICAgY2FzZSAnc2l6ZSc6CiAgICAgICAgICAgICAgICAgICAgICAgICRleGVjdXRpb25PcmRlciA9IFRlc3RTdWl0ZVNvcnRlcjo6T1JERVJfU0laRTsKCiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAkcHJpbnRlckNsYXNzICAgICAgICAgICAgICAgICAgICAgICAgICA9ICR0aGlzLT5nZXRTdHJpbmdBdHRyaWJ1dGUoJGRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQsICdwcmludGVyQ2xhc3MnKTsKICAgICAgICAkdGVzdGRveCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9ICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAndGVzdGRveCcsIGZhbHNlKTsKICAgICAgICAkY29uZmxpY3RCZXR3ZWVuUHJpbnRlckNsYXNzQW5kVGVzdGRveCA9IGZhbHNlOwoKICAgICAgICBpZiAoJHRlc3Rkb3gpIHsKICAgICAgICAgICAgaWYgKCRwcmludGVyQ2xhc3MgIT09IG51bGwpIHsKICAgICAgICAgICAgICAgICRjb25mbGljdEJldHdlZW5QcmludGVyQ2xhc3NBbmRUZXN0ZG94ID0gdHJ1ZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJHByaW50ZXJDbGFzcyA9IENsaVRlc3REb3hQcmludGVyOjpjbGFzczsKICAgICAgICB9CgogICAgICAgICRjYWNoZVJlc3VsdEZpbGUgPSAkdGhpcy0+Z2V0U3RyaW5nQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnY2FjaGVSZXN1bHRGaWxlJyk7CgogICAgICAgIGlmICgkY2FjaGVSZXN1bHRGaWxlICE9PSBudWxsKSB7CiAgICAgICAgICAgICRjYWNoZVJlc3VsdEZpbGUgPSAkdGhpcy0+dG9BYnNvbHV0ZVBhdGgoJGZpbGVuYW1lLCAkY2FjaGVSZXN1bHRGaWxlKTsKICAgICAgICB9CgogICAgICAgICRib290c3RyYXAgPSAkdGhpcy0+Z2V0U3RyaW5nQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnYm9vdHN0cmFwJyk7CgogICAgICAgIGlmICgkYm9vdHN0cmFwICE9PSBudWxsKSB7CiAgICAgICAgICAgICRib290c3RyYXAgPSAkdGhpcy0+dG9BYnNvbHV0ZVBhdGgoJGZpbGVuYW1lLCAkYm9vdHN0cmFwKTsKICAgICAgICB9CgogICAgICAgICRleHRlbnNpb25zRGlyZWN0b3J5ID0gJHRoaXMtPmdldFN0cmluZ0F0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ2V4dGVuc2lvbnNEaXJlY3RvcnknKTsKCiAgICAgICAgaWYgKCRleHRlbnNpb25zRGlyZWN0b3J5ICE9PSBudWxsKSB7CiAgICAgICAgICAgICRleHRlbnNpb25zRGlyZWN0b3J5ID0gJHRoaXMtPnRvQWJzb2x1dGVQYXRoKCRmaWxlbmFtZSwgJGV4dGVuc2lvbnNEaXJlY3RvcnkpOwogICAgICAgIH0KCiAgICAgICAgJHRlc3RTdWl0ZUxvYWRlckZpbGUgPSAkdGhpcy0+Z2V0U3RyaW5nQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAndGVzdFN1aXRlTG9hZGVyRmlsZScpOwoKICAgICAgICBpZiAoJHRlc3RTdWl0ZUxvYWRlckZpbGUgIT09IG51bGwpIHsKICAgICAgICAgICAgJHRlc3RTdWl0ZUxvYWRlckZpbGUgPSAkdGhpcy0+dG9BYnNvbHV0ZVBhdGgoJGZpbGVuYW1lLCAkdGVzdFN1aXRlTG9hZGVyRmlsZSk7CiAgICAgICAgfQoKICAgICAgICAkcHJpbnRlckZpbGUgPSAkdGhpcy0+Z2V0U3RyaW5nQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAncHJpbnRlckZpbGUnKTsKCiAgICAgICAgaWYgKCRwcmludGVyRmlsZSAhPT0gbnVsbCkgewogICAgICAgICAgICAkcHJpbnRlckZpbGUgPSAkdGhpcy0+dG9BYnNvbHV0ZVBhdGgoJGZpbGVuYW1lLCAkcHJpbnRlckZpbGUpOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIG5ldyBQSFBVbml0KAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ2NhY2hlUmVzdWx0JywgdHJ1ZSksCiAgICAgICAgICAgICRjYWNoZVJlc3VsdEZpbGUsCiAgICAgICAgICAgICR0aGlzLT5nZXRDb2x1bW5zKCRkb2N1bWVudCksCiAgICAgICAgICAgICR0aGlzLT5nZXRDb2xvcnMoJGRvY3VtZW50KSwKICAgICAgICAgICAgJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoJGRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQsICdzdGRlcnInLCBmYWxzZSksCiAgICAgICAgICAgICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnbm9JbnRlcmFjdGlvbicsIGZhbHNlKSwKICAgICAgICAgICAgJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoJGRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQsICd2ZXJib3NlJywgZmFsc2UpLAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ3JldmVyc2VEZWZlY3RMaXN0JywgZmFsc2UpLAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ2NvbnZlcnREZXByZWNhdGlvbnNUb0V4Y2VwdGlvbnMnLCBmYWxzZSksCiAgICAgICAgICAgICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnY29udmVydEVycm9yc1RvRXhjZXB0aW9ucycsIHRydWUpLAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ2NvbnZlcnROb3RpY2VzVG9FeGNlcHRpb25zJywgdHJ1ZSksCiAgICAgICAgICAgICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnY29udmVydFdhcm5pbmdzVG9FeGNlcHRpb25zJywgdHJ1ZSksCiAgICAgICAgICAgICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnZm9yY2VDb3ZlcnNBbm5vdGF0aW9uJywgZmFsc2UpLAogICAgICAgICAgICAkYm9vdHN0cmFwLAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ3Byb2Nlc3NJc29sYXRpb24nLCBmYWxzZSksCiAgICAgICAgICAgICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnZmFpbE9uRW1wdHlUZXN0U3VpdGUnLCBmYWxzZSksCiAgICAgICAgICAgICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnZmFpbE9uSW5jb21wbGV0ZScsIGZhbHNlKSwKICAgICAgICAgICAgJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoJGRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQsICdmYWlsT25SaXNreScsIGZhbHNlKSwKICAgICAgICAgICAgJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoJGRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQsICdmYWlsT25Ta2lwcGVkJywgZmFsc2UpLAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ2ZhaWxPbldhcm5pbmcnLCBmYWxzZSksCiAgICAgICAgICAgICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnc3RvcE9uRGVmZWN0JywgZmFsc2UpLAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ3N0b3BPbkVycm9yJywgZmFsc2UpLAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ3N0b3BPbkZhaWx1cmUnLCBmYWxzZSksCiAgICAgICAgICAgICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnc3RvcE9uV2FybmluZycsIGZhbHNlKSwKICAgICAgICAgICAgJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoJGRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQsICdzdG9wT25JbmNvbXBsZXRlJywgZmFsc2UpLAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ3N0b3BPblJpc2t5JywgZmFsc2UpLAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ3N0b3BPblNraXBwZWQnLCBmYWxzZSksCiAgICAgICAgICAgICRleHRlbnNpb25zRGlyZWN0b3J5LAogICAgICAgICAgICAkdGhpcy0+Z2V0U3RyaW5nQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAndGVzdFN1aXRlTG9hZGVyQ2xhc3MnKSwKICAgICAgICAgICAgJHRlc3RTdWl0ZUxvYWRlckZpbGUsCiAgICAgICAgICAgICRwcmludGVyQ2xhc3MsCiAgICAgICAgICAgICRwcmludGVyRmlsZSwKICAgICAgICAgICAgJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoJGRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQsICdiZVN0cmljdEFib3V0Q2hhbmdlc1RvR2xvYmFsU3RhdGUnLCBmYWxzZSksCiAgICAgICAgICAgICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnYmVTdHJpY3RBYm91dE91dHB1dER1cmluZ1Rlc3RzJywgZmFsc2UpLAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ2JlU3RyaWN0QWJvdXRSZXNvdXJjZVVzYWdlRHVyaW5nU21hbGxUZXN0cycsIGZhbHNlKSwKICAgICAgICAgICAgJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoJGRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQsICdiZVN0cmljdEFib3V0VGVzdHNUaGF0RG9Ob3RUZXN0QW55dGhpbmcnLCB0cnVlKSwKICAgICAgICAgICAgJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoJGRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQsICdiZVN0cmljdEFib3V0VG9kb0Fubm90YXRlZFRlc3RzJywgZmFsc2UpLAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ2JlU3RyaWN0QWJvdXRDb3ZlcnNBbm5vdGF0aW9uJywgZmFsc2UpLAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ2VuZm9yY2VUaW1lTGltaXQnLCBmYWxzZSksCiAgICAgICAgICAgICR0aGlzLT5nZXRJbnRlZ2VyQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnZGVmYXVsdFRpbWVMaW1pdCcsIDEpLAogICAgICAgICAgICAkdGhpcy0+Z2V0SW50ZWdlckF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ3RpbWVvdXRGb3JTbWFsbFRlc3RzJywgMSksCiAgICAgICAgICAgICR0aGlzLT5nZXRJbnRlZ2VyQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAndGltZW91dEZvck1lZGl1bVRlc3RzJywgMTApLAogICAgICAgICAgICAkdGhpcy0+Z2V0SW50ZWdlckF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ3RpbWVvdXRGb3JMYXJnZVRlc3RzJywgNjApLAogICAgICAgICAgICAkdGhpcy0+Z2V0U3RyaW5nQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnZGVmYXVsdFRlc3RTdWl0ZScpLAogICAgICAgICAgICAkZXhlY3V0aW9uT3JkZXIsCiAgICAgICAgICAgICRyZXNvbHZlRGVwZW5kZW5jaWVzLAogICAgICAgICAgICAkZGVmZWN0c0ZpcnN0LAogICAgICAgICAgICAkdGhpcy0+Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudCwgJ2JhY2t1cEdsb2JhbHMnLCBmYWxzZSksCiAgICAgICAgICAgICR0aGlzLT5nZXRCb29sZWFuQXR0cmlidXRlKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LCAnYmFja3VwU3RhdGljQXR0cmlidXRlcycsIGZhbHNlKSwKICAgICAgICAgICAgJHRoaXMtPmdldEJvb2xlYW5BdHRyaWJ1dGUoJGRvY3VtZW50LT5kb2N1bWVudEVsZW1lbnQsICdyZWdpc3Rlck1vY2tPYmplY3RzRnJvbVRlc3RBcmd1bWVudHNSZWN1cnNpdmVseScsIGZhbHNlKSwKICAgICAgICAgICAgJGNvbmZsaWN0QmV0d2VlblByaW50ZXJDbGFzc0FuZFRlc3Rkb3gKICAgICAgICApOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0Q29sb3JzKERPTURvY3VtZW50ICRkb2N1bWVudCk6IHN0cmluZwogICAgewogICAgICAgICRjb2xvcnMgPSBEZWZhdWx0UmVzdWx0UHJpbnRlcjo6Q09MT1JfREVGQVVMVDsKCiAgICAgICAgaWYgKCRkb2N1bWVudC0+ZG9jdW1lbnRFbGVtZW50LT5oYXNBdHRyaWJ1dGUoJ2NvbG9ycycpKSB7CiAgICAgICAgICAgIC8qIG9ubHkgYWxsb3cgYm9vbGVhbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIHByZXZpb3VzIHZlcnNpb25zCiAgICAgICAgICAgICAgJ2Fsd2F5cycgb25seSBhbGxvd2VkIGZyb20gY29tbWFuZCBsaW5lICovCiAgICAgICAgICAgIGlmICgkdGhpcy0+Z2V0Qm9vbGVhbigkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudC0+Z2V0QXR0cmlidXRlKCdjb2xvcnMnKSwgZmFsc2UpKSB7CiAgICAgICAgICAgICAgICAkY29sb3JzID0gRGVmYXVsdFJlc3VsdFByaW50ZXI6OkNPTE9SX0FVVE87CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAkY29sb3JzID0gRGVmYXVsdFJlc3VsdFByaW50ZXI6OkNPTE9SX05FVkVSOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gJGNvbG9yczsKICAgIH0KCiAgICAvKioKICAgICAqIEByZXR1cm4gaW50fHN0cmluZwogICAgICovCiAgICBwcml2YXRlIGZ1bmN0aW9uIGdldENvbHVtbnMoRE9NRG9jdW1lbnQgJGRvY3VtZW50KQogICAgewogICAgICAgICRjb2x1bW5zID0gODA7CgogICAgICAgIGlmICgkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudC0+aGFzQXR0cmlidXRlKCdjb2x1bW5zJykpIHsKICAgICAgICAgICAgJGNvbHVtbnMgPSAoc3RyaW5nKSAkZG9jdW1lbnQtPmRvY3VtZW50RWxlbWVudC0+Z2V0QXR0cmlidXRlKCdjb2x1bW5zJyk7CgogICAgICAgICAgICBpZiAoJGNvbHVtbnMgIT09ICdtYXgnKSB7CiAgICAgICAgICAgICAgICAkY29sdW1ucyA9ICR0aGlzLT5nZXRJbnRlZ2VyKCRjb2x1bW5zLCA4MCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHJldHVybiAkY29sdW1uczsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIHRlc3RTdWl0ZShzdHJpbmcgJGZpbGVuYW1lLCBET01YUGF0aCAkeHBhdGgpOiBUZXN0U3VpdGVDb2xsZWN0aW9uCiAgICB7CiAgICAgICAgJHRlc3RTdWl0ZXMgPSBbXTsKCiAgICAgICAgZm9yZWFjaCAoJHRoaXMtPmdldFRlc3RTdWl0ZUVsZW1lbnRzKCR4cGF0aCkgYXMgJGVsZW1lbnQpIHsKICAgICAgICAgICAgJGV4Y2x1ZGUgPSBbXTsKCiAgICAgICAgICAgIGZvcmVhY2ggKCRlbGVtZW50LT5nZXRFbGVtZW50c0J5VGFnTmFtZSgnZXhjbHVkZScpIGFzICRleGNsdWRlTm9kZSkgewogICAgICAgICAgICAgICAgJGV4Y2x1ZGVGaWxlID0gKHN0cmluZykgJGV4Y2x1ZGVOb2RlLT50ZXh0Q29udGVudDsKCiAgICAgICAgICAgICAgICBpZiAoJGV4Y2x1ZGVGaWxlKSB7CiAgICAgICAgICAgICAgICAgICAgJGV4Y2x1ZGVbXSA9IG5ldyBGaWxlKCR0aGlzLT50b0Fic29sdXRlUGF0aCgkZmlsZW5hbWUsICRleGNsdWRlRmlsZSkpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICAkZGlyZWN0b3JpZXMgPSBbXTsKCiAgICAgICAgICAgIGZvcmVhY2ggKCRlbGVtZW50LT5nZXRFbGVtZW50c0J5VGFnTmFtZSgnZGlyZWN0b3J5JykgYXMgJGRpcmVjdG9yeU5vZGUpIHsKICAgICAgICAgICAgICAgIGFzc2VydCgkZGlyZWN0b3J5Tm9kZSBpbnN0YW5jZW9mIERPTUVsZW1lbnQpOwoKICAgICAgICAgICAgICAgICRkaXJlY3RvcnkgPSAoc3RyaW5nKSAkZGlyZWN0b3J5Tm9kZS0+dGV4dENvbnRlbnQ7CgogICAgICAgICAgICAgICAgaWYgKGVtcHR5KCRkaXJlY3RvcnkpKSB7CiAgICAgICAgICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgJHByZWZpeCA9ICcnOwoKICAgICAgICAgICAgICAgIGlmICgkZGlyZWN0b3J5Tm9kZS0+aGFzQXR0cmlidXRlKCdwcmVmaXgnKSkgewogICAgICAgICAgICAgICAgICAgICRwcmVmaXggPSAoc3RyaW5nKSAkZGlyZWN0b3J5Tm9kZS0+Z2V0QXR0cmlidXRlKCdwcmVmaXgnKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAkc3VmZml4ID0gJ1Rlc3QucGhwJzsKCiAgICAgICAgICAgICAgICBpZiAoJGRpcmVjdG9yeU5vZGUtPmhhc0F0dHJpYnV0ZSgnc3VmZml4JykpIHsKICAgICAgICAgICAgICAgICAgICAkc3VmZml4ID0gKHN0cmluZykgJGRpcmVjdG9yeU5vZGUtPmdldEF0dHJpYnV0ZSgnc3VmZml4Jyk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgJHBocFZlcnNpb24gPSBQSFBfVkVSU0lPTjsKCiAgICAgICAgICAgICAgICBpZiAoJGRpcmVjdG9yeU5vZGUtPmhhc0F0dHJpYnV0ZSgncGhwVmVyc2lvbicpKSB7CiAgICAgICAgICAgICAgICAgICAgJHBocFZlcnNpb24gPSAoc3RyaW5nKSAkZGlyZWN0b3J5Tm9kZS0+Z2V0QXR0cmlidXRlKCdwaHBWZXJzaW9uJyk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgJHBocFZlcnNpb25PcGVyYXRvciA9IG5ldyBWZXJzaW9uQ29tcGFyaXNvbk9wZXJhdG9yKCc+PScpOwoKICAgICAgICAgICAgICAgIGlmICgkZGlyZWN0b3J5Tm9kZS0+aGFzQXR0cmlidXRlKCdwaHBWZXJzaW9uT3BlcmF0b3InKSkgewogICAgICAgICAgICAgICAgICAgICRwaHBWZXJzaW9uT3BlcmF0b3IgPSBuZXcgVmVyc2lvbkNvbXBhcmlzb25PcGVyYXRvcigoc3RyaW5nKSAkZGlyZWN0b3J5Tm9kZS0+Z2V0QXR0cmlidXRlKCdwaHBWZXJzaW9uT3BlcmF0b3InKSk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgJGRpcmVjdG9yaWVzW10gPSBuZXcgVGVzdERpcmVjdG9yeSgKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+dG9BYnNvbHV0ZVBhdGgoJGZpbGVuYW1lLCAkZGlyZWN0b3J5KSwKICAgICAgICAgICAgICAgICAgICAkcHJlZml4LAogICAgICAgICAgICAgICAgICAgICRzdWZmaXgsCiAgICAgICAgICAgICAgICAgICAgJHBocFZlcnNpb24sCiAgICAgICAgICAgICAgICAgICAgJHBocFZlcnNpb25PcGVyYXRvcgogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJGZpbGVzID0gW107CgogICAgICAgICAgICBmb3JlYWNoICgkZWxlbWVudC0+Z2V0RWxlbWVudHNCeVRhZ05hbWUoJ2ZpbGUnKSBhcyAkZmlsZU5vZGUpIHsKICAgICAgICAgICAgICAgIGFzc2VydCgkZmlsZU5vZGUgaW5zdGFuY2VvZiBET01FbGVtZW50KTsKCiAgICAgICAgICAgICAgICAkZmlsZSA9IChzdHJpbmcpICRmaWxlTm9kZS0+dGV4dENvbnRlbnQ7CgogICAgICAgICAgICAgICAgaWYgKGVtcHR5KCRmaWxlKSkgewogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICRwaHBWZXJzaW9uID0gUEhQX1ZFUlNJT047CgogICAgICAgICAgICAgICAgaWYgKCRmaWxlTm9kZS0+aGFzQXR0cmlidXRlKCdwaHBWZXJzaW9uJykpIHsKICAgICAgICAgICAgICAgICAgICAkcGhwVmVyc2lvbiA9IChzdHJpbmcpICRmaWxlTm9kZS0+Z2V0QXR0cmlidXRlKCdwaHBWZXJzaW9uJyk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgJHBocFZlcnNpb25PcGVyYXRvciA9IG5ldyBWZXJzaW9uQ29tcGFyaXNvbk9wZXJhdG9yKCc+PScpOwoKICAgICAgICAgICAgICAgIGlmICgkZmlsZU5vZGUtPmhhc0F0dHJpYnV0ZSgncGhwVmVyc2lvbk9wZXJhdG9yJykpIHsKICAgICAgICAgICAgICAgICAgICAkcGhwVmVyc2lvbk9wZXJhdG9yID0gbmV3IFZlcnNpb25Db21wYXJpc29uT3BlcmF0b3IoKHN0cmluZykgJGZpbGVOb2RlLT5nZXRBdHRyaWJ1dGUoJ3BocFZlcnNpb25PcGVyYXRvcicpKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAkZmlsZXNbXSA9IG5ldyBUZXN0RmlsZSgKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+dG9BYnNvbHV0ZVBhdGgoJGZpbGVuYW1lLCAkZmlsZSksCiAgICAgICAgICAgICAgICAgICAgJHBocFZlcnNpb24sCiAgICAgICAgICAgICAgICAgICAgJHBocFZlcnNpb25PcGVyYXRvcgogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJHRlc3RTdWl0ZXNbXSA9IG5ldyBUZXN0U3VpdGVDb25maWd1cmF0aW9uKAogICAgICAgICAgICAgICAgKHN0cmluZykgJGVsZW1lbnQtPmdldEF0dHJpYnV0ZSgnbmFtZScpLAogICAgICAgICAgICAgICAgVGVzdERpcmVjdG9yeUNvbGxlY3Rpb246OmZyb21BcnJheSgkZGlyZWN0b3JpZXMpLAogICAgICAgICAgICAgICAgVGVzdEZpbGVDb2xsZWN0aW9uOjpmcm9tQXJyYXkoJGZpbGVzKSwKICAgICAgICAgICAgICAgIEZpbGVDb2xsZWN0aW9uOjpmcm9tQXJyYXkoJGV4Y2x1ZGUpCiAgICAgICAgICAgICk7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gVGVzdFN1aXRlQ29sbGVjdGlvbjo6ZnJvbUFycmF5KCR0ZXN0U3VpdGVzKTsKICAgIH0KCiAgICAvKioKICAgICAqIEByZXR1cm4gRE9NRWxlbWVudFtdCiAgICAgKi8KICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0VGVzdFN1aXRlRWxlbWVudHMoRE9NWFBhdGggJHhwYXRoKTogYXJyYXkKICAgIHsKICAgICAgICAvKiogQHZhciBET01FbGVtZW50W10gJGVsZW1lbnRzICovCiAgICAgICAgJGVsZW1lbnRzID0gW107CgogICAgICAgICR0ZXN0U3VpdGVOb2RlcyA9ICR4cGF0aC0+cXVlcnkoJ3Rlc3RzdWl0ZXMvdGVzdHN1aXRlJyk7CgogICAgICAgIGlmICgkdGVzdFN1aXRlTm9kZXMtPmxlbmd0aCA9PT0gMCkgewogICAgICAgICAgICAkdGVzdFN1aXRlTm9kZXMgPSAkeHBhdGgtPnF1ZXJ5KCd0ZXN0c3VpdGUnKTsKICAgICAgICB9CgogICAgICAgIGlmICgkdGVzdFN1aXRlTm9kZXMtPmxlbmd0aCA9PT0gMSkgewogICAgICAgICAgICAkZWxlbWVudCA9ICR0ZXN0U3VpdGVOb2Rlcy0+aXRlbSgwKTsKCiAgICAgICAgICAgIGFzc2VydCgkZWxlbWVudCBpbnN0YW5jZW9mIERPTUVsZW1lbnQpOwoKICAgICAgICAgICAgJGVsZW1lbnRzW10gPSAkZWxlbWVudDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBmb3JlYWNoICgkdGVzdFN1aXRlTm9kZXMgYXMgJHRlc3RTdWl0ZU5vZGUpIHsKICAgICAgICAgICAgICAgIGFzc2VydCgkdGVzdFN1aXRlTm9kZSBpbnN0YW5jZW9mIERPTUVsZW1lbnQpOwoKICAgICAgICAgICAgICAgICRlbGVtZW50c1tdID0gJHRlc3RTdWl0ZU5vZGU7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHJldHVybiAkZWxlbWVudHM7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBlbGVtZW50KERPTVhQYXRoICR4cGF0aCwgc3RyaW5nICRlbGVtZW50KTogP0RPTUVsZW1lbnQKICAgIHsKICAgICAgICAkbm9kZXMgPSAkeHBhdGgtPnF1ZXJ5KCRlbGVtZW50KTsKCiAgICAgICAgaWYgKCRub2Rlcy0+bGVuZ3RoID09PSAxKSB7CiAgICAgICAgICAgICRub2RlID0gJG5vZGVzLT5pdGVtKDApOwoKICAgICAgICAgICAgYXNzZXJ0KCRub2RlIGluc3RhbmNlb2YgRE9NRWxlbWVudCk7CgogICAgICAgICAgICByZXR1cm4gJG5vZGU7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gbnVsbDsKICAgIH0KfQoiO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAbmFtZXNwYWNlcyI7YToxOntzOjMyOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjMyOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvbiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE2OiJYbWxDb25maWd1cmF0aW9uIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW5jbHVkZXMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZnVuY3Rpb25zIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNvbnN0YW50cyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjbGFzc2VzIjthOjE6e3M6Mzk6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlciI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18iOjEzOntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozOToiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NjoiTG9hZGVyIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czo4OiJpbnRlcm5hbCI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NzU6IlRoaXMgY2xhc3MgaXMgbm90IGNvdmVyZWQgYnkgdGhlIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgcHJvbWlzZSBmb3IgUEhQVW5pdCI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjMxOiJQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTozMjp7czoxMToiRE9NRG9jdW1lbnQiO3M6MTE6IkRPTURvY3VtZW50IjtzOjEwOiJET01FbGVtZW50IjtzOjEwOiJET01FbGVtZW50IjtzOjExOiJET01Ob2RlTGlzdCI7czoxMToiRE9NTm9kZUxpc3QiO3M6ODoiRE9NWFBhdGgiO3M6ODoiRE9NWFBhdGgiO3M6MTU6IlRlc3RTdWl0ZVNvcnRlciI7czozMDoiUEhQVW5pdFxSdW5uZXJcVGVzdFN1aXRlU29ydGVyIjtzOjc6IlZlcnNpb24iO3M6MjI6IlBIUFVuaXRcUnVubmVyXFZlcnNpb24iO3M6MjA6IkRlZmF1bHRSZXN1bHRQcmludGVyIjtzOjM1OiJQSFBVbml0XFRleHRVSVxEZWZhdWx0UmVzdWx0UHJpbnRlciI7czoxMjoiQ29kZUNvdmVyYWdlIjtzOjU3OiJQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXENvZGVDb3ZlcmFnZVxDb2RlQ292ZXJhZ2UiO3M6MTU6IkZpbHRlckRpcmVjdG9yeSI7czo2MToiUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxDb2RlQ292ZXJhZ2VcRmlsdGVyXERpcmVjdG9yeSI7czoyNToiRmlsdGVyRGlyZWN0b3J5Q29sbGVjdGlvbiI7czo3MToiUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxDb2RlQ292ZXJhZ2VcRmlsdGVyXERpcmVjdG9yeUNvbGxlY3Rpb24iO3M6NjoiQ2xvdmVyIjtzOjU4OiJQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXENvZGVDb3ZlcmFnZVxSZXBvcnRcQ2xvdmVyIjtzOjk6IkNvYmVydHVyYSI7czo2MToiUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxDb2RlQ292ZXJhZ2VcUmVwb3J0XENvYmVydHVyYSI7czo2OiJDcmFwNGoiO3M6NTg6IlBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cQ29kZUNvdmVyYWdlXFJlcG9ydFxDcmFwNGoiO3M6MTY6IkNvZGVDb3ZlcmFnZUh0bWwiO3M6NTY6IlBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cQ29kZUNvdmVyYWdlXFJlcG9ydFxIdG1sIjtzOjE1OiJDb2RlQ292ZXJhZ2VQaHAiO3M6NTU6IlBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cQ29kZUNvdmVyYWdlXFJlcG9ydFxQaHAiO3M6MTY6IkNvZGVDb3ZlcmFnZVRleHQiO3M6NTY6IlBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cQ29kZUNvdmVyYWdlXFJlcG9ydFxUZXh0IjtzOjE1OiJDb2RlQ292ZXJhZ2VYbWwiO3M6NTU6IlBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cQ29kZUNvdmVyYWdlXFJlcG9ydFxYbWwiO3M6NToiSnVuaXQiO3M6NDU6IlBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9nZ2luZ1xKdW5pdCI7czo3OiJMb2dnaW5nIjtzOjQ3OiJQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvZ2dpbmdcTG9nZ2luZyI7czo4OiJUZWFtQ2l0eSI7czo0ODoiUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2dnaW5nXFRlYW1DaXR5IjtzOjExOiJUZXN0RG94SHRtbCI7czo1MjoiUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2dnaW5nXFRlc3REb3hcSHRtbCI7czoxMToiVGVzdERveFRleHQiO3M6NTI6IlBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9nZ2luZ1xUZXN0RG94XFRleHQiO3M6MTA6IlRlc3REb3hYbWwiO3M6NTE6IlBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9nZ2luZ1xUZXN0RG94XFhtbCI7czo0OiJUZXh0IjtzOjQ0OiJQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvZ2dpbmdcVGV4dCI7czoyMjoiVGVzdFN1aXRlQ29uZmlndXJhdGlvbiI7czo0MToiUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxUZXN0U3VpdGUiO3M6MTc6IkNsaVRlc3REb3hQcmludGVyIjtzOjM4OiJQSFBVbml0XFV0aWxcVGVzdERveFxDbGlUZXN0RG94UHJpbnRlciI7czoyNToiVmVyc2lvbkNvbXBhcmlzb25PcGVyYXRvciI7czozODoiUEhQVW5pdFxVdGlsXFZlcnNpb25Db21wYXJpc29uT3BlcmF0b3IiO3M6MzoiWG1sIjtzOjE2OiJQSFBVbml0XFV0aWxcWG1sIjtzOjEyOiJYbWxFeGNlcHRpb24iO3M6MjY6IlBIUFVuaXRcVXRpbFxYbWxcRXhjZXB0aW9uIjtzOjk6IlhtbExvYWRlciI7czoyMzoiUEhQVW5pdFxVdGlsXFhtbFxMb2FkZXIiO3M6MTI6IlNjaGVtYUZpbmRlciI7czoyOToiUEhQVW5pdFxVdGlsXFhtbFxTY2hlbWFGaW5kZXIiO3M6OToiVmFsaWRhdG9yIjtzOjI2OiJQSFBVbml0XFV0aWxcWG1sXFZhbGlkYXRvciI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBmaW5hbCI7YjoxO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBwYXJlbnQiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGltcGxlbWVudHMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBjb25zdGFudHMiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBwcm9wZXJ0aWVzIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AbWV0aG9kcyI7YToyNzp7czo0NzoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjpsb2FkKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFRocm93cyI6Mzp7czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDI6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXEV4Y2VwdGlvbiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjk6IkV4Y2VwdGlvbiI7fX1zOjc6IgAqAG5hbWUiO3M6NjoidGhyb3dzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjMwO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDc6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6bG9hZCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoibG9hZCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo4OiJmaWxlbmFtZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwNTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ2OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxDb25maWd1cmF0aW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6IkNvbmZpZ3VyYXRpb24iO319czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1MDoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjpsb2dnaW5nKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUwOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmxvZ2dpbmcoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6ImxvZ2dpbmciO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6ODoiZmlsZW5hbWUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToieHBhdGgiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo5OiJcRE9NWFBhdGgiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo4OiJET01YUGF0aCI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMDc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMDU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0ODoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9nZ2luZ1xMb2dnaW5nIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NzoiTG9nZ2luZyI7fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjU2OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmxlZ2FjeUxvZ2dpbmcoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTY6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6bGVnYWN5TG9nZ2luZygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6ImxlZ2FjeUxvZ2dpbmciO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6ODoiZmlsZW5hbWUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToieHBhdGgiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo5OiJcRE9NWFBhdGgiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo4OiJET01YUGF0aCI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMDc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyODE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0ODoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9nZ2luZ1xMb2dnaW5nIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NzoiTG9nZ2luZyI7fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjUzOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmV4dGVuc2lvbnMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTM6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6ZXh0ZW5zaW9ucygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTA6ImV4dGVuc2lvbnMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjg6ImZpbGVuYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6InhwYXRoIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6OToiXERPTVhQYXRoIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6ODoiRE9NWFBhdGgiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjgzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mjk0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTI6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXEV4dGVuc2lvbkNvbGxlY3Rpb24iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiRXh0ZW5zaW9uQ29sbGVjdGlvbiI7fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjc2OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmdldEVsZW1lbnRDb25maWd1cmF0aW9uUGFyYW1ldGVycygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo3NjoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjpnZXRFbGVtZW50Q29uZmlndXJhdGlvblBhcmFtZXRlcnMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjMzOiJnZXRFbGVtZW50Q29uZmlndXJhdGlvblBhcmFtZXRlcnMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjg6ImZpbGVuYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6ImVsZW1lbnQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoxMToiXERPTUVsZW1lbnQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMDoiRE9NRWxlbWVudCI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyOTY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozMTI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MjoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cRXh0ZW5zaW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiRXh0ZW5zaW9uIjt9fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTc6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6dG9BYnNvbHV0ZVBhdGgoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTc6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6dG9BYnNvbHV0ZVBhdGgoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE0OiJ0b0Fic29sdXRlUGF0aCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6ODoiZmlsZW5hbWUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoicGF0aCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxNDoidXNlSW5jbHVkZVBhdGgiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czo1OiJmYWxzZSI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjMxNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM1MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjY4OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmdldENvbmZpZ3VyYXRpb25Bcmd1bWVudHMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Njg6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6Z2V0Q29uZmlndXJhdGlvbkFyZ3VtZW50cygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjU6ImdldENvbmZpZ3VyYXRpb25Bcmd1bWVudHMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjg6ImZpbGVuYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6Im5vZGVzIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MTI6IlxET01Ob2RlTGlzdCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJET01Ob2RlTGlzdCI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNTI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozODM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTU6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6Y29kZUNvdmVyYWdlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU1OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmNvZGVDb3ZlcmFnZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTI6ImNvZGVDb3ZlcmFnZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6ODoiZmlsZW5hbWUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToieHBhdGgiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo5OiJcRE9NWFBhdGgiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo4OiJET01YUGF0aCI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo4OiJkb2N1bWVudCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjEyOiJcRE9NRG9jdW1lbnQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMToiRE9NRG9jdW1lbnQiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mzg1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTYyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTg6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXENvZGVDb3ZlcmFnZVxDb2RlQ292ZXJhZ2UiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoiQ29kZUNvdmVyYWdlIjt9fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NjE6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6bGVnYWN5Q29kZUNvdmVyYWdlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXERlcHJlY2F0ZWQiOjM6e3M6NzoiACoAbmFtZSI7czoxMDoiZGVwcmVjYXRlZCI7czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXERlcHJlY2F0ZWQAdmVyc2lvbiI7TjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozMDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjYxOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmxlZ2FjeUNvZGVDb3ZlcmFnZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTg6ImxlZ2FjeUNvZGVDb3ZlcmFnZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6ODoiZmlsZW5hbWUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToieHBhdGgiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo5OiJcRE9NWFBhdGgiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo4OiJET01YUGF0aCI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo4OiJkb2N1bWVudCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjEyOiJcRE9NRG9jdW1lbnQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMToiRE9NRG9jdW1lbnQiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTY3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Njk4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTg6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXENvZGVDb3ZlcmFnZVxDb2RlQ292ZXJhZ2UiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoiQ29kZUNvdmVyYWdlIjt9fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTM6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6Z2V0Qm9vbGVhbigpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Nzg6IklmICR2YWx1ZSBpcyAnZmFsc2UnIG9yICd0cnVlJywgdGhpcyByZXR1cm5zIHRoZSB2YWx1ZSB0aGF0ICR2YWx1ZSByZXByZXNlbnRzLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo2NToiT3RoZXJ3aXNlLCByZXR1cm5zICRkZWZhdWx0LCB3aGljaCBtYXkgYmUgYSBzdHJpbmcgaW4gcmFyZSBjYXNlcy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTozOntpOjA7Tzo0MjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcU2VlIjozOntzOjc6IgAqAG5hbWUiO3M6Mzoic2VlIjtzOjk6IgAqAHJlZmVycyI7Tzo1NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmVmZXJlbmNlXEZxc2VuIjoxOntzOjYxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmVmZXJlbmNlXEZxc2VuAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzM6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uVGVzdDo6dGVzdFBIUENvbmZpZ3VyYXRpb25Jc1JlYWRDb3JyZWN0bHkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czozNToidGVzdFBIUENvbmZpZ3VyYXRpb25Jc1JlYWRDb3JyZWN0bHkiO319czoxNDoiACoAZGVzY3JpcHRpb24iO047fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo3OiJkZWZhdWx0IjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO3M6NzoiACoAdHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO31zOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fWk6MjtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAHR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozMDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUzOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmdldEJvb2xlYW4oKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEwOiJnZXRCb29sZWFuIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJ2YWx1ZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo3OiJkZWZhdWx0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzEwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzIxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo2NDoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjpyZWFkRmlsdGVyRGlyZWN0b3JpZXMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjQ6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6cmVhZEZpbHRlckRpcmVjdG9yaWVzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMToicmVhZEZpbHRlckRpcmVjdG9yaWVzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTozOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo4OiJmaWxlbmFtZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJ4cGF0aCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjk6IlxET01YUGF0aCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6IkRPTVhQYXRoIjt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6InF1ZXJ5IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjcyMztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjc0NTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjcyOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxDb2RlQ292ZXJhZ2VcRmlsdGVyXERpcmVjdG9yeUNvbGxlY3Rpb24iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiRGlyZWN0b3J5Q29sbGVjdGlvbiI7fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjU4OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OnJlYWRGaWx0ZXJGaWxlcygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1ODoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjpyZWFkRmlsdGVyRmlsZXMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJyZWFkRmlsdGVyRmlsZXMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjg6ImZpbGVuYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6InhwYXRoIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6OToiXERPTVhQYXRoIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6ODoiRE9NWFBhdGgiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToicXVlcnkiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzQ3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzYwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDc6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXEZpbGVDb2xsZWN0aW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTQ6IkZpbGVDb2xsZWN0aW9uIjt9fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDk6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6Z3JvdXBzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ5OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6Omdyb3VwcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NjoiZ3JvdXBzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJ4cGF0aCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjk6IlxET01YUGF0aCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6IkRPTVhQYXRoIjt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjc2MjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjc2NTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM5OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxHcm91cHMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo2OiJHcm91cHMiO319czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1NjoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjp0ZXN0ZG94R3JvdXBzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU2OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OnRlc3Rkb3hHcm91cHMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEzOiJ0ZXN0ZG94R3JvdXBzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJ4cGF0aCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjk6IlxET01YUGF0aCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6IkRPTVhQYXRoIjt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjc2NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjc3MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM5OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxHcm91cHMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo2OiJHcm91cHMiO319czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo2NjoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjpwYXJzZUdyb3VwQ29uZmlndXJhdGlvbigpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2NjoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjpwYXJzZUdyb3VwQ29uZmlndXJhdGlvbigpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjM6InBhcnNlR3JvdXBDb25maWd1cmF0aW9uIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJ4cGF0aCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjk6IlxET01YUGF0aCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6IkRPTVhQYXRoIjt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6InJvb3QiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzcyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Nzg5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzk6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXEdyb3VwcyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjY6Ikdyb3VwcyI7fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjUyOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6Omxpc3RlbmVycygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1MjoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjpsaXN0ZW5lcnMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjk6Imxpc3RlbmVycyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6ODoiZmlsZW5hbWUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToieHBhdGgiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo5OiJcRE9NWFBhdGgiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo4OiJET01YUGF0aCI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo3OTE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo4MDI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1MjoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cRXh0ZW5zaW9uQ29sbGVjdGlvbiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE5OiJFeHRlbnNpb25Db2xsZWN0aW9uIjt9fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NjI6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6Z2V0Qm9vbGVhbkF0dHJpYnV0ZSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2MjoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjpnZXRCb29sZWFuQXR0cmlidXRlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiZ2V0Qm9vbGVhbkF0dHJpYnV0ZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NzoiZWxlbWVudCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjExOiJcRE9NRWxlbWVudCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEwOiJET01FbGVtZW50Ijt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjk6ImF0dHJpYnV0ZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo3OiJkZWZhdWx0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjgwNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjgxNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjYyOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmdldEludGVnZXJBdHRyaWJ1dGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjI6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6Z2V0SW50ZWdlckF0dHJpYnV0ZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6ImdldEludGVnZXJBdHRyaWJ1dGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6ImVsZW1lbnQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoxMToiXERPTUVsZW1lbnQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMDoiRE9NRWxlbWVudCI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo5OiJhdHRyaWJ1dGUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NzoiZGVmYXVsdCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo4MTY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo4MjY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo2MToiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjpnZXRTdHJpbmdBdHRyaWJ1dGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjE6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6Z2V0U3RyaW5nQXR0cmlidXRlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxODoiZ2V0U3RyaW5nQXR0cmlidXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo3OiJlbGVtZW50IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MTE6IlxET01FbGVtZW50IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTA6IkRPTUVsZW1lbnQiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6OToiYXR0cmlidXRlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjgyODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjgzNTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE51bGxhYmxlIjoxOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE51bGxhYmxlAHJlYWxUeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjUzOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmdldEludGVnZXIoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTM6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6Z2V0SW50ZWdlcigpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTA6ImdldEludGVnZXIiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6InZhbHVlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6ImRlZmF1bHQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODM3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODQ0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDY6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6cGhwKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ2OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OnBocCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MzoicGhwIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo4OiJmaWxlbmFtZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJ4cGF0aCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjk6IlxET01YUGF0aCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6IkRPTVhQYXRoIjt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjg0NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjkzMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM2OiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxQaHAiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czozOiJQaHAiO319czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1MDoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjpwaHB1bml0KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUwOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OnBocHVuaXQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6InBocHVuaXQiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjg6ImZpbGVuYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjg6ImRvY3VtZW50IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MTI6IlxET01Eb2N1bWVudCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJET01Eb2N1bWVudCI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo5MzM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMDgyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDA6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXFBIUFVuaXQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo3OiJQSFBVbml0Ijt9fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTI6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6Z2V0Q29sb3JzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUyOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmdldENvbG9ycygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiZ2V0Q29sb3JzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo4OiJkb2N1bWVudCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjEyOiJcRE9NRG9jdW1lbnQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMToiRE9NRG9jdW1lbnQiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTA4NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwOTk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1MzoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjpnZXRDb2x1bW5zKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAdHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO31zOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjMwO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTM6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6Z2V0Q29sdW1ucygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTA6ImdldENvbHVtbnMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjg6ImRvY3VtZW50IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MTI6IlxET01Eb2N1bWVudCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJET01Eb2N1bWVudCI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMTA0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTExNztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTI6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6dGVzdFN1aXRlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUyOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OnRlc3RTdWl0ZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToidGVzdFN1aXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo4OiJmaWxlbmFtZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJ4cGF0aCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjk6IlxET01YUGF0aCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6IkRPTVhQYXRoIjt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjExMTk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMjE3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTI6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXFRlc3RTdWl0ZUNvbGxlY3Rpb24iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiVGVzdFN1aXRlQ29sbGVjdGlvbiI7fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjYzOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmdldFRlc3RTdWl0ZUVsZW1lbnRzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MTE6IlxET01FbGVtZW50IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTA6IkRPTUVsZW1lbnQiO319czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozMDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjYzOiJcUEhQVW5pdFxUZXh0VUlcWG1sQ29uZmlndXJhdGlvblxMb2FkZXI6OmdldFRlc3RTdWl0ZUVsZW1lbnRzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMDoiZ2V0VGVzdFN1aXRlRWxlbWVudHMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6InhwYXRoIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6OToiXERPTVhQYXRoIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6ODoiRE9NWFBhdGgiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTIyMjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEyNDg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTA6IlxQSFBVbml0XFRleHRVSVxYbWxDb25maWd1cmF0aW9uXExvYWRlcjo6ZWxlbWVudCgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1MDoiXFBIUFVuaXRcVGV4dFVJXFhtbENvbmZpZ3VyYXRpb25cTG9hZGVyOjplbGVtZW50KCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo3OiJlbGVtZW50Ijt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJ4cGF0aCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjk6IlxET01YUGF0aCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6IkRPTVhQYXRoIjt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6ImVsZW1lbnQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTI1MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEyNjM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xOdWxsYWJsZSI6MTp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xOdWxsYWJsZQByZWFsVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjExOiJcRE9NRWxlbWVudCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEwOiJET01FbGVtZW50Ijt9fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX19czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHVzZWRUcmFpdHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NjM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMjY0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBtZXRhZGF0YSI7YTowOnt9fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGludGVyZmFjZXMiO2E6MDp7fXM6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAdHJhaXRzIjthOjA6e31zOjQwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGVudW1zIjthOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG1ldGFkYXRhIjthOjA6e319";