1778692617
441d63ebbc39eba359c9061ece8482bd-phpdoc%3A345ded838d6301958cd10660ed6fab55-97f9b6a987211ba6d09dd4c374e47184
s:90168:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjE5OiJHdWlkZXNFeHRlbnNpb24ucGhwIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWVzcGFjZXMiO2E6MTp7czo0MToiXHBocERvY3VtZW50b3JcR3VpZGVzXERlcGVuZGVuY3lJbmplY3Rpb24iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MToiXHBocERvY3VtZW50b3JcR3VpZGVzXERlcGVuZGVuY3lJbmplY3Rpb24iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiRGVwZW5kZW5jeUluamVjdGlvbiI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGluY2x1ZGVzIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGZ1bmN0aW9ucyI7YToyOntzOjU3OiJccGhwRG9jdW1lbnRvclxHdWlkZXNcRGVwZW5kZW5jeUluamVjdGlvblx0ZW1wbGF0ZUFycmF5KCkiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fIjo5OntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6ImlucHV0IjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjY6ImZvcm1hdCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uIjoyOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAGV4cHJlc3Npb24iO3M6NjoiJ2h0bWwnIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAHBhcnRzIjthOjA6e319czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ5NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjUwMztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTc6IlxwaHBEb2N1bWVudG9yXEd1aWRlc1xEZXBlbmRlbmN5SW5qZWN0aW9uXHRlbXBsYXRlQXJyYXkoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEzOiJ0ZW1wbGF0ZUFycmF5Ijt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0ODoiSGVscGVyIGZ1bmN0aW9uIHRvIGNvbmZpZ3VyZSBtdWx0aXBsZSB0ZW1wbGF0ZXMuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjc1OiJUaGlzIGZ1bmN0aW9uIGlzIHVzZWQgdG8gY29uZmlndXJlIHRoZSB0ZW1wbGF0ZXMgaW4gdGhlIGNvbmZpZ3VyYXRpb24gZmlsZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtPOjQyOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ2xhc3NTdHJpbmciOjE6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ2xhc3NTdHJpbmcAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozMjoiXHBocERvY3VtZW50b3JcR3VpZGVzXE5vZGVzXE5vZGUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo0OiJOb2RlIjt9fXM6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjU6ImlucHV0IjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7Tzo0NzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBzZXVkb1R5cGVzXEFycmF5U2hhcGUiOjE6e3M6NTQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcQXJyYXlTaGFwZQBpdGVtcyI7YTozOntpOjA7Tzo1MToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBzZXVkb1R5cGVzXEFycmF5U2hhcGVJdGVtIjozOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBzZXVkb1R5cGVzXFNoYXBlSXRlbQBrZXkiO3M6NDoibm9kZSI7czo1MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQc2V1ZG9UeXBlc1xTaGFwZUl0ZW0AdmFsdWUiO086NDI6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDbGFzc1N0cmluZyI6MTp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDbGFzc1N0cmluZwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjMyOiJccGhwRG9jdW1lbnRvclxHdWlkZXNcTm9kZXNcTm9kZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjQ6Ik5vZGUiO319czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQc2V1ZG9UeXBlc1xTaGFwZUl0ZW0Ab3B0aW9uYWwiO2I6MDt9aToxO086NTE6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQc2V1ZG9UeXBlc1xBcnJheVNoYXBlSXRlbSI6Mzp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQc2V1ZG9UeXBlc1xTaGFwZUl0ZW0Aa2V5IjtzOjQ6ImZpbGUiO3M6NTM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcU2hhcGVJdGVtAHZhbHVlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcU2hhcGVJdGVtAG9wdGlvbmFsIjtiOjA7fWk6MjtPOjUxOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcQXJyYXlTaGFwZUl0ZW0iOjM6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcU2hhcGVJdGVtAGtleSI7czo2OiJmb3JtYXQiO3M6NTM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcU2hhcGVJdGVtAHZhbHVlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcU2hhcGVJdGVtAG9wdGlvbmFsIjtiOjA7fX19czoxMDoiACoAa2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5S2V5IjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO31zOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjQwOiJwaHBEb2N1bWVudG9yXEd1aWRlc1xEZXBlbmRlbmN5SW5qZWN0aW9uIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YToyMjp7czo3OiJFeGNsdWRlIjtzOjM5OiJwaHBEb2N1bWVudG9yXEZpbGVTeXN0ZW1cRmluZGVyXEV4Y2x1ZGUiO3M6MjQ6IlJhd05vZGVFc2NhcGVUcmFuc2Zvcm1lciI7czo3MToicGhwRG9jdW1lbnRvclxHdWlkZXNcQ29tcGlsZXJcTm9kZVRyYW5zZm9ybWVyc1xSYXdOb2RlRXNjYXBlVHJhbnNmb3JtZXIiO3M6MTY6Ik5vZGVSZW5kZXJlclBhc3MiO3M6NjY6InBocERvY3VtZW50b3JcR3VpZGVzXERlcGVuZGVuY3lJbmplY3Rpb25cQ29tcGlsZXJcTm9kZVJlbmRlcmVyUGFzcyI7czoxNToiUGFyc2VyUnVsZXNQYXNzIjtzOjY1OiJwaHBEb2N1bWVudG9yXEd1aWRlc1xEZXBlbmRlbmN5SW5qZWN0aW9uXENvbXBpbGVyXFBhcnNlclJ1bGVzUGFzcyI7czoxMjoiUmVuZGVyZXJQYXNzIjtzOjYyOiJwaHBEb2N1bWVudG9yXEd1aWRlc1xEZXBlbmRlbmN5SW5qZWN0aW9uXENvbXBpbGVyXFJlbmRlcmVyUGFzcyI7czo0OiJOb2RlIjtzOjMxOiJwaHBEb2N1bWVudG9yXEd1aWRlc1xOb2Rlc1xOb2RlIjtzOjE1OiJQcm9qZWN0U2V0dGluZ3MiO3M6NDU6InBocERvY3VtZW50b3JcR3VpZGVzXFNldHRpbmdzXFByb2plY3RTZXR0aW5ncyI7czoxNToiU2V0dGluZ3NNYW5hZ2VyIjtzOjQ1OiJwaHBEb2N1bWVudG9yXEd1aWRlc1xTZXR0aW5nc1xTZXR0aW5nc01hbmFnZXIiO3M6MTE6IlRoZW1lQ29uZmlnIjtzOjQzOiJwaHBEb2N1bWVudG9yXEd1aWRlc1xUd2lnXFRoZW1lXFRoZW1lQ29uZmlnIjtzOjEyOiJUaGVtZU1hbmFnZXIiO3M6NDQ6InBocERvY3VtZW50b3JcR3VpZGVzXFR3aWdcVGhlbWVcVGhlbWVNYW5hZ2VyIjtzOjg6IkxvZ0xldmVsIjtzOjE2OiJQc3JcTG9nXExvZ0xldmVsIjtzOjE5OiJBcnJheU5vZGVEZWZpbml0aW9uIjtzOjYzOiJTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxCdWlsZGVyXEFycmF5Tm9kZURlZmluaXRpb24iO3M6MTE6IlRyZWVCdWlsZGVyIjtzOjU1OiJTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxCdWlsZGVyXFRyZWVCdWlsZGVyIjtzOjIyOiJDb25maWd1cmF0aW9uSW50ZXJmYWNlIjtzOjU4OiJTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxDb25maWd1cmF0aW9uSW50ZXJmYWNlIjtzOjExOiJGaWxlTG9jYXRvciI7czozNjoiU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEZpbGVMb2NhdG9yIjtzOjIxOiJDb21waWxlclBhc3NJbnRlcmZhY2UiO3M6Njg6IlN5bWZvbnlcQ29tcG9uZW50XERlcGVuZGVuY3lJbmplY3Rpb25cQ29tcGlsZXJcQ29tcGlsZXJQYXNzSW50ZXJmYWNlIjtzOjE2OiJDb250YWluZXJCdWlsZGVyIjtzOjU0OiJTeW1mb255XENvbXBvbmVudFxEZXBlbmRlbmN5SW5qZWN0aW9uXENvbnRhaW5lckJ1aWxkZXIiO3M6OToiRXh0ZW5zaW9uIjtzOjU3OiJTeW1mb255XENvbXBvbmVudFxEZXBlbmRlbmN5SW5qZWN0aW9uXEV4dGVuc2lvblxFeHRlbnNpb24iO3M6MjU6IlByZXBlbmRFeHRlbnNpb25JbnRlcmZhY2UiO3M6NzM6IlN5bWZvbnlcQ29tcG9uZW50XERlcGVuZGVuY3lJbmplY3Rpb25cRXh0ZW5zaW9uXFByZXBlbmRFeHRlbnNpb25JbnRlcmZhY2UiO3M6MTM6IlBocEZpbGVMb2FkZXIiO3M6NTg6IlN5bWZvbnlcQ29tcG9uZW50XERlcGVuZGVuY3lJbmplY3Rpb25cTG9hZGVyXFBocEZpbGVMb2FkZXIiO3M6OToiUmVmZXJlbmNlIjtzOjQ3OiJTeW1mb255XENvbXBvbmVudFxEZXBlbmRlbmN5SW5qZWN0aW9uXFJlZmVyZW5jZSI7czoxOToiSHRtbFNhbml0aXplckNvbmZpZyI7czo1MToiU3ltZm9ueVxDb21wb25lbnRcSHRtbFNhbml0aXplclxIdG1sU2FuaXRpemVyQ29uZmlnIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo2MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAG1ldGFkYXRhIjthOjA6e31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AYXR0cmlidXRlcyI7YTowOnt9fXM6NTI6IlxwaHBEb2N1bWVudG9yXEd1aWRlc1xEZXBlbmRlbmN5SW5qZWN0aW9uXHRlbXBsYXRlKCkiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fIjo5OntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoibm9kZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo4OiJ0ZW1wbGF0ZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo2OiJmb3JtYXQiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjY6IidodG1sJyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBwYXJ0cyI7YTowOnt9fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1MTQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1MjE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZ1bmN0aW9uXwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUyOiJccGhwRG9jdW1lbnRvclxHdWlkZXNcRGVwZW5kZW5jeUluamVjdGlvblx0ZW1wbGF0ZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6ODoidGVtcGxhdGUiO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjM5OiJIZWxwZXIgZnVuY3Rpb24gdG8gY29uZmlndXJlIHRlbXBsYXRlcy4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NzU6IlRoaXMgZnVuY3Rpb24gaXMgdXNlZCB0byBjb25maWd1cmUgdGhlIHRlbXBsYXRlcyBpbiB0aGUgY29uZmlndXJhdGlvbiBmaWxlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjI6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7Tzo0MjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENsYXNzU3RyaW5nIjoxOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENsYXNzU3RyaW5nAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzI6IlxwaHBEb2N1bWVudG9yXEd1aWRlc1xOb2Rlc1xOb2RlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoiTm9kZSI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6Im5vZGUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7Tzo0NzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBzZXVkb1R5cGVzXEFycmF5U2hhcGUiOjE6e3M6NTQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcQXJyYXlTaGFwZQBpdGVtcyI7YTozOntpOjA7Tzo1MToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBzZXVkb1R5cGVzXEFycmF5U2hhcGVJdGVtIjozOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBzZXVkb1R5cGVzXFNoYXBlSXRlbQBrZXkiO3M6NDoibm9kZSI7czo1MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQc2V1ZG9UeXBlc1xTaGFwZUl0ZW0AdmFsdWUiO086NDI6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDbGFzc1N0cmluZyI6MTp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDbGFzc1N0cmluZwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjMyOiJccGhwRG9jdW1lbnRvclxHdWlkZXNcTm9kZXNcTm9kZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjQ6Ik5vZGUiO319czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQc2V1ZG9UeXBlc1xTaGFwZUl0ZW0Ab3B0aW9uYWwiO2I6MDt9aToxO086NTE6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQc2V1ZG9UeXBlc1xBcnJheVNoYXBlSXRlbSI6Mzp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQc2V1ZG9UeXBlc1xTaGFwZUl0ZW0Aa2V5IjtzOjQ6ImZpbGUiO3M6NTM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcU2hhcGVJdGVtAHZhbHVlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcU2hhcGVJdGVtAG9wdGlvbmFsIjtiOjA7fWk6MjtPOjUxOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcQXJyYXlTaGFwZUl0ZW0iOjM6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcU2hhcGVJdGVtAGtleSI7czo2OiJmb3JtYXQiO3M6NTM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcU2hhcGVJdGVtAHZhbHVlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcU2hhcGVJdGVtAG9wdGlvbmFsIjtiOjA7fX19fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MTA3O3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo2MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRnVuY3Rpb25fAG1ldGFkYXRhIjthOjA6e31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGdW5jdGlvbl8AYXR0cmlidXRlcyI7YTowOnt9fX1zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNvbnN0YW50cyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjbGFzc2VzIjthOjE6e3M6NTc6IlxwaHBEb2N1bWVudG9yXEd1aWRlc1xEZXBlbmRlbmN5SW5qZWN0aW9uXEd1aWRlc0V4dGVuc2lvbiI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18iOjE1OntzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AaW1wbGVtZW50cyI7YTozOntzOjY5OiJcU3ltZm9ueVxDb21wb25lbnRcRGVwZW5kZW5jeUluamVjdGlvblxDb21waWxlclxDb21waWxlclBhc3NJbnRlcmZhY2UiO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2OToiXFN5bWZvbnlcQ29tcG9uZW50XERlcGVuZGVuY3lJbmplY3Rpb25cQ29tcGlsZXJcQ29tcGlsZXJQYXNzSW50ZXJmYWNlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjE6IkNvbXBpbGVyUGFzc0ludGVyZmFjZSI7fXM6NTk6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxDb25maWd1cmF0aW9uSW50ZXJmYWNlIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTk6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxDb25maWd1cmF0aW9uSW50ZXJmYWNlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjI6IkNvbmZpZ3VyYXRpb25JbnRlcmZhY2UiO31zOjc0OiJcU3ltZm9ueVxDb21wb25lbnRcRGVwZW5kZW5jeUluamVjdGlvblxFeHRlbnNpb25cUHJlcGVuZEV4dGVuc2lvbkludGVyZmFjZSI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjc0OiJcU3ltZm9ueVxDb21wb25lbnRcRGVwZW5kZW5jeUluamVjdGlvblxFeHRlbnNpb25cUHJlcGVuZEV4dGVuc2lvbkludGVyZmFjZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI1OiJQcmVwZW5kRXh0ZW5zaW9uSW50ZXJmYWNlIjt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBjb25zdGFudHMiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBwcm9wZXJ0aWVzIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AbWV0aG9kcyI7YTo3OntzOjgxOiJccGhwRG9jdW1lbnRvclxHdWlkZXNcRGVwZW5kZW5jeUluamVjdGlvblxHdWlkZXNFeHRlbnNpb246OmdldENvbmZpZ1RyZWVCdWlsZGVyKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxOTkyO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI2MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxMjA2OTt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1NjoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xEZWZpbml0aW9uXEJ1aWxkZXJcVHJlZUJ1aWxkZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMToiVHJlZUJ1aWxkZXIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6ODE6IlxwaHBEb2N1bWVudG9yXEd1aWRlc1xEZXBlbmRlbmN5SW5qZWN0aW9uXEd1aWRlc0V4dGVuc2lvbjo6Z2V0Q29uZmlnVHJlZUJ1aWxkZXIoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIwOiJnZXRDb25maWdUcmVlQnVpbGRlciI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjY1OiJccGhwRG9jdW1lbnRvclxHdWlkZXNcRGVwZW5kZW5jeUluamVjdGlvblxHdWlkZXNFeHRlbnNpb246OmxvYWQoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6ImNvbmZpZ3MiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTU6IlxTeW1mb255XENvbXBvbmVudFxEZXBlbmRlbmN5SW5qZWN0aW9uXENvbnRhaW5lckJ1aWxkZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiQ29udGFpbmVyQnVpbGRlciI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjk6ImNvbnRhaW5lciI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjY0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjEyMTExO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM5MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxNzEyMzt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xWb2lkXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjY1OiJccGhwRG9jdW1lbnRvclxHdWlkZXNcRGVwZW5kZW5jeUluamVjdGlvblxHdWlkZXNFeHRlbnNpb246OmxvYWQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjQ6ImxvYWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjc6ImNvbmZpZ3MiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MTA3O3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjY2OiJccGhwRG9jdW1lbnRvclxHdWlkZXNcRGVwZW5kZW5jeUluamVjdGlvblxHdWlkZXNFeHRlbnNpb246OnBhdGhzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMjoiZGVmYXVsdFZhbHVlIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24iOjI6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AZXhwcmVzc2lvbiI7czoyOiJbXSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBwYXJ0cyI7YTowOnt9fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozOTM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTcxNzY7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDA0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE3NTM0O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjY0OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cQnVpbGRlclxBcnJheU5vZGVEZWZpbml0aW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6IkFycmF5Tm9kZURlZmluaXRpb24iO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjY6IlxwaHBEb2N1bWVudG9yXEd1aWRlc1xEZXBlbmRlbmN5SW5qZWN0aW9uXEd1aWRlc0V4dGVuc2lvbjo6cGF0aHMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjU6InBhdGhzIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjA6IiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEyOiJkZWZhdWx0VmFsdWUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MTA3O3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjY4OiJccGhwRG9jdW1lbnRvclxHdWlkZXNcRGVwZW5kZW5jeUluamVjdGlvblxHdWlkZXNFeHRlbnNpb246OnByb2Nlc3MoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTU6IlxTeW1mb255XENvbXBvbmVudFxEZXBlbmRlbmN5SW5qZWN0aW9uXENvbnRhaW5lckJ1aWxkZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiQ29udGFpbmVyQnVpbGRlciI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjk6ImNvbnRhaW5lciI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDA2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE3NTQxO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQxMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxNzc3MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xWb2lkXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjY4OiJccGhwRG9jdW1lbnRvclxHdWlkZXNcRGVwZW5kZW5jeUluamVjdGlvblxHdWlkZXNFeHRlbnNpb246OnByb2Nlc3MoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6InByb2Nlc3MiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo3NzoiXHBocERvY3VtZW50b3JcR3VpZGVzXERlcGVuZGVuY3lJbmplY3Rpb25cR3VpZGVzRXh0ZW5zaW9uOjpnZXRDb25maWd1cmF0aW9uKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo2OiJjb25maWciO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTU6IlxTeW1mb255XENvbXBvbmVudFxEZXBlbmRlbmN5SW5qZWN0aW9uXENvbnRhaW5lckJ1aWxkZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiQ29udGFpbmVyQnVpbGRlciI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjk6ImNvbnRhaW5lciI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDE0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE3ODExO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQxNztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxNzk0NDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1OToiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xEZWZpbml0aW9uXENvbmZpZ3VyYXRpb25JbnRlcmZhY2UiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMjoiQ29uZmlndXJhdGlvbkludGVyZmFjZSI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo3NzoiXHBocERvY3VtZW50b3JcR3VpZGVzXERlcGVuZGVuY3lJbmplY3Rpb25cR3VpZGVzRXh0ZW5zaW9uOjpnZXRDb25maWd1cmF0aW9uKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiZ2V0Q29uZmlndXJhdGlvbiI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjA6IiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NjoiY29uZmlnIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjEwNztzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo2ODoiXHBocERvY3VtZW50b3JcR3VpZGVzXERlcGVuZGVuY3lJbmplY3Rpb25cR3VpZGVzRXh0ZW5zaW9uOjpwcmVwZW5kKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU1OiJcU3ltZm9ueVxDb21wb25lbnRcRGVwZW5kZW5jeUluamVjdGlvblxDb250YWluZXJCdWlsZGVyIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTY6IkNvbnRhaW5lckJ1aWxkZXIiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo5OiJjb250YWluZXIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQxOTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxNzk1MTt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0MzY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTg1NTc7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2ODoiXHBocERvY3VtZW50b3JcR3VpZGVzXERlcGVuZGVuY3lJbmplY3Rpb25cR3VpZGVzRXh0ZW5zaW9uOjpwcmVwZW5kKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo3OiJwcmVwZW5kIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6ODA6IlxwaHBEb2N1bWVudG9yXEd1aWRlc1xEZXBlbmRlbmN5SW5qZWN0aW9uXEd1aWRlc0V4dGVuc2lvbjo6Y29uZmlndXJlU2FuaXRpemVycygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTM6e3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTM6InJhd05vZGVDb25maWciO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTU6IlxTeW1mb255XENvbXBvbmVudFxEZXBlbmRlbmN5SW5qZWN0aW9uXENvbnRhaW5lckJ1aWxkZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiQ29udGFpbmVyQnVpbGRlciI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjk6ImNvbnRhaW5lciI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDM5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE4NjE4O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ4NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToyMDU3MTt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xWb2lkXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjgwOiJccGhwRG9jdW1lbnRvclxHdWlkZXNcRGVwZW5kZW5jeUluamVjdGlvblxHdWlkZXNFeHRlbnNpb246OmNvbmZpZ3VyZVNhbml0aXplcnMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE5OiJjb25maWd1cmVTYW5pdGl6ZXJzIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjA6IiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTM6InJhd05vZGVDb25maWciO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MTA3O3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX19czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHVzZWRUcmFpdHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0ODU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTc6IlxwaHBEb2N1bWVudG9yXEd1aWRlc1xEZXBlbmRlbmN5SW5qZWN0aW9uXEd1aWRlc0V4dGVuc2lvbiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJHdWlkZXNFeHRlbnNpb24iO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZG9jQmxvY2siO047czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHBhcmVudCI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU4OiJcU3ltZm9ueVxDb21wb25lbnRcRGVwZW5kZW5jeUluamVjdGlvblxFeHRlbnNpb25cRXh0ZW5zaW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiRXh0ZW5zaW9uIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGZpbmFsIjtiOjE7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHJlYWRPbmx5IjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AYXR0cmlidXRlcyI7YTowOnt9fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGludGVyZmFjZXMiO2E6MDp7fXM6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAdHJhaXRzIjthOjA6e31zOjQwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGVudW1zIjthOjA6e31zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGhhc2giO3M6MzI6Ijk3ZjliNmE5ODcyMTFiYTZkMDlkZDRjMzc0ZTQ3MTg0IjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHBhdGgiO3M6NzE6InZlbmRvci9waHBkb2N1bWVudG9yL2d1aWRlcy9zcmMvRGVwZW5kZW5jeUluamVjdGlvbi9HdWlkZXNFeHRlbnNpb24ucGhwIjtzOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHNvdXJjZSI7czoyMTU0MDoiPD9waHAKCmRlY2xhcmUoc3RyaWN0X3R5cGVzPTEpOwoKLyoqCiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHBocERvY3VtZW50b3IuCiAqCiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFCiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLgogKgogKiBAbGluayBodHRwczovL3BocGRvYy5vcmcKICovCgpuYW1lc3BhY2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcRGVwZW5kZW5jeUluamVjdGlvbjsKCnVzZSBwaHBEb2N1bWVudG9yXEZpbGVTeXN0ZW1cRmluZGVyXEV4Y2x1ZGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xDb21waWxlclxOb2RlVHJhbnNmb3JtZXJzXFJhd05vZGVFc2NhcGVUcmFuc2Zvcm1lcjsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXERlcGVuZGVuY3lJbmplY3Rpb25cQ29tcGlsZXJcTm9kZVJlbmRlcmVyUGFzczsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXERlcGVuZGVuY3lJbmplY3Rpb25cQ29tcGlsZXJcUGFyc2VyUnVsZXNQYXNzOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcRGVwZW5kZW5jeUluamVjdGlvblxDb21waWxlclxSZW5kZXJlclBhc3M7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xOb2Rlc1xOb2RlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcU2V0dGluZ3NcUHJvamVjdFNldHRpbmdzOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcU2V0dGluZ3NcU2V0dGluZ3NNYW5hZ2VyOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcVHdpZ1xUaGVtZVxUaGVtZUNvbmZpZzsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFR3aWdcVGhlbWVcVGhlbWVNYW5hZ2VyOwp1c2UgUHNyXExvZ1xMb2dMZXZlbDsKdXNlIFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xEZWZpbml0aW9uXEJ1aWxkZXJcQXJyYXlOb2RlRGVmaW5pdGlvbjsKdXNlIFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xEZWZpbml0aW9uXEJ1aWxkZXJcVHJlZUJ1aWxkZXI7CnVzZSBTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxDb25maWd1cmF0aW9uSW50ZXJmYWNlOwp1c2UgU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEZpbGVMb2NhdG9yOwp1c2UgU3ltZm9ueVxDb21wb25lbnRcRGVwZW5kZW5jeUluamVjdGlvblxDb21waWxlclxDb21waWxlclBhc3NJbnRlcmZhY2U7CnVzZSBTeW1mb255XENvbXBvbmVudFxEZXBlbmRlbmN5SW5qZWN0aW9uXENvbnRhaW5lckJ1aWxkZXI7CnVzZSBTeW1mb255XENvbXBvbmVudFxEZXBlbmRlbmN5SW5qZWN0aW9uXEV4dGVuc2lvblxFeHRlbnNpb247CnVzZSBTeW1mb255XENvbXBvbmVudFxEZXBlbmRlbmN5SW5qZWN0aW9uXEV4dGVuc2lvblxQcmVwZW5kRXh0ZW5zaW9uSW50ZXJmYWNlOwp1c2UgU3ltZm9ueVxDb21wb25lbnRcRGVwZW5kZW5jeUluamVjdGlvblxMb2FkZXJcUGhwRmlsZUxvYWRlcjsKdXNlIFN5bWZvbnlcQ29tcG9uZW50XERlcGVuZGVuY3lJbmplY3Rpb25cUmVmZXJlbmNlOwp1c2UgU3ltZm9ueVxDb21wb25lbnRcSHRtbFNhbml0aXplclxIdG1sU2FuaXRpemVyQ29uZmlnOwoKdXNlIGZ1bmN0aW9uIGFycmF5X2tleXM7CnVzZSBmdW5jdGlvbiBhcnJheV9tYXA7CnVzZSBmdW5jdGlvbiBhcnJheV9tZXJnZTsKdXNlIGZ1bmN0aW9uIGFycmF5X3ZhbHVlczsKdXNlIGZ1bmN0aW9uIGFzc2VydDsKdXNlIGZ1bmN0aW9uIGRpcm5hbWU7CnVzZSBmdW5jdGlvbiBpc19hcnJheTsKdXNlIGZ1bmN0aW9uIGlzX2ludDsKdXNlIGZ1bmN0aW9uIGlzX3N0cmluZzsKdXNlIGZ1bmN0aW9uIHBhdGhpbmZvOwp1c2UgZnVuY3Rpb24gdHJpbTsKdXNlIGZ1bmN0aW9uIHZhcl9leHBvcnQ7CgpmaW5hbCBjbGFzcyBHdWlkZXNFeHRlbnNpb24gZXh0ZW5kcyBFeHRlbnNpb24gaW1wbGVtZW50cyBDb21waWxlclBhc3NJbnRlcmZhY2UsIENvbmZpZ3VyYXRpb25JbnRlcmZhY2UsIFByZXBlbmRFeHRlbnNpb25JbnRlcmZhY2UKewogICAgcHVibGljIGZ1bmN0aW9uIGdldENvbmZpZ1RyZWVCdWlsZGVyKCk6IFRyZWVCdWlsZGVyCiAgICB7CiAgICAgICAgJHRyZWVCdWlsZGVyID0gbmV3IFRyZWVCdWlsZGVyKCdndWlkZXMnKTsKICAgICAgICAkcm9vdE5vZGUgPSAkdHJlZUJ1aWxkZXItPmdldFJvb3ROb2RlKCk7CiAgICAgICAgYXNzZXJ0KCRyb290Tm9kZSBpbnN0YW5jZW9mIEFycmF5Tm9kZURlZmluaXRpb24pOwoKICAgICAgICAkcm9vdE5vZGUKICAgICAgICAgICAgLT5maXhYbWxDb25maWcoJ3RlbXBsYXRlJykKICAgICAgICAgICAgLT5maXhYbWxDb25maWcoJ2ludmVudG9yeScsICdpbnZlbnRvcmllcycpCiAgICAgICAgICAgIC0+Y2hpbGRyZW4oKQogICAgICAgICAgICAgICAgLT5hcnJheU5vZGUoJ3Byb2plY3QnKQogICAgICAgICAgICAgICAgICAgIC0+Y2hpbGRyZW4oKQogICAgICAgICAgICAgICAgICAgICAgICAtPnNjYWxhck5vZGUoJ3RpdGxlJyktPmVuZCgpCiAgICAgICAgICAgICAgICAgICAgICAgIC0+c2NhbGFyTm9kZSgndmVyc2lvbicpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmJlZm9yZU5vcm1hbGl6YXRpb24oKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5hbHdheXMoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byByZXZlcnQgdGhlIHBocGl6ZSBjYWxsIGluIFhtbFV0aWxzLiBWZXJzaW9uIGlzIGFsd2F5cyBhIHN0cmluZyEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWMgZnVuY3Rpb24gKCR2YWx1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWlzX2ludCgkdmFsdWUpICYmICFpc19zdHJpbmcoJHZhbHVlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZhcl9leHBvcnQoJHZhbHVlLCB0cnVlKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlzX3N0cmluZygkdmFsdWUpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJpbSgkdmFsdWUsICInIik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAkdmFsdWU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgLT5lbmQoKQogICAgICAgICAgICAgICAgICAgICAgICAtPnNjYWxhck5vZGUoJ3JlbGVhc2UnKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5iZWZvcmVOb3JtYWxpemF0aW9uKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+YWx3YXlzKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gV2UgbmVlZCB0byByZXZlcnQgdGhlIHBocGl6ZSBjYWxsIGluIFhtbFV0aWxzLiBWZXJzaW9uIGlzIGFsd2F5cyBhIHN0cmluZyEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWMgZnVuY3Rpb24gKCR2YWx1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWlzX2ludCgkdmFsdWUpICYmICFpc19zdHJpbmcoJHZhbHVlKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZhcl9leHBvcnQoJHZhbHVlLCB0cnVlKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlzX3N0cmluZygkdmFsdWUpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJpbSgkdmFsdWUsICInIik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAkdmFsdWU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgLT5lbmQoKQogICAgICAgICAgICAgICAgICAgICAgICAtPnNjYWxhck5vZGUoJ2NvcHlyaWdodCcpLT5lbmQoKQogICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgIC0+YXJyYXlOb2RlKCdpbnZlbnRvcmllcycpCiAgICAgICAgICAgICAgICAgICAgLT5hcnJheVByb3RvdHlwZSgpCiAgICAgICAgICAgICAgICAgICAgICAgIC0+Y2hpbGRyZW4oKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5zY2FsYXJOb2RlKCdpZCcpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5pc1JlcXVpcmVkKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPnNjYWxhck5vZGUoJ3VybCcpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5pc1JlcXVpcmVkKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgLT5lbmQoKQogICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgIC0+c2NhbGFyTm9kZSgndGhlbWUnKS0+ZW5kKCkKICAgICAgICAgICAgICAgIC0+c2NhbGFyTm9kZSgnaW5wdXQnKS0+ZW5kKCkKICAgICAgICAgICAgICAgIC0+c2NhbGFyTm9kZSgnaW5wdXRfZmlsZScpLT5lbmQoKQogICAgICAgICAgICAgICAgLT5zY2FsYXJOb2RlKCdpbmRleF9uYW1lJyktPmVuZCgpCiAgICAgICAgICAgICAgICAtPmFycmF5Tm9kZSgnZXhjbHVkZScpCiAgICAgICAgICAgICAgICAgICAgLT5hZGREZWZhdWx0c0lmTm90U2V0KCkKICAgICAgICAgICAgICAgICAgICAtPmZpeFhtbENvbmZpZygncGF0aCcpCiAgICAgICAgICAgICAgICAgICAgLT5jaGlsZHJlbigpCiAgICAgICAgICAgICAgICAgICAgLT5ib29sZWFuTm9kZSgnaGlkZGVuJyktPmRlZmF1bHRUcnVlKCktPmVuZCgpCiAgICAgICAgICAgICAgICAgICAgLT5ib29sZWFuTm9kZSgnc3ltbGlua3MnKS0+ZGVmYXVsdFRydWUoKS0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAtPmFwcGVuZCgkdGhpcy0+cGF0aHMoKSkKICAgICAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAtPnNjYWxhck5vZGUoJ291dHB1dCcpLT5lbmQoKQogICAgICAgICAgICAgICAgLT5zY2FsYXJOb2RlKCdpbnB1dF9mb3JtYXQnKS0+ZW5kKCkKICAgICAgICAgICAgICAgIC0+YXJyYXlOb2RlKCdvdXRwdXRfZm9ybWF0JykKICAgICAgICAgICAgICAgICAgICAtPmRlZmF1bHRWYWx1ZShbJ2h0bWwnLCAnaW50ZXJsaW5rJ10pCiAgICAgICAgICAgICAgICAgICAgLT5iZWZvcmVOb3JtYWxpemF0aW9uKCkKICAgICAgICAgICAgICAgICAgICAtPmlmU3RyaW5nKCkKICAgICAgICAgICAgICAgICAgICAtPnRoZW4oc3RhdGljIGZ1bmN0aW9uICgkdmFsdWUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFskdmFsdWVdOwogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgLT5lbmQoKQogICAgICAgICAgICAgICAgICAgIC0+c2NhbGFyUHJvdG90eXBlKCktPmVuZCgpCiAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAtPmFycmF5Tm9kZSgnaWdub3JlZF9kb21haW4nKQogICAgICAgICAgICAgICAgICAgIC0+ZGVmYXVsdFZhbHVlKFtdKQogICAgICAgICAgICAgICAgICAgIC0+YmVmb3JlTm9ybWFsaXphdGlvbigpCiAgICAgICAgICAgICAgICAgICAgLT5pZlN0cmluZygpCiAgICAgICAgICAgICAgICAgICAgLT50aGVuKHN0YXRpYyBmdW5jdGlvbiAoJHZhbHVlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBbJHZhbHVlXTsKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAtPnNjYWxhclByb3RvdHlwZSgpLT5lbmQoKQogICAgICAgICAgICAgICAgLT5lbmQoKQogICAgICAgICAgICAgICAgLT5zY2FsYXJOb2RlKCdsb2dfcGF0aCcpLT5lbmQoKQogICAgICAgICAgICAgICAgLT5zY2FsYXJOb2RlKCdmYWlsX29uX2xvZycpLT5lbmQoKQogICAgICAgICAgICAgICAgLT5zY2FsYXJOb2RlKCdmYWlsX29uX2Vycm9yJyktPmVuZCgpCiAgICAgICAgICAgICAgICAtPnNjYWxhck5vZGUoJ3Nob3dfcHJvZ3Jlc3MnKS0+ZW5kKCkKICAgICAgICAgICAgICAgIC0+c2NhbGFyTm9kZSgnbGlua3NfYXJlX3JlbGF0aXZlJyktPmVuZCgpCiAgICAgICAgICAgICAgICAtPnNjYWxhck5vZGUoJ21heF9tZW51X2RlcHRoJyktPmVuZCgpCiAgICAgICAgICAgICAgICAtPnNjYWxhck5vZGUoJ2F1dG9tYXRpY19tZW51JyktPmVuZCgpCiAgICAgICAgICAgICAgICAtPmFycmF5Tm9kZSgnYmFzZV90ZW1wbGF0ZV9wYXRocycpCiAgICAgICAgICAgICAgICAgICAgLT5kZWZhdWx0VmFsdWUoW10pCiAgICAgICAgICAgICAgICAgICAgLT5zY2FsYXJQcm90b3R5cGUoKS0+ZW5kKCkKICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgIC0+YXJyYXlOb2RlKCd0ZW1wbGF0ZXMnKQogICAgICAgICAgICAgICAgICAgIC0+YXJyYXlQcm90b3R5cGUoKQogICAgICAgICAgICAgICAgICAgICAgICAtPmNoaWxkcmVuKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+c2NhbGFyTm9kZSgnbm9kZScpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5pc1JlcXVpcmVkKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+c2NhbGFyTm9kZSgnZmlsZScpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5pc1JlcXVpcmVkKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+c2NhbGFyTm9kZSgnZm9ybWF0JykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmRlZmF1bHRWYWx1ZSgnaHRtbCcpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAtPmFycmF5Tm9kZSgncmF3X25vZGUnKQogICAgICAgICAgICAgICAgICAgIC0+Zml4WG1sQ29uZmlnKCdzYW5pdGl6ZXInKQogICAgICAgICAgICAgICAgICAgIC0+Y2hpbGRyZW4oKQogICAgICAgICAgICAgICAgICAgICAgICAtPmJvb2xlYW5Ob2RlKCdlc2NhcGUnKS0+ZGVmYXVsdFZhbHVlKGZhbHNlKS0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgLT5zY2FsYXJOb2RlKCdzYW5pdGl6ZXJfbmFtZScpLT5lbmQoKQogICAgICAgICAgICAgICAgICAgICAgICAtPmFycmF5Tm9kZSgnc2FuaXRpemVycycpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmRlZmF1bHRWYWx1ZShbXSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+dXNlQXR0cmlidXRlQXNLZXkoJ25hbWUnKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5hcnJheVByb3RvdHlwZSgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5maXhYbWxDb25maWcoJ2FsbG93X2VsZW1lbnQnKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+Zml4WG1sQ29uZmlnKCdkcm9wX2VsZW1lbnQnKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+Zml4WG1sQ29uZmlnKCdibG9ja19lbGVtZW50JykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmZpeFhtbENvbmZpZygnYWxsb3dfYXR0cmlidXRlJykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmZpeFhtbENvbmZpZygnZHJvcF9hdHRyaWJ1dGUnKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+Y2hpbGRyZW4oKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmJvb2xlYW5Ob2RlKCdhbGxvd19zYWZlX2VsZW1lbnRzJyktPmRlZmF1bHRWYWx1ZSh0cnVlKS0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5ib29sZWFuTm9kZSgnYWxsb3dfc3RhdGljX2VsZW1lbnRzJyktPmRlZmF1bHRWYWx1ZSh0cnVlKS0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5hcnJheU5vZGUoJ2FsbG93X2VsZW1lbnRzJykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+bm9ybWFsaXplS2V5cyhmYWxzZSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+dXNlQXR0cmlidXRlQXNLZXkoJ25hbWUnKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT52YXJpYWJsZVByb3RvdHlwZSgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5iZWZvcmVOb3JtYWxpemF0aW9uKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5pZkFycmF5KCktPnRoZW4oc3RhdGljIGZuICgkbikgPT4gJG5bJ2F0dHJpYnV0ZSddID8/ICRuKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPnZhbGlkYXRlKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5pZlRydWUoc3RhdGljIGZuICgkbik6IGJvb2wgPT4gIWlzX3N0cmluZygkbikgJiYgIWlzX2FycmF5KCRuKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT50aGVuSW52YWxpZCgnVGhlIHZhbHVlIG11c3QgYmUgZWl0aGVyIGEgc3RyaW5nIG9yIGFuIGFycmF5IG9mIHN0cmluZ3MuJykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5hcnJheU5vZGUoJ2Jsb2NrX2VsZW1lbnRzJykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+YmVmb3JlTm9ybWFsaXphdGlvbigpLT5jYXN0VG9BcnJheSgpLT5lbmQoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5zY2FsYXJQcm90b3R5cGUoKS0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5lbmQoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmFycmF5Tm9kZSgnZHJvcF9lbGVtZW50cycpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmJlZm9yZU5vcm1hbGl6YXRpb24oKS0+Y2FzdFRvQXJyYXkoKS0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+c2NhbGFyUHJvdG90eXBlKCktPmVuZCgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5hcnJheU5vZGUoJ2FsbG93X2F0dHJpYnV0ZXMnKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5ub3JtYWxpemVLZXlzKGZhbHNlKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT51c2VBdHRyaWJ1dGVBc0tleSgnbmFtZScpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPnZhcmlhYmxlUHJvdG90eXBlKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmJlZm9yZU5vcm1hbGl6YXRpb24oKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmlmQXJyYXkoKS0+dGhlbihzdGF0aWMgZm4gKCRuKSA9PiAkblsnZWxlbWVudCddID8/ICRuKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5lbmQoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmFycmF5Tm9kZSgnZHJvcF9hdHRyaWJ1dGVzJykKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+bm9ybWFsaXplS2V5cyhmYWxzZSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+dXNlQXR0cmlidXRlQXNLZXkoJ25hbWUnKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT52YXJpYWJsZVByb3RvdHlwZSgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5iZWZvcmVOb3JtYWxpemF0aW9uKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5pZkFycmF5KCktPnRoZW4oc3RhdGljIGZuICgkbikgPT4gJG5bJ2VsZW1lbnQnXSA/PyAkbikKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAtPnNjYWxhck5vZGUoJ2RlZmF1bHRfY29kZV9sYW5ndWFnZScpLT5kZWZhdWx0VmFsdWUoJycpLT5lbmQoKQogICAgICAgICAgICAgICAgLT5hcnJheU5vZGUoJ3RoZW1lcycpCiAgICAgICAgICAgICAgICAgICAgLT5kZWZhdWx0VmFsdWUoW10pCiAgICAgICAgICAgICAgICAgICAgLT5hcnJheVByb3RvdHlwZSgpCiAgICAgICAgICAgICAgICAgICAgICAgIC0+YmVmb3JlTm9ybWFsaXphdGlvbigpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPmlmVHJ1ZShzdGF0aWMgZm4gKCR2KSA9PiAhaXNfYXJyYXkoJHYpIHx8ICFpc3NldCgkdlsndGVtcGxhdGVzJ10pKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgLT50aGVuKHN0YXRpYyBmbiAoc3RyaW5nICR2KSA9PiBbJ3RlbXBsYXRlcycgPT4gKGFycmF5KSAkdl0pCiAgICAgICAgICAgICAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgLT5jaGlsZHJlbigpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPnNjYWxhck5vZGUoJ2V4dGVuZHMnKS0+ZW5kKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+YXJyYXlOb2RlKCd0ZW1wbGF0ZXMnKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+aXNSZXF1aXJlZCgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5jYW5ub3RCZUVtcHR5KCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPnNjYWxhclByb3RvdHlwZSgpLT5lbmQoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgLT5lbmQoKQogICAgICAgICAgICAgICAgICAgICAgICAtPmVuZCgpCiAgICAgICAgICAgICAgICAgICAgLT5lbmQoKQogICAgICAgICAgICAgICAgLT5lbmQoKQogICAgICAgICAgICAtPmVuZCgpOwoKICAgICAgICByZXR1cm4gJHRyZWVCdWlsZGVyOwogICAgfQoKICAgIC8qKiBAcGFyYW0gbWl4ZWRbXSAkY29uZmlncyAqLwogICAgcHVibGljIGZ1bmN0aW9uIGxvYWQoYXJyYXkgJGNvbmZpZ3MsIENvbnRhaW5lckJ1aWxkZXIgJGNvbnRhaW5lcik6IHZvaWQKICAgIHsKICAgICAgICAkY29uZmlndXJhdGlvbiA9ICR0aGlzLT5nZXRDb25maWd1cmF0aW9uKCRjb25maWdzLCAkY29udGFpbmVyKTsKICAgICAgICAkY29uZmlnID0gJHRoaXMtPnByb2Nlc3NDb25maWd1cmF0aW9uKCRjb25maWd1cmF0aW9uLCAkY29uZmlncyk7CiAgICAgICAgJGxvYWRlciA9IG5ldyBQaHBGaWxlTG9hZGVyKAogICAgICAgICAgICAkY29udGFpbmVyLAogICAgICAgICAgICBuZXcgRmlsZUxvY2F0b3IoZGlybmFtZShfX0RJUl9fLCAyKSAuICcvcmVzb3VyY2VzL2NvbmZpZycpLAogICAgICAgICk7CgogICAgICAgICRsb2FkZXItPmxvYWQoJ2NvbW1hbmRfYnVzLnBocCcpOwogICAgICAgICRsb2FkZXItPmxvYWQoJ2d1aWRlcy5waHAnKTsKCiAgICAgICAgJHByb2plY3RTZXR0aW5ncyA9IG5ldyBQcm9qZWN0U2V0dGluZ3MoKTsKICAgICAgICBpZiAoaXNzZXQoJGNvbmZpZ1sncHJvamVjdCddKSkgewogICAgICAgICAgICBpZiAoaXNzZXQoJGNvbmZpZ1sncHJvamVjdCddWyd2ZXJzaW9uJ10pKSB7CiAgICAgICAgICAgICAgICAkcHJvamVjdFNldHRpbmdzLT5zZXRWZXJzaW9uKChzdHJpbmcpICRjb25maWdbJ3Byb2plY3QnXVsndmVyc2lvbiddKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKGlzc2V0KCRjb25maWdbJ3Byb2plY3QnXVsndGl0bGUnXSkpIHsKICAgICAgICAgICAgICAgICRwcm9qZWN0U2V0dGluZ3MtPnNldFRpdGxlKChzdHJpbmcpICRjb25maWdbJ3Byb2plY3QnXVsndGl0bGUnXSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmIChpc3NldCgkY29uZmlnWydwcm9qZWN0J11bJ3JlbGVhc2UnXSkpIHsKICAgICAgICAgICAgICAgICRwcm9qZWN0U2V0dGluZ3MtPnNldFJlbGVhc2UoKHN0cmluZykgJGNvbmZpZ1sncHJvamVjdCddWydyZWxlYXNlJ10pOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiAoaXNzZXQoJGNvbmZpZ1sncHJvamVjdCddWydjb3B5cmlnaHQnXSkpIHsKICAgICAgICAgICAgICAgICRwcm9qZWN0U2V0dGluZ3MtPnNldENvcHlyaWdodCgoc3RyaW5nKSAkY29uZmlnWydwcm9qZWN0J11bJ2NvcHlyaWdodCddKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgaWYgKGlzc2V0KCRjb25maWdbJ2ludmVudG9yaWVzJ10pKSB7CiAgICAgICAgICAgICRwcm9qZWN0U2V0dGluZ3MtPnNldEludmVudG9yaWVzKCRjb25maWdbJ2ludmVudG9yaWVzJ10pOwogICAgICAgIH0KCiAgICAgICAgaWYgKGlzc2V0KCRjb25maWdbJ3RoZW1lJ10pKSB7CiAgICAgICAgICAgICRwcm9qZWN0U2V0dGluZ3MtPnNldFRoZW1lKChzdHJpbmcpICRjb25maWdbJ3RoZW1lJ10pOwogICAgICAgIH0KCiAgICAgICAgaWYgKGlzc2V0KCRjb25maWdbJ2lucHV0J10pKSB7CiAgICAgICAgICAgICRwcm9qZWN0U2V0dGluZ3MtPnNldElucHV0KChzdHJpbmcpICRjb25maWdbJ2lucHV0J10pOwogICAgICAgIH0KCiAgICAgICAgaWYgKGlzc2V0KCRjb25maWdbJ2lucHV0X2ZpbGUnXSkgJiYgJGNvbmZpZ1snaW5wdXRfZmlsZSddICE9PSAnJykgewogICAgICAgICAgICAkaW5wdXRGaWxlID0gKHN0cmluZykgJGNvbmZpZ1snaW5wdXRfZmlsZSddOwogICAgICAgICAgICAkcGF0aEluZm8gPSBwYXRoaW5mbygkaW5wdXRGaWxlKTsKICAgICAgICAgICAgJHByb2plY3RTZXR0aW5ncy0+c2V0SW5wdXRGaWxlKCRwYXRoSW5mb1snZmlsZW5hbWUnXSk7CiAgICAgICAgICAgIGlmICghZW1wdHkoJHBhdGhJbmZvWydleHRlbnNpb24nXSkpIHsKICAgICAgICAgICAgICAgICRwcm9qZWN0U2V0dGluZ3MtPnNldElucHV0Rm9ybWF0KCRwYXRoSW5mb1snZXh0ZW5zaW9uJ10pOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiAoaXNzZXQoJGNvbmZpZ1snaW5kZXhfbmFtZSddKSAmJiAkY29uZmlnWydpbmRleF9uYW1lJ10gIT09ICcnKSB7CiAgICAgICAgICAgICRwcm9qZWN0U2V0dGluZ3MtPnNldEluZGV4TmFtZSgoc3RyaW5nKSAkY29uZmlnWydpbmRleF9uYW1lJ10pOwogICAgICAgIH0KCiAgICAgICAgaWYgKGlzc2V0KCRjb25maWdbJ291dHB1dCddKSkgewogICAgICAgICAgICAkcHJvamVjdFNldHRpbmdzLT5zZXRPdXRwdXQoKHN0cmluZykgJGNvbmZpZ1snb3V0cHV0J10pOwogICAgICAgIH0KCiAgICAgICAgaWYgKGlzc2V0KCRjb25maWdbJ2lucHV0X2Zvcm1hdCddKSkgewogICAgICAgICAgICAkcHJvamVjdFNldHRpbmdzLT5zZXRJbnB1dEZvcm1hdCgoc3RyaW5nKSAkY29uZmlnWydpbnB1dF9mb3JtYXQnXSk7CiAgICAgICAgfQoKICAgICAgICBpZiAoaXNzZXQoJGNvbmZpZ1snb3V0cHV0X2Zvcm1hdCddKSAmJiBpc19hcnJheSgkY29uZmlnWydvdXRwdXRfZm9ybWF0J10pKSB7CiAgICAgICAgICAgICRwcm9qZWN0U2V0dGluZ3MtPnNldE91dHB1dEZvcm1hdHMoJGNvbmZpZ1snb3V0cHV0X2Zvcm1hdCddKTsKICAgICAgICB9CgogICAgICAgIGlmIChpc3NldCgkY29uZmlnWydpZ25vcmVkX2RvbWFpbiddKSAmJiBpc19hcnJheSgkY29uZmlnWydpZ25vcmVkX2RvbWFpbiddKSkgewogICAgICAgICAgICAkcHJvamVjdFNldHRpbmdzLT5zZXRJZ25vcmVkRG9tYWlucygkY29uZmlnWydpZ25vcmVkX2RvbWFpbiddKTsKICAgICAgICB9CgogICAgICAgIGlmIChpc3NldCgkY29uZmlnWydsaW5rc19hcmVfcmVsYXRpdmUnXSkpIHsKICAgICAgICAgICAgJHByb2plY3RTZXR0aW5ncy0+c2V0TGlua3NSZWxhdGl2ZSgoYm9vbCkgJGNvbmZpZ1snbGlua3NfYXJlX3JlbGF0aXZlJ10pOwogICAgICAgIH0KCiAgICAgICAgaWYgKGlzc2V0KCRjb25maWdbJ3Nob3dfcHJvZ3Jlc3MnXSkpIHsKICAgICAgICAgICAgJHByb2plY3RTZXR0aW5ncy0+c2V0U2hvd1Byb2dyZXNzQmFyKChib29sKSAkY29uZmlnWydzaG93X3Byb2dyZXNzJ10pOwogICAgICAgIH0KCiAgICAgICAgaWYgKGlzc2V0KCRjb25maWdbJ2ZhaWxfb25fZXJyb3InXSkpIHsKICAgICAgICAgICAgJHByb2plY3RTZXR0aW5ncy0+c2V0RmFpbE9uRXJyb3IoTG9nTGV2ZWw6OkVSUk9SKTsKICAgICAgICB9CgogICAgICAgIGlmIChpc3NldCgkY29uZmlnWydmYWlsX29uX2xvZyddKSkgewogICAgICAgICAgICAkcHJvamVjdFNldHRpbmdzLT5zZXRGYWlsT25FcnJvcihMb2dMZXZlbDo6V0FSTklORyk7CiAgICAgICAgfQoKICAgICAgICBpZiAoaXNzZXQoJGNvbmZpZ1snbWF4X21lbnVfZGVwdGgnXSkpIHsKICAgICAgICAgICAgJHByb2plY3RTZXR0aW5ncy0+c2V0TWF4TWVudURlcHRoKChpbnQpICRjb25maWdbJ21heF9tZW51X2RlcHRoJ10pOwogICAgICAgIH0KCiAgICAgICAgaWYgKGlzc2V0KCRjb25maWdbJ2F1dG9tYXRpY19tZW51J10pKSB7CiAgICAgICAgICAgICRwcm9qZWN0U2V0dGluZ3MtPnNldEF1dG9tYXRpY01lbnUoKGJvb2wpICRjb25maWdbJ2F1dG9tYXRpY19tZW51J10pOwogICAgICAgIH0KCiAgICAgICAgaWYgKGlzc2V0KCRjb25maWdbJ2RlZmF1bHRfY29kZV9sYW5ndWFnZSddKSkgewogICAgICAgICAgICAkcHJvamVjdFNldHRpbmdzLT5zZXREZWZhdWx0Q29kZUxhbmd1YWdlKChzdHJpbmcpICRjb25maWdbJ2RlZmF1bHRfY29kZV9sYW5ndWFnZSddKTsKICAgICAgICB9CgogICAgICAgICRwcm9qZWN0U2V0dGluZ3MtPnNldEV4Y2x1ZGVzKAogICAgICAgICAgICBuZXcgRXhjbHVkZSgKICAgICAgICAgICAgICAgICRjb25maWdbJ2V4Y2x1ZGUnXVsncGF0aHMnXSwKICAgICAgICAgICAgICAgICRjb25maWdbJ2V4Y2x1ZGUnXVsnaGlkZGVuJ10sCiAgICAgICAgICAgICAgICAkY29uZmlnWydleGNsdWRlJ11bJ3N5bWxpbmtzJ10sCiAgICAgICAgICAgICksCiAgICAgICAgKTsKCiAgICAgICAgJGNvbnRhaW5lci0+Z2V0RGVmaW5pdGlvbihTZXR0aW5nc01hbmFnZXI6OmNsYXNzKQogICAgICAgICAgICAtPmFkZE1ldGhvZENhbGwoJ3NldFByb2plY3RTZXR0aW5ncycsIFskcHJvamVjdFNldHRpbmdzXSk7CgogICAgICAgICRjb25maWdbJ2Jhc2VfdGVtcGxhdGVfcGF0aHMnXVtdID0gZGlybmFtZShfX0RJUl9fLCAyKSAuICcvcmVzb3VyY2VzL3RlbXBsYXRlL2h0bWwnOwogICAgICAgICRjb25maWdbJ2Jhc2VfdGVtcGxhdGVfcGF0aHMnXVtdID0gZGlybmFtZShfX0RJUl9fLCAyKSAuICcvcmVzb3VyY2VzL3RlbXBsYXRlL3RleCc7CiAgICAgICAgJGNvbnRhaW5lci0+c2V0UGFyYW1ldGVyKCdwaHBkb2MuZ3VpZGVzLmJhc2VfdGVtcGxhdGVfcGF0aHMnLCAkY29uZmlnWydiYXNlX3RlbXBsYXRlX3BhdGhzJ10pOwogICAgICAgICRjb250YWluZXItPnNldFBhcmFtZXRlcigncGhwZG9jLmd1aWRlcy5ub2RlX3RlbXBsYXRlcycsICRjb25maWdbJ3RlbXBsYXRlcyddKTsKICAgICAgICAkY29udGFpbmVyLT5zZXRQYXJhbWV0ZXIoJ3BocGRvYy5ndWlkZXMuaW52ZW50b3JpZXMnLCAkY29uZmlnWydpbnZlbnRvcmllcyddKTsKICAgICAgICAkY29udGFpbmVyLT5zZXRQYXJhbWV0ZXIoJ3BocGRvYy5ndWlkZXMucmF3X25vZGUuZXNjYXBlJywgJGNvbmZpZ1sncmF3X25vZGUnXVsnZXNjYXBlJ10gPz8gZmFsc2UpOwoKICAgICAgICBpZiAoJGNvbmZpZ1sncmF3X25vZGUnXSA/PyBmYWxzZSkgewogICAgICAgICAgICAkdGhpcy0+Y29uZmlndXJlU2FuaXRpemVycygkY29uZmlnWydyYXdfbm9kZSddLCAkY29udGFpbmVyKTsKICAgICAgICB9CgogICAgICAgIGZvcmVhY2ggKCRjb25maWdbJ3RoZW1lcyddIGFzICR0aGVtZU5hbWUgPT4gJHRoZW1lQ29uZmlnKSB7CiAgICAgICAgICAgICRjb250YWluZXItPmdldERlZmluaXRpb24oVGhlbWVNYW5hZ2VyOjpjbGFzcykKICAgICAgICAgICAgICAgIC0+YWRkTWV0aG9kQ2FsbCgncmVnaXN0ZXJUaGVtZScsIFtuZXcgVGhlbWVDb25maWcoJHRoZW1lTmFtZSwgJHRoZW1lQ29uZmlnWyd0ZW1wbGF0ZXMnXSwgJHRoZW1lQ29uZmlnWydleHRlbmRzJ10gPz8gbnVsbCldKTsKICAgICAgICB9CiAgICB9CgogICAgLyoqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICRkZWZhdWx0VmFsdWUgKi8KICAgIHByaXZhdGUgZnVuY3Rpb24gcGF0aHMoYXJyYXkgJGRlZmF1bHRWYWx1ZSA9IFtdKTogQXJyYXlOb2RlRGVmaW5pdGlvbgogICAgewogICAgICAgICR0cmVlYnVpbGRlciA9IG5ldyBUcmVlQnVpbGRlcigncGF0aHMnKTsKCiAgICAgICAgcmV0dXJuICR0cmVlYnVpbGRlci0+Z2V0Um9vdE5vZGUoKQogICAgICAgICAgICAtPmJlZm9yZU5vcm1hbGl6YXRpb24oKQogICAgICAgICAgICAgICAgLT5jYXN0VG9BcnJheSgpCiAgICAgICAgICAgIC0+ZW5kKCkKICAgICAgICAgICAgLT5kZWZhdWx0VmFsdWUoJGRlZmF1bHRWYWx1ZSkKICAgICAgICAgICAgLT5wcm90b3R5cGUoJ3NjYWxhcicpCiAgICAgICAgICAgIC0+ZW5kKCk7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIHByb2Nlc3MoQ29udGFpbmVyQnVpbGRlciAkY29udGFpbmVyKTogdm9pZAogICAgewogICAgICAgIChuZXcgUGFyc2VyUnVsZXNQYXNzKCkpLT5wcm9jZXNzKCRjb250YWluZXIpOwogICAgICAgIChuZXcgTm9kZVJlbmRlcmVyUGFzcygpKS0+cHJvY2VzcygkY29udGFpbmVyKTsKICAgICAgICAobmV3IFJlbmRlcmVyUGFzcygpKS0+cHJvY2VzcygkY29udGFpbmVyKTsKICAgIH0KCiAgICAvKiogQHBhcmFtIG1peGVkW10gJGNvbmZpZyAqLwogICAgcHVibGljIGZ1bmN0aW9uIGdldENvbmZpZ3VyYXRpb24oYXJyYXkgJGNvbmZpZywgQ29udGFpbmVyQnVpbGRlciAkY29udGFpbmVyKTogQ29uZmlndXJhdGlvbkludGVyZmFjZQogICAgewogICAgICAgIHJldHVybiAkdGhpczsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gcHJlcGVuZChDb250YWluZXJCdWlsZGVyICRjb250YWluZXIpOiB2b2lkCiAgICB7CiAgICAgICAgJGNvbnRhaW5lci0+cHJlcGVuZEV4dGVuc2lvbkNvbmZpZygKICAgICAgICAgICAgJ2d1aWRlcycsCiAgICAgICAgICAgIFsKICAgICAgICAgICAgICAgICd0ZW1wbGF0ZXMnID0+IGFycmF5X21lcmdlKAogICAgICAgICAgICAgICAgICAgIHRlbXBsYXRlQXJyYXkoCiAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmUgZGlybmFtZShfX0RJUl9fLCAyKSAuICcvcmVzb3VyY2VzL3RlbXBsYXRlL2h0bWwvdGVtcGxhdGUucGhwJywKICAgICAgICAgICAgICAgICAgICAgICAgJ2h0bWwnLAogICAgICAgICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgICAgICAgdGVtcGxhdGVBcnJheSgKICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZSBkaXJuYW1lKF9fRElSX18sIDIpIC4gJy9yZXNvdXJjZXMvdGVtcGxhdGUvdGV4L3RlbXBsYXRlLnBocCcsCiAgICAgICAgICAgICAgICAgICAgICAgICd0ZXgnLAogICAgICAgICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgICApLAogICAgICAgICAgICBdLAogICAgICAgICk7CiAgICB9CgogICAgLyoqIEBwYXJhbSBhcnJheTxzdHJpbmcsIG1peGVkPiAkcmF3Tm9kZUNvbmZpZyAqLwogICAgcHJpdmF0ZSBmdW5jdGlvbiBjb25maWd1cmVTYW5pdGl6ZXJzKGFycmF5ICRyYXdOb2RlQ29uZmlnLCBDb250YWluZXJCdWlsZGVyICRjb250YWluZXIpOiB2b2lkCiAgICB7CiAgICAgICAgaWYgKCRyYXdOb2RlQ29uZmlnWydzYW5pdGl6ZXJfbmFtZSddID8/IGZhbHNlKSB7CiAgICAgICAgICAgICRjb250YWluZXItPmdldERlZmluaXRpb24oUmF3Tm9kZUVzY2FwZVRyYW5zZm9ybWVyOjpjbGFzcykKICAgICAgICAgICAgICAgIC0+c2V0QXJndW1lbnQoJyRodG1sU2FuaXRpemVyQ29uZmlnJywgbmV3IFJlZmVyZW5jZSgncGhwZG9jLmd1aWRlcy5yYXdfbm9kZS5zYW5pdGl6ZXIuJyAuICRyYXdOb2RlQ29uZmlnWydzYW5pdGl6ZXJfbmFtZSddKSk7CiAgICAgICAgfQoKICAgICAgICBpZiAoIWlzX2FycmF5KCRyYXdOb2RlQ29uZmlnWydzYW5pdGl6ZXJzJ10gPz8gZmFsc2UpKSB7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CgogICAgICAgIGZvcmVhY2ggKCRyYXdOb2RlQ29uZmlnWydzYW5pdGl6ZXJzJ10gYXMgJHNhbml0aXplck5hbWUgPT4gJHNhbml0aXplckNvbmZpZykgewogICAgICAgICAgICAkZGVmID0gJGNvbnRhaW5lci0+cmVnaXN0ZXIoJ3BocGRvYy5ndWlkZXMucmF3X25vZGUuc2FuaXRpemVyLicgLiAkc2FuaXRpemVyTmFtZSwgSHRtbFNhbml0aXplckNvbmZpZzo6Y2xhc3MpOwoKICAgICAgICAgICAgLy8gQmFzZQogICAgICAgICAgICBpZiAoJHNhbml0aXplckNvbmZpZ1snYWxsb3dfc2FmZV9lbGVtZW50cyddKSB7CiAgICAgICAgICAgICAgICAkZGVmLT5hZGRNZXRob2RDYWxsKCdhbGxvd1NhZmVFbGVtZW50cycsIFtdLCB0cnVlKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKCRzYW5pdGl6ZXJDb25maWdbJ2FsbG93X3N0YXRpY19lbGVtZW50cyddKSB7CiAgICAgICAgICAgICAgICAkZGVmLT5hZGRNZXRob2RDYWxsKCdhbGxvd1N0YXRpY0VsZW1lbnRzJywgW10sIHRydWUpOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBDb25maWd1cmVzIGVsZW1lbnRzCiAgICAgICAgICAgIGZvcmVhY2ggKCRzYW5pdGl6ZXJDb25maWdbJ2FsbG93X2VsZW1lbnRzJ10gYXMgJGVsZW1lbnQgPT4gJGF0dHJpYnV0ZXMpIHsKICAgICAgICAgICAgICAgICRkZWYtPmFkZE1ldGhvZENhbGwoJ2FsbG93RWxlbWVudCcsIFskZWxlbWVudCwgJGF0dHJpYnV0ZXNdLCB0cnVlKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZm9yZWFjaCAoJHNhbml0aXplckNvbmZpZ1snYmxvY2tfZWxlbWVudHMnXSBhcyAkZWxlbWVudCkgewogICAgICAgICAgICAgICAgJGRlZi0+YWRkTWV0aG9kQ2FsbCgnYmxvY2tFbGVtZW50JywgWyRlbGVtZW50XSwgdHJ1ZSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZvcmVhY2ggKCRzYW5pdGl6ZXJDb25maWdbJ2Ryb3BfZWxlbWVudHMnXSBhcyAkZWxlbWVudCkgewogICAgICAgICAgICAgICAgJGRlZi0+YWRkTWV0aG9kQ2FsbCgnZHJvcEVsZW1lbnQnLCBbJGVsZW1lbnRdLCB0cnVlKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgLy8gQ29uZmlndXJlcyBhdHRyaWJ1dGVzCiAgICAgICAgICAgIGZvcmVhY2ggKCRzYW5pdGl6ZXJDb25maWdbJ2FsbG93X2F0dHJpYnV0ZXMnXSBhcyAkYXR0cmlidXRlID0+ICRlbGVtZW50cykgewogICAgICAgICAgICAgICAgJGRlZi0+YWRkTWV0aG9kQ2FsbCgnYWxsb3dBdHRyaWJ1dGUnLCBbJGF0dHJpYnV0ZSwgJGVsZW1lbnRzXSwgdHJ1ZSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZvcmVhY2ggKCRzYW5pdGl6ZXJDb25maWdbJ2Ryb3BfYXR0cmlidXRlcyddIGFzICRhdHRyaWJ1dGUgPT4gJGVsZW1lbnRzKSB7CiAgICAgICAgICAgICAgICAkZGVmLT5hZGRNZXRob2RDYWxsKCdkcm9wQXR0cmlidXRlJywgWyRhdHRyaWJ1dGUsICRlbGVtZW50c10sIHRydWUpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9CgovKioKICogSGVscGVyIGZ1bmN0aW9uIHRvIGNvbmZpZ3VyZSBtdWx0aXBsZSB0ZW1wbGF0ZXMuCiAqCiAqIFRoaXMgZnVuY3Rpb24gaXMgdXNlZCB0byBjb25maWd1cmUgdGhlIHRlbXBsYXRlcyBpbiB0aGUgY29uZmlndXJhdGlvbiBmaWxlLgogKgogKiBAcGFyYW0gYXJyYXk8Y2xhc3Mtc3RyaW5nPE5vZGU+LCBzdHJpbmc+ICRpbnB1dAogKgogKiBAcmV0dXJuIGFycmF5PGFycmF5LWtleSwgYXJyYXl7bm9kZTogY2xhc3Mtc3RyaW5nPE5vZGU+LCBmaWxlOiBzdHJpbmcsIGZvcm1hdDogc3RyaW5nfT4KICovCmZ1bmN0aW9uIHRlbXBsYXRlQXJyYXkoYXJyYXkgJGlucHV0LCBzdHJpbmcgJGZvcm1hdCA9ICdodG1sJyk6IGFycmF5CnsKICAgIHJldHVybiBhcnJheV9tYXAoCiAgICAgICAgc3RhdGljIGZuICgkbm9kZSwgJHRlbXBsYXRlKSA9PiB0ZW1wbGF0ZSgkbm9kZSwgJHRlbXBsYXRlLCAkZm9ybWF0KSwKICAgICAgICBhcnJheV9rZXlzKCRpbnB1dCksCiAgICAgICAgYXJyYXlfdmFsdWVzKCRpbnB1dCksCiAgICApOwp9CgovKioKICogSGVscGVyIGZ1bmN0aW9uIHRvIGNvbmZpZ3VyZSB0ZW1wbGF0ZXMuCiAqCiAqIFRoaXMgZnVuY3Rpb24gaXMgdXNlZCB0byBjb25maWd1cmUgdGhlIHRlbXBsYXRlcyBpbiB0aGUgY29uZmlndXJhdGlvbiBmaWxlLgogKgogKiBAcGFyYW0gY2xhc3Mtc3RyaW5nPE5vZGU+ICRub2RlCiAqCiAqIEByZXR1cm4gYXJyYXl7bm9kZTogY2xhc3Mtc3RyaW5nPE5vZGU+LCBmaWxlOiBzdHJpbmcsIGZvcm1hdDogc3RyaW5nfQogKi8KZnVuY3Rpb24gdGVtcGxhdGUoc3RyaW5nICRub2RlLCBzdHJpbmcgJHRlbXBsYXRlLCBzdHJpbmcgJGZvcm1hdCA9ICdodG1sJyk6IGFycmF5CnsKICAgIHJldHVybiBbCiAgICAgICAgJ25vZGUnID0+ICRub2RlLAogICAgICAgICdmaWxlJyA9PiAkdGVtcGxhdGUsCiAgICAgICAgJ2Zvcm1hdCcgPT4gJGZvcm1hdCwKICAgIF07Cn0KIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozNToiVGhpcyBmaWxlIGlzIHBhcnQgb2YgcGhwRG9jdW1lbnRvci4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTIwOiJGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRQpmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcTGluayI6Mzp7czo3OiIAKgBuYW1lIjtzOjQ6ImxpbmsiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtOO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xMaW5rAGxpbmsiO3M6MTg6Imh0dHBzOi8vcGhwZG9jLm9yZyI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAbWV0YWRhdGEiO2E6MDp7fX0=";