1778692666
441d63ebbc39eba359c9061ece8482bd-phpdoc%3A68238de39e1076b74e77713b40070f15-e2ba4b2fbfb1ee30e6f6910246df2ca2
s:63988:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjE4OiJMYXp5UHJveHlUcmFpdC5waHAiO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAbmFtZXNwYWNlcyI7YToxOntzOjMwOiJcU3ltZm9ueVxDb21wb25lbnRcVmFyRXhwb3J0ZXIiO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozMDoiXFN5bWZvbnlcQ29tcG9uZW50XFZhckV4cG9ydGVyIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTE6IlZhckV4cG9ydGVyIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW5jbHVkZXMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZnVuY3Rpb25zIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNvbnN0YW50cyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjbGFzc2VzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGludGVyZmFjZXMiO2E6MDp7fXM6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAdHJhaXRzIjthOjE6e3M6NDU6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdCI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxUcmFpdF8iOjEwOntzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxUcmFpdF8AcHJvcGVydGllcyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVHJhaXRfAG1ldGhvZHMiO2E6MTI6e3M6NjQ6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdDo6Y3JlYXRlTGF6eVByb3h5KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjg6IlxDbG9zdXJlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NzoiQ2xvc3VyZSI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjExOiJpbml0aWFsaXplciI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xOdWxsYWJsZSI6MTp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xOdWxsYWJsZQByZWFsVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7Tjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6ODoiaW5zdGFuY2UiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjQ0OiJ7eyBQSFBET0MzN2E2MjU5Y2MwYzFkYWUyOTlhNzg2NjQ4OWRmZjBiZCB9fSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBwYXJ0cyI7YToxOntzOjQ0OiJ7eyBQSFBET0MzN2E2MjU5Y2MwYzFkYWUyOTlhNzg2NjQ4OWRmZjBiZCB9fSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE51bGxfIjowOnt9fX1zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mzg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTEzMTt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo3MjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToyNTg1O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0YXRpY18iOjE6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RhdGljXwBnZW5lcmljVHlwZXMiO2E6MDp7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2NDoiXFN5bWZvbnlcQ29tcG9uZW50XFZhckV4cG9ydGVyXExhenlQcm94eVRyYWl0OjpjcmVhdGVMYXp5UHJveHkoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJjcmVhdGVMYXp5UHJveHkiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozNzoiQ3JlYXRlcyBhIGxhenktbG9hZGluZyB2aXJ0dWFsIHByb3h5LiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MjY6IlJldHVybnMgdGhlIHByb3hpZWQgb2JqZWN0IjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086NDA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDYWxsYWJsZV8iOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ2FsbGFibGVfAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ2FsbGFibGVfAHBhcmFtZXRlcnMiO2E6MDp7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjExOiJpbml0aWFsaXplciI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdGF0aWNfIjoxOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0YXRpY18AZ2VuZXJpY1R5cGVzIjthOjA6e319aToxO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xOdWxsXyI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjg6Imluc3RhbmNlIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czoyOToiU3ltZm9ueVxDb21wb25lbnRcVmFyRXhwb3J0ZXIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjY6e3M6NjoiSWdub3JlIjtzOjQ1OiJTeW1mb255XENvbXBvbmVudFxTZXJpYWxpemVyXEF0dHJpYnV0ZVxJZ25vcmUiO3M6MTQ6IlB1YmxpY0h5ZHJhdG9yIjtzOjM4OiJTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxIeWRyYXRvciI7czo4OiJIeWRyYXRvciI7czo0NzoiU3ltZm9ueVxDb21wb25lbnRcVmFyRXhwb3J0ZXJcSW50ZXJuYWxcSHlkcmF0b3IiO3M6ODoiUmVnaXN0cnkiO3M6NTc6IlN5bWZvbnlcQ29tcG9uZW50XFZhckV4cG9ydGVyXEludGVybmFsXExhenlPYmplY3RSZWdpc3RyeSI7czoxNToiTGF6eU9iamVjdFN0YXRlIjtzOjU0OiJTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxJbnRlcm5hbFxMYXp5T2JqZWN0U3RhdGUiO3M6MTU6IkxhenlPYmplY3RUcmFpdCI7czo1NDoiU3ltZm9ueVxDb21wb25lbnRcVmFyRXhwb3J0ZXJcSW50ZXJuYWxcTGF6eU9iamVjdFRyYWl0Ijt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjoxO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjcyOiJcU3ltZm9ueVxDb21wb25lbnRcVmFyRXhwb3J0ZXJcTGF6eVByb3h5VHJhaXQ6OmlzTGF6eU9iamVjdEluaXRpYWxpemVkKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6InBhcnRpYWwiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjQ0OiJ7eyBQSFBET0M2ODkzNGEzZTk0NTVmYTcyNDIwMjM3ZWIwNTkwMjMyNyB9fSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBwYXJ0cyI7YToxOntzOjQ0OiJ7eyBQSFBET0M2ODkzNGEzZTk0NTVmYTcyNDIwMjM3ZWIwNTkwMjMyNyB9fSI7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBzZXVkb1R5cGVzXEZhbHNlXyI6MDp7fX19czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjc5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjI3Njc7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MzAyNzt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzI6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdDo6aXNMYXp5T2JqZWN0SW5pdGlhbGl6ZWQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIzOiJpc0xhenlPYmplY3RJbml0aWFsaXplZCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjQyOiJSZXR1cm5zIHdoZXRoZXIgdGhlIG9iamVjdCBpcyBpbml0aWFsaXplZC4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjczOiJXaGV0aGVyIHBhcnRpYWxseSBpbml0aWFsaXplZCBvYmplY3RzIHNob3VsZCBiZSBjb25zaWRlcmVkIGFzIGluaXRpYWxpemVkIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo3OiJwYXJ0aWFsIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjgzO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MTp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXR0cmlidXRlIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBdHRyaWJ1dGUAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NjoiXFN5bWZvbnlcQ29tcG9uZW50XFNlcmlhbGl6ZXJcQXR0cmlidXRlXElnbm9yZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjY6Iklnbm9yZSI7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEF0dHJpYnV0ZQBhcmd1bWVudHMiO2E6MDp7fX19fXM6Njk6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdDo6aW5pdGlhbGl6ZUxhenlPYmplY3QoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjg4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjMxMTI7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6OTU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MzMyNjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xQYXJlbnRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Njk6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdDo6aW5pdGlhbGl6ZUxhenlPYmplY3QoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIwOiJpbml0aWFsaXplTGF6eU9iamVjdCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjU0OiJGb3JjZXMgaW5pdGlhbGl6YXRpb24gb2YgYSBsYXp5IG9iamVjdCBhbmQgcmV0dXJucyBpdC4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjo4MztzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo2NDoiXFN5bWZvbnlcQ29tcG9uZW50XFZhckV4cG9ydGVyXExhenlQcm94eVRyYWl0OjpyZXNldExhenlPYmplY3QoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwMDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTozNDQ3O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwOTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTozNzI4O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2NDoiXFN5bWZvbnlcQ29tcG9uZW50XFZhckV4cG9ydGVyXExhenlQcm94eVRyYWl0OjpyZXNldExhenlPYmplY3QoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJyZXNldExhenlPYmplY3QiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjc3OiJSZXR1cm5zIGZhbHNlIHdoZW4gdGhlIG9iamVjdCBjYW5ub3QgYmUgcmVzZXQsIGllIHdoZW4gaXQncyBub3QgYSBsYXp5IG9iamVjdCI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjgzO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjU0OiJcU3ltZm9ueVxDb21wb25lbnRcVmFyRXhwb3J0ZXJcTGF6eVByb3h5VHJhaXQ6Ol9fZ2V0KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoibmFtZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTExO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjM3MzU7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTg1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjY1MjY7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTQ6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdDo6X19nZXQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjU6Il9fZ2V0Ijt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjE7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6NTQ6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdDo6X19zZXQoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJuYW1lIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToidmFsdWUiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE4NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo2NTMzO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyMDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo3ODI3O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTQ6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdDo6X19zZXQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjU6Il9fc2V0Ijt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6NTY6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdDo6X19pc3NldCgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTM6e3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6Im5hbWUiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyMjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo3ODM0O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI1MztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo5MDQ0O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1NjoiXFN5bWZvbnlcQ29tcG9uZW50XFZhckV4cG9ydGVyXExhenlQcm94eVRyYWl0OjpfX2lzc2V0KCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo3OiJfX2lzc2V0Ijt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6NTY6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdDo6X191bnNldCgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTM6e3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6Im5hbWUiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI1NTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo5MDUxO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI4ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxMDMzMTt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xWb2lkXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU2OiJcU3ltZm9ueVxDb21wb25lbnRcVmFyRXhwb3J0ZXJcTGF6eVByb3h5VHJhaXQ6Ol9fdW5zZXQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6Il9fdW5zZXQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo1NjoiXFN5bWZvbnlcQ29tcG9uZW50XFZhckV4cG9ydGVyXExhenlQcm94eVRyYWl0OjpfX2Nsb25lKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyOTA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTAzMzg7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzAxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjEwNjgyO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTY6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdDo6X19jbG9uZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NzoiX19jbG9uZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjYwOiJcU3ltZm9ueVxDb21wb25lbnRcVmFyRXhwb3J0ZXJcTGF6eVByb3h5VHJhaXQ6Ol9fc2VyaWFsaXplKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozMDM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTA2ODk7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzM3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjExOTg2O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjA6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdDo6X19zZXJpYWxpemUoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJfX3NlcmlhbGl6ZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjYyOiJcU3ltZm9ueVxDb21wb25lbnRcVmFyRXhwb3J0ZXJcTGF6eVByb3h5VHJhaXQ6Ol9fdW5zZXJpYWxpemUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6ImRhdGEiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjMzOTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxMTk5Mzt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNjQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTMwMzY7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2MjoiXFN5bWZvbnlcQ29tcG9uZW50XFZhckV4cG9ydGVyXExhenlQcm94eVRyYWl0OjpfX3Vuc2VyaWFsaXplKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMzoiX191bnNlcmlhbGl6ZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjU5OiJcU3ltZm9ueVxDb21wb25lbnRcVmFyRXhwb3J0ZXJcTGF6eVByb3h5VHJhaXQ6Ol9fZGVzdHJ1Y3QoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM2NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxMzA0Mzt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNzU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTMzMTM7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTk6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxMYXp5UHJveHlUcmFpdDo6X19kZXN0cnVjdCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTA6Il9fZGVzdHJ1Y3QiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFRyYWl0XwB1c2VkVHJhaXRzIjthOjE6e3M6NTU6IlxTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxJbnRlcm5hbFxMYXp5T2JqZWN0VHJhaXQiO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1NToiXFN5bWZvbnlcQ29tcG9uZW50XFZhckV4cG9ydGVyXEludGVybmFsXExhenlPYmplY3RUcmFpdCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJMYXp5T2JqZWN0VHJhaXQiO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVHJhaXRfAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxUcmFpdF8AZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM3NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxUcmFpdF8AY29uc3RhbnRzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxUcmFpdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NToiXFN5bWZvbnlcQ29tcG9uZW50XFZhckV4cG9ydGVyXExhenlQcm94eVRyYWl0IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTQ6IkxhenlQcm94eVRyYWl0Ijt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVHJhaXRfAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXERlcHJlY2F0ZWQiOjM6e3M6NzoiACoAbmFtZSI7czoxMDoiZGVwcmVjYXRlZCI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NTA6InNpbmNlIFN5bWZvbnkgNy4zLCB1c2UgbmF0aXZlIGxhenkgb2JqZWN0cyBpbnN0ZWFkIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcRGVwcmVjYXRlZAB2ZXJzaW9uIjtOO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjgzO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVHJhaXRfAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxUcmFpdF8AYXR0cmlidXRlcyI7YTowOnt9fX1zOjQwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGVudW1zIjthOjA6e31zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGhhc2giO3M6MzI6ImUyYmE0YjJmYmZiMWVlMzBlNmY2OTEwMjQ2ZGYyY2EyIjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHBhdGgiO3M6NDY6InZlbmRvci9zeW1mb255L3Zhci1leHBvcnRlci9MYXp5UHJveHlUcmFpdC5waHAiO3M6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAc291cmNlIjtzOjEzMzE3OiI8P3BocAoKLyoKICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIFN5bWZvbnkgcGFja2FnZS4KICoKICogKGMpIEZhYmllbiBQb3RlbmNpZXIgPGZhYmllbkBzeW1mb255LmNvbT4KICoKICogRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0UKICogZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuCiAqLwoKbmFtZXNwYWNlIFN5bWZvbnlcQ29tcG9uZW50XFZhckV4cG9ydGVyOwoKdXNlIFN5bWZvbnlcQ29tcG9uZW50XFNlcmlhbGl6ZXJcQXR0cmlidXRlXElnbm9yZTsKdXNlIFN5bWZvbnlcQ29tcG9uZW50XFZhckV4cG9ydGVyXEh5ZHJhdG9yIGFzIFB1YmxpY0h5ZHJhdG9yOwp1c2UgU3ltZm9ueVxDb21wb25lbnRcVmFyRXhwb3J0ZXJcSW50ZXJuYWxcSHlkcmF0b3I7CnVzZSBTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxJbnRlcm5hbFxMYXp5T2JqZWN0UmVnaXN0cnkgYXMgUmVnaXN0cnk7CnVzZSBTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxJbnRlcm5hbFxMYXp5T2JqZWN0U3RhdGU7CnVzZSBTeW1mb255XENvbXBvbmVudFxWYXJFeHBvcnRlclxJbnRlcm5hbFxMYXp5T2JqZWN0VHJhaXQ7CgppZiAoXFBIUF9WRVJTSU9OX0lEID49IDgwNDAwKSB7CiAgICB0cmlnZ2VyX2RlcHJlY2F0aW9uKCdzeW1mb255L3Zhci1leHBvcnRlcicsICc3LjMnLCAnVGhlICIlcyIgdHJhaXQgaXMgZGVwcmVjYXRlZCwgdXNlIG5hdGl2ZSBsYXp5IG9iamVjdHMgaW5zdGVhZC4nLCBMYXp5UHJveHlUcmFpdDo6Y2xhc3MpOwp9CgovKioKICogQGRlcHJlY2F0ZWQgc2luY2UgU3ltZm9ueSA3LjMsIHVzZSBuYXRpdmUgbGF6eSBvYmplY3RzIGluc3RlYWQKICovCnRyYWl0IExhenlQcm94eVRyYWl0CnsKICAgIHVzZSBMYXp5T2JqZWN0VHJhaXQ7CgogICAgLyoqCiAgICAgKiBDcmVhdGVzIGEgbGF6eS1sb2FkaW5nIHZpcnR1YWwgcHJveHkuCiAgICAgKgogICAgICogQHBhcmFtIFxDbG9zdXJlKCk6b2JqZWN0ICRpbml0aWFsaXplciBSZXR1cm5zIHRoZSBwcm94aWVkIG9iamVjdAogICAgICogQHBhcmFtIHN0YXRpY3xudWxsICAgICAgICRpbnN0YW5jZQogICAgICovCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGNyZWF0ZUxhenlQcm94eShcQ2xvc3VyZSAkaW5pdGlhbGl6ZXIsID9vYmplY3QgJGluc3RhbmNlID0gbnVsbCk6IHN0YXRpYwogICAgewogICAgICAgIGlmIChzZWxmOjpjbGFzcyAhPT0gJGNsYXNzID0gJGluc3RhbmNlID8gJGluc3RhbmNlOjpjbGFzcyA6IHN0YXRpYzo6Y2xhc3MpIHsKICAgICAgICAgICAgJHNraXBwZWRQcm9wZXJ0aWVzID0gWyJcMCIuc2VsZjo6Y2xhc3MuIlwwbGF6eU9iamVjdFN0YXRlIiA9PiB0cnVlXTsKICAgICAgICB9CgogICAgICAgIGlmICghaXNzZXQoUmVnaXN0cnk6OiRkZWZhdWx0UHJvcGVydGllc1skY2xhc3NdKSkgewogICAgICAgICAgICBSZWdpc3RyeTo6JGNsYXNzUmVmbGVjdG9yc1skY2xhc3NdID8/PSBuZXcgXFJlZmxlY3Rpb25DbGFzcygkY2xhc3MpOwogICAgICAgICAgICAkaW5zdGFuY2UgPz89IFJlZ2lzdHJ5OjokY2xhc3NSZWZsZWN0b3JzWyRjbGFzc10tPm5ld0luc3RhbmNlV2l0aG91dENvbnN0cnVjdG9yKCk7CiAgICAgICAgICAgIFJlZ2lzdHJ5OjokZGVmYXVsdFByb3BlcnRpZXNbJGNsYXNzXSA/Pz0gKGFycmF5KSAkaW5zdGFuY2U7CgogICAgICAgICAgICBpZiAoc2VsZjo6Y2xhc3MgPT09ICRjbGFzcyAmJiBcZGVmaW5lZCgkY2xhc3MuJzo6TEFaWV9PQkpFQ1RfUFJPUEVSVFlfU0NPUEVTJykpIHsKICAgICAgICAgICAgICAgIEh5ZHJhdG9yOjokcHJvcGVydHlTY29wZXNbJGNsYXNzXSA/Pz0gJGNsYXNzOjpMQVpZX09CSkVDVF9QUk9QRVJUWV9TQ09QRVM7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIFJlZ2lzdHJ5OjokY2xhc3NSZXNldHRlcnNbJGNsYXNzXSA/Pz0gUmVnaXN0cnk6OmdldENsYXNzUmVzZXR0ZXJzKCRjbGFzcyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgJGluc3RhbmNlID8/PSBSZWdpc3RyeTo6JGNsYXNzUmVmbGVjdG9yc1skY2xhc3NdLT5uZXdJbnN0YW5jZVdpdGhvdXRDb25zdHJ1Y3RvcigpOwogICAgICAgIH0KCiAgICAgICAgaWYgKGlzc2V0KCRpbnN0YW5jZS0+bGF6eU9iamVjdFN0YXRlKSkgewogICAgICAgICAgICAkaW5zdGFuY2UtPmxhenlPYmplY3RTdGF0ZS0+aW5pdGlhbGl6ZXIgPSAkaW5pdGlhbGl6ZXI7CiAgICAgICAgICAgIHVuc2V0KCRpbnN0YW5jZS0+bGF6eU9iamVjdFN0YXRlLT5yZWFsSW5zdGFuY2UpOwoKICAgICAgICAgICAgcmV0dXJuICRpbnN0YW5jZTsKICAgICAgICB9CgogICAgICAgICRpbnN0YW5jZS0+bGF6eU9iamVjdFN0YXRlID0gbmV3IExhenlPYmplY3RTdGF0ZSgkaW5pdGlhbGl6ZXIpOwoKICAgICAgICBmb3JlYWNoIChSZWdpc3RyeTo6JGNsYXNzUmVzZXR0ZXJzWyRjbGFzc10gYXMgJHJlc2V0KSB7CiAgICAgICAgICAgICRyZXNldCgkaW5zdGFuY2UsICRza2lwcGVkUHJvcGVydGllcyA/Pz0gW10pOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuICRpbnN0YW5jZTsKICAgIH0KCiAgICAvKioKICAgICAqIFJldHVybnMgd2hldGhlciB0aGUgb2JqZWN0IGlzIGluaXRpYWxpemVkLgogICAgICoKICAgICAqIEBwYXJhbSBib29sICRwYXJ0aWFsIFdoZXRoZXIgcGFydGlhbGx5IGluaXRpYWxpemVkIG9iamVjdHMgc2hvdWxkIGJlIGNvbnNpZGVyZWQgYXMgaW5pdGlhbGl6ZWQKICAgICAqLwogICAgI1tJZ25vcmVdCiAgICBwdWJsaWMgZnVuY3Rpb24gaXNMYXp5T2JqZWN0SW5pdGlhbGl6ZWQoYm9vbCAkcGFydGlhbCA9IGZhbHNlKTogYm9vbAogICAgewogICAgICAgIHJldHVybiAhaXNzZXQoJHRoaXMtPmxhenlPYmplY3RTdGF0ZSkgfHwgaXNzZXQoJHRoaXMtPmxhenlPYmplY3RTdGF0ZS0+cmVhbEluc3RhbmNlKSB8fCBSZWdpc3RyeTo6JG5vSW5pdGlhbGl6ZXJTdGF0ZSA9PT0gJHRoaXMtPmxhenlPYmplY3RTdGF0ZS0+aW5pdGlhbGl6ZXI7CiAgICB9CgogICAgLyoqCiAgICAgKiBGb3JjZXMgaW5pdGlhbGl6YXRpb24gb2YgYSBsYXp5IG9iamVjdCBhbmQgcmV0dXJucyBpdC4KICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIGluaXRpYWxpemVMYXp5T2JqZWN0KCk6IHBhcmVudAogICAgewogICAgICAgIGlmICgkc3RhdGUgPSAkdGhpcy0+bGF6eU9iamVjdFN0YXRlID8/IG51bGwpIHsKICAgICAgICAgICAgcmV0dXJuICRzdGF0ZS0+cmVhbEluc3RhbmNlID8/PSAoJHN0YXRlLT5pbml0aWFsaXplcikoKTsKICAgICAgICB9CgogICAgICAgIHJldHVybiAkdGhpczsKICAgIH0KCiAgICAvKioKICAgICAqIEByZXR1cm4gYm9vbCBSZXR1cm5zIGZhbHNlIHdoZW4gdGhlIG9iamVjdCBjYW5ub3QgYmUgcmVzZXQsIGllIHdoZW4gaXQncyBub3QgYSBsYXp5IG9iamVjdAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gcmVzZXRMYXp5T2JqZWN0KCk6IGJvb2wKICAgIHsKICAgICAgICBpZiAoIWlzc2V0KCR0aGlzLT5sYXp5T2JqZWN0U3RhdGUpIHx8IFJlZ2lzdHJ5Ojokbm9Jbml0aWFsaXplclN0YXRlID09PSAkdGhpcy0+bGF6eU9iamVjdFN0YXRlLT5pbml0aWFsaXplcikgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQoKICAgICAgICB1bnNldCgkdGhpcy0+bGF6eU9iamVjdFN0YXRlLT5yZWFsSW5zdGFuY2UpOwoKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gJl9fZ2V0KCRuYW1lKTogbWl4ZWQKICAgIHsKICAgICAgICAkcHJvcGVydHlTY29wZXMgPSBIeWRyYXRvcjo6JHByb3BlcnR5U2NvcGVzWyR0aGlzOjpjbGFzc10gPz89IEh5ZHJhdG9yOjpnZXRQcm9wZXJ0eVNjb3BlcygkdGhpczo6Y2xhc3MpOwogICAgICAgICRzY29wZSA9IG51bGw7CiAgICAgICAgJGluc3RhbmNlID0gJHRoaXM7CiAgICAgICAgJG5vdEJ5UmVmID0gMDsKCiAgICAgICAgaWYgKFskY2xhc3MsICwgJHdyaXRlU2NvcGUsICRhY2Nlc3NdID0gJHByb3BlcnR5U2NvcGVzWyRuYW1lXSA/PyBudWxsKSB7CiAgICAgICAgICAgICRub3RCeVJlZiA9ICRhY2Nlc3MgJiBIeWRyYXRvcjo6UFJPUEVSVFlfTk9UX0JZX1JFRjsKICAgICAgICAgICAgJHNjb3BlID0gUmVnaXN0cnk6OmdldFNjb3BlRm9yUmVhZCgkcHJvcGVydHlTY29wZXMsICRjbGFzcywgJG5hbWUpOwoKICAgICAgICAgICAgaWYgKG51bGwgPT09ICRzY29wZSB8fCBpc3NldCgkcHJvcGVydHlTY29wZXNbIlwwJHNjb3BlXDAkbmFtZSJdKSkgewogICAgICAgICAgICAgICAgaWYgKCRzdGF0ZSA9ICR0aGlzLT5sYXp5T2JqZWN0U3RhdGUgPz8gbnVsbCkgewogICAgICAgICAgICAgICAgICAgICRpbnN0YW5jZSA9ICRzdGF0ZS0+cmVhbEluc3RhbmNlID8/PSAoJHN0YXRlLT5pbml0aWFsaXplcikoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmIChcUEhQX1ZFUlNJT05fSUQgPj0gODA0MDAgJiYgISRub3RCeVJlZiAmJiAoJGFjY2VzcyA+PiAyKSAmIFxSZWZsZWN0aW9uUHJvcGVydHk6OklTX1BSSVZBVEVfU0VUKSB7CiAgICAgICAgICAgICAgICAgICAgJHNjb3BlID8/PSAkd3JpdGVTY29wZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICRwYXJlbnQgPSAyOwogICAgICAgICAgICAgICAgZ290byBnZXRfaW5fc2NvcGU7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgJHBhcmVudCA9IChSZWdpc3RyeTo6JHBhcmVudE1ldGhvZHNbc2VsZjo6Y2xhc3NdID8/PSBSZWdpc3RyeTo6Z2V0UGFyZW50TWV0aG9kcyhzZWxmOjpjbGFzcykpWydnZXQnXTsKCiAgICAgICAgaWYgKCRzdGF0ZSA9ICR0aGlzLT5sYXp5T2JqZWN0U3RhdGUgPz8gbnVsbCkgewogICAgICAgICAgICAkaW5zdGFuY2UgPSAkc3RhdGUtPnJlYWxJbnN0YW5jZSA/Pz0gKCRzdGF0ZS0+aW5pdGlhbGl6ZXIpKCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaWYgKDIgPT09ICRwYXJlbnQpIHsKICAgICAgICAgICAgICAgIHJldHVybiBwYXJlbnQ6Ol9fZ2V0KCRuYW1lKTsKICAgICAgICAgICAgfQogICAgICAgICAgICAkdmFsdWUgPSBwYXJlbnQ6Ol9fZ2V0KCRuYW1lKTsKCiAgICAgICAgICAgIHJldHVybiAkdmFsdWU7CiAgICAgICAgfQoKICAgICAgICBpZiAoISRwYXJlbnQgJiYgbnVsbCA9PT0gJGNsYXNzICYmICFcYXJyYXlfa2V5X2V4aXN0cygkbmFtZSwgKGFycmF5KSAkaW5zdGFuY2UpKSB7CiAgICAgICAgICAgICRmcmFtZSA9IGRlYnVnX2JhY2t0cmFjZShcREVCVUdfQkFDS1RSQUNFX0lHTk9SRV9BUkdTLCAxKVswXTsKICAgICAgICAgICAgdHJpZ2dlcl9lcnJvcihcc3ByaW50ZignVW5kZWZpbmVkIHByb3BlcnR5OiAlczo6JCVzIGluICVzIG9uIGxpbmUgJXMnLCAkaW5zdGFuY2U6OmNsYXNzLCAkbmFtZSwgJGZyYW1lWydmaWxlJ10sICRmcmFtZVsnbGluZSddKSwgXEVfVVNFUl9OT1RJQ0UpOwogICAgICAgIH0KCiAgICAgICAgZ2V0X2luX3Njb3BlOgogICAgICAgICRub3RCeVJlZiA9ICRub3RCeVJlZiB8fCAxID09PSAkcGFyZW50OwoKICAgICAgICB0cnkgewogICAgICAgICAgICBpZiAobnVsbCA9PT0gJHNjb3BlKSB7CiAgICAgICAgICAgICAgICBpZiAoISRub3RCeVJlZikgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAkaW5zdGFuY2UtPiRuYW1lOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJHZhbHVlID0gJGluc3RhbmNlLT4kbmFtZTsKCiAgICAgICAgICAgICAgICByZXR1cm4gJHZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRhY2Nlc3NvciA9IFJlZ2lzdHJ5OjokY2xhc3NBY2Nlc3NvcnNbJHNjb3BlXSA/Pz0gUmVnaXN0cnk6OmdldENsYXNzQWNjZXNzb3JzKCRzY29wZSk7CgogICAgICAgICAgICByZXR1cm4gJGFjY2Vzc29yWydnZXQnXSgkaW5zdGFuY2UsICRuYW1lLCAkbm90QnlSZWYpOwogICAgICAgIH0gY2F0Y2ggKFxFcnJvciAkZSkgewogICAgICAgICAgICBpZiAoXEVycm9yOjpjbGFzcyAhPT0gJGU6OmNsYXNzIHx8ICFzdHJfc3RhcnRzX3dpdGgoJGUtPmdldE1lc3NhZ2UoKSwgJ0Nhbm5vdCBhY2Nlc3MgdW5pbml0aWFsaXplZCBub24tbnVsbGFibGUgcHJvcGVydHknKSkgewogICAgICAgICAgICAgICAgdGhyb3cgJGU7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBpZiAobnVsbCA9PT0gJHNjb3BlKSB7CiAgICAgICAgICAgICAgICAgICAgJGluc3RhbmNlLT4kbmFtZSA9IFtdOwoKICAgICAgICAgICAgICAgICAgICByZXR1cm4gJGluc3RhbmNlLT4kbmFtZTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAkYWNjZXNzb3JbJ3NldCddKCRpbnN0YW5jZSwgJG5hbWUsIFtdKTsKCiAgICAgICAgICAgICAgICByZXR1cm4gJGFjY2Vzc29yWydnZXQnXSgkaW5zdGFuY2UsICRuYW1lLCAkbm90QnlSZWYpOwogICAgICAgICAgICB9IGNhdGNoIChcRXJyb3IpIHsKICAgICAgICAgICAgICAgIHRocm93ICRlOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBfX3NldCgkbmFtZSwgJHZhbHVlKTogdm9pZAogICAgewogICAgICAgICRwcm9wZXJ0eVNjb3BlcyA9IEh5ZHJhdG9yOjokcHJvcGVydHlTY29wZXNbJHRoaXM6OmNsYXNzXSA/Pz0gSHlkcmF0b3I6OmdldFByb3BlcnR5U2NvcGVzKCR0aGlzOjpjbGFzcyk7CiAgICAgICAgJHNjb3BlID0gbnVsbDsKICAgICAgICAkaW5zdGFuY2UgPSAkdGhpczsKCiAgICAgICAgaWYgKFskY2xhc3MsICwgJHdyaXRlU2NvcGUsICRhY2Nlc3NdID0gJHByb3BlcnR5U2NvcGVzWyRuYW1lXSA/PyBudWxsKSB7CiAgICAgICAgICAgICRzY29wZSA9IFJlZ2lzdHJ5OjpnZXRTY29wZUZvcldyaXRlKCRwcm9wZXJ0eVNjb3BlcywgJGNsYXNzLCAkbmFtZSwgJGFjY2VzcyA+PiAyKTsKCiAgICAgICAgICAgIGlmICgkd3JpdGVTY29wZSA9PT0gJHNjb3BlIHx8IGlzc2V0KCRwcm9wZXJ0eVNjb3Blc1siXDAkc2NvcGVcMCRuYW1lIl0pKSB7CiAgICAgICAgICAgICAgICBpZiAoJHN0YXRlID0gJHRoaXMtPmxhenlPYmplY3RTdGF0ZSA/PyBudWxsKSB7CiAgICAgICAgICAgICAgICAgICAgJGluc3RhbmNlID0gJHN0YXRlLT5yZWFsSW5zdGFuY2UgPz89ICgkc3RhdGUtPmluaXRpYWxpemVyKSgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZ290byBzZXRfaW5fc2NvcGU7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmICgkc3RhdGUgPSAkdGhpcy0+bGF6eU9iamVjdFN0YXRlID8/IG51bGwpIHsKICAgICAgICAgICAgJGluc3RhbmNlID0gJHN0YXRlLT5yZWFsSW5zdGFuY2UgPz89ICgkc3RhdGUtPmluaXRpYWxpemVyKSgpOwogICAgICAgIH0gZWxzZWlmICgoUmVnaXN0cnk6OiRwYXJlbnRNZXRob2RzW3NlbGY6OmNsYXNzXSA/Pz0gUmVnaXN0cnk6OmdldFBhcmVudE1ldGhvZHMoc2VsZjo6Y2xhc3MpKVsnc2V0J10pIHsKICAgICAgICAgICAgcGFyZW50OjpfX3NldCgkbmFtZSwgJHZhbHVlKTsKCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CgogICAgICAgIHNldF9pbl9zY29wZToKCiAgICAgICAgaWYgKG51bGwgPT09ICRzY29wZSkgewogICAgICAgICAgICAkaW5zdGFuY2UtPiRuYW1lID0gJHZhbHVlOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICRhY2Nlc3NvciA9IFJlZ2lzdHJ5OjokY2xhc3NBY2Nlc3NvcnNbJHNjb3BlXSA/Pz0gUmVnaXN0cnk6OmdldENsYXNzQWNjZXNzb3JzKCRzY29wZSk7CiAgICAgICAgICAgICRhY2Nlc3Nvclsnc2V0J10oJGluc3RhbmNlLCAkbmFtZSwgJHZhbHVlKTsKICAgICAgICB9CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIF9faXNzZXQoJG5hbWUpOiBib29sCiAgICB7CiAgICAgICAgJHByb3BlcnR5U2NvcGVzID0gSHlkcmF0b3I6OiRwcm9wZXJ0eVNjb3Blc1skdGhpczo6Y2xhc3NdID8/PSBIeWRyYXRvcjo6Z2V0UHJvcGVydHlTY29wZXMoJHRoaXM6OmNsYXNzKTsKICAgICAgICAkc2NvcGUgPSBudWxsOwogICAgICAgICRpbnN0YW5jZSA9ICR0aGlzOwoKICAgICAgICBpZiAoWyRjbGFzc10gPSAkcHJvcGVydHlTY29wZXNbJG5hbWVdID8/IG51bGwpIHsKICAgICAgICAgICAgJHNjb3BlID0gUmVnaXN0cnk6OmdldFNjb3BlRm9yUmVhZCgkcHJvcGVydHlTY29wZXMsICRjbGFzcywgJG5hbWUpOwoKICAgICAgICAgICAgaWYgKG51bGwgPT09ICRzY29wZSB8fCBpc3NldCgkcHJvcGVydHlTY29wZXNbIlwwJHNjb3BlXDAkbmFtZSJdKSkgewogICAgICAgICAgICAgICAgaWYgKCRzdGF0ZSA9ICR0aGlzLT5sYXp5T2JqZWN0U3RhdGUgPz8gbnVsbCkgewogICAgICAgICAgICAgICAgICAgICRpbnN0YW5jZSA9ICRzdGF0ZS0+cmVhbEluc3RhbmNlID8/PSAoJHN0YXRlLT5pbml0aWFsaXplcikoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGdvdG8gaXNzZXRfaW5fc2NvcGU7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmICgkc3RhdGUgPSAkdGhpcy0+bGF6eU9iamVjdFN0YXRlID8/IG51bGwpIHsKICAgICAgICAgICAgJGluc3RhbmNlID0gJHN0YXRlLT5yZWFsSW5zdGFuY2UgPz89ICgkc3RhdGUtPmluaXRpYWxpemVyKSgpOwogICAgICAgIH0gZWxzZWlmICgoUmVnaXN0cnk6OiRwYXJlbnRNZXRob2RzW3NlbGY6OmNsYXNzXSA/Pz0gUmVnaXN0cnk6OmdldFBhcmVudE1ldGhvZHMoc2VsZjo6Y2xhc3MpKVsnaXNzZXQnXSkgewogICAgICAgICAgICByZXR1cm4gcGFyZW50OjpfX2lzc2V0KCRuYW1lKTsKICAgICAgICB9CgogICAgICAgIGlzc2V0X2luX3Njb3BlOgoKICAgICAgICBpZiAobnVsbCA9PT0gJHNjb3BlKSB7CiAgICAgICAgICAgIHJldHVybiBpc3NldCgkaW5zdGFuY2UtPiRuYW1lKTsKICAgICAgICB9CiAgICAgICAgJGFjY2Vzc29yID0gUmVnaXN0cnk6OiRjbGFzc0FjY2Vzc29yc1skc2NvcGVdID8/PSBSZWdpc3RyeTo6Z2V0Q2xhc3NBY2Nlc3NvcnMoJHNjb3BlKTsKCiAgICAgICAgcmV0dXJuICRhY2Nlc3NvclsnaXNzZXQnXSgkaW5zdGFuY2UsICRuYW1lKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gX191bnNldCgkbmFtZSk6IHZvaWQKICAgIHsKICAgICAgICAkcHJvcGVydHlTY29wZXMgPSBIeWRyYXRvcjo6JHByb3BlcnR5U2NvcGVzWyR0aGlzOjpjbGFzc10gPz89IEh5ZHJhdG9yOjpnZXRQcm9wZXJ0eVNjb3BlcygkdGhpczo6Y2xhc3MpOwogICAgICAgICRzY29wZSA9IG51bGw7CiAgICAgICAgJGluc3RhbmNlID0gJHRoaXM7CgogICAgICAgIGlmIChbJGNsYXNzLCAsICR3cml0ZVNjb3BlLCAkYWNjZXNzXSA9ICRwcm9wZXJ0eVNjb3Blc1skbmFtZV0gPz8gbnVsbCkgewogICAgICAgICAgICAkc2NvcGUgPSBSZWdpc3RyeTo6Z2V0U2NvcGVGb3JXcml0ZSgkcHJvcGVydHlTY29wZXMsICRjbGFzcywgJG5hbWUsICRhY2Nlc3MgPj4gMik7CgogICAgICAgICAgICBpZiAoJHdyaXRlU2NvcGUgPT09ICRzY29wZSB8fCBpc3NldCgkcHJvcGVydHlTY29wZXNbIlwwJHNjb3BlXDAkbmFtZSJdKSkgewogICAgICAgICAgICAgICAgaWYgKCRzdGF0ZSA9ICR0aGlzLT5sYXp5T2JqZWN0U3RhdGUgPz8gbnVsbCkgewogICAgICAgICAgICAgICAgICAgICRpbnN0YW5jZSA9ICRzdGF0ZS0+cmVhbEluc3RhbmNlID8/PSAoJHN0YXRlLT5pbml0aWFsaXplcikoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGdvdG8gdW5zZXRfaW5fc2NvcGU7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmICgkc3RhdGUgPSAkdGhpcy0+bGF6eU9iamVjdFN0YXRlID8/IG51bGwpIHsKICAgICAgICAgICAgJGluc3RhbmNlID0gJHN0YXRlLT5yZWFsSW5zdGFuY2UgPz89ICgkc3RhdGUtPmluaXRpYWxpemVyKSgpOwogICAgICAgIH0gZWxzZWlmICgoUmVnaXN0cnk6OiRwYXJlbnRNZXRob2RzW3NlbGY6OmNsYXNzXSA/Pz0gUmVnaXN0cnk6OmdldFBhcmVudE1ldGhvZHMoc2VsZjo6Y2xhc3MpKVsndW5zZXQnXSkgewogICAgICAgICAgICBwYXJlbnQ6Ol9fdW5zZXQoJG5hbWUpOwoKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KCiAgICAgICAgdW5zZXRfaW5fc2NvcGU6CgogICAgICAgIGlmIChudWxsID09PSAkc2NvcGUpIHsKICAgICAgICAgICAgdW5zZXQoJGluc3RhbmNlLT4kbmFtZSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgJGFjY2Vzc29yID0gUmVnaXN0cnk6OiRjbGFzc0FjY2Vzc29yc1skc2NvcGVdID8/PSBSZWdpc3RyeTo6Z2V0Q2xhc3NBY2Nlc3NvcnMoJHNjb3BlKTsKICAgICAgICAgICAgJGFjY2Vzc29yWyd1bnNldCddKCRpbnN0YW5jZSwgJG5hbWUpOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gX19jbG9uZSgpOiB2b2lkCiAgICB7CiAgICAgICAgaWYgKCFpc3NldCgkdGhpcy0+bGF6eU9iamVjdFN0YXRlKSkgewogICAgICAgICAgICBpZiAoKFJlZ2lzdHJ5OjokcGFyZW50TWV0aG9kc1tzZWxmOjpjbGFzc10gPz89IFJlZ2lzdHJ5OjpnZXRQYXJlbnRNZXRob2RzKHNlbGY6OmNsYXNzKSlbJ2Nsb25lJ10pIHsKICAgICAgICAgICAgICAgIHBhcmVudDo6X19jbG9uZSgpOwogICAgICAgICAgICB9CgogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQoKICAgICAgICAkdGhpcy0+bGF6eU9iamVjdFN0YXRlID0gY2xvbmUgJHRoaXMtPmxhenlPYmplY3RTdGF0ZTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gX19zZXJpYWxpemUoKTogYXJyYXkKICAgIHsKICAgICAgICAkY2xhc3MgPSBzZWxmOjpjbGFzczsKICAgICAgICAkc3RhdGUgPSAkdGhpcy0+bGF6eU9iamVjdFN0YXRlID8/IG51bGw7CgogICAgICAgIGlmICghJHN0YXRlICYmIChSZWdpc3RyeTo6JHBhcmVudE1ldGhvZHNbJGNsYXNzXSA/Pz0gUmVnaXN0cnk6OmdldFBhcmVudE1ldGhvZHMoJGNsYXNzKSlbJ3NlcmlhbGl6ZSddKSB7CiAgICAgICAgICAgICRwcm9wZXJ0aWVzID0gcGFyZW50OjpfX3NlcmlhbGl6ZSgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICRwcm9wZXJ0aWVzID0gKGFycmF5KSAkdGhpczsKCiAgICAgICAgICAgIGlmICgkc3RhdGUpIHsKICAgICAgICAgICAgICAgIHVuc2V0KCRwcm9wZXJ0aWVzWyJcMCRjbGFzc1wwbGF6eU9iamVjdFN0YXRlIl0pOwogICAgICAgICAgICAgICAgJHByb3BlcnRpZXNbIlwwJGNsYXNzXDBsYXp5T2JqZWN0UmVhbCJdID0gJHN0YXRlLT5yZWFsSW5zdGFuY2UgPz89ICgkc3RhdGUtPmluaXRpYWxpemVyKSgpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiAoJHN0YXRlIHx8IFJlZ2lzdHJ5OjokcGFyZW50TWV0aG9kc1skY2xhc3NdWydzZXJpYWxpemUnXSB8fCAhUmVnaXN0cnk6OiRwYXJlbnRNZXRob2RzWyRjbGFzc11bJ3NsZWVwJ10pIHsKICAgICAgICAgICAgcmV0dXJuICRwcm9wZXJ0aWVzOwogICAgICAgIH0KCiAgICAgICAgJHNjb3BlID0gZ2V0X3BhcmVudF9jbGFzcygkY2xhc3MpOwogICAgICAgICRkYXRhID0gW107CgogICAgICAgIGZvcmVhY2ggKHBhcmVudDo6X19zbGVlcCgpIGFzICRuYW1lKSB7CiAgICAgICAgICAgICR2YWx1ZSA9ICRwcm9wZXJ0aWVzWyRrID0gJG5hbWVdID8/ICRwcm9wZXJ0aWVzWyRrID0gIlwwKlwwJG5hbWUiXSA/PyAkcHJvcGVydGllc1skayA9ICJcMCRjbGFzc1wwJG5hbWUiXSA/PyAkcHJvcGVydGllc1skayA9ICJcMCRzY29wZVwwJG5hbWUiXSA/PyAkayA9IG51bGw7CgogICAgICAgICAgICBpZiAobnVsbCA9PT0gJGspIHsKICAgICAgICAgICAgICAgIHRyaWdnZXJfZXJyb3IoXHNwcmludGYoJ3NlcmlhbGl6ZSgpOiAiJXMiIHJldHVybmVkIGFzIG1lbWJlciB2YXJpYWJsZSBmcm9tIF9fc2xlZXAoKSBidXQgZG9lcyBub3QgZXhpc3QnLCAkbmFtZSksIFxFX1VTRVJfTk9USUNFKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICRkYXRhWyRrXSA9ICR2YWx1ZTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmV0dXJuICRkYXRhOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBfX3Vuc2VyaWFsaXplKGFycmF5ICRkYXRhKTogdm9pZAogICAgewogICAgICAgICRjbGFzcyA9IHNlbGY6OmNsYXNzOwoKICAgICAgICBpZiAoJGluc3RhbmNlID0gJGRhdGFbIlwwJGNsYXNzXDBsYXp5T2JqZWN0UmVhbCJdID8/IG51bGwpIHsKICAgICAgICAgICAgdW5zZXQoJGRhdGFbIlwwJGNsYXNzXDBsYXp5T2JqZWN0UmVhbCJdKTsKCiAgICAgICAgICAgIGZvcmVhY2ggKFJlZ2lzdHJ5OjokY2xhc3NSZXNldHRlcnNbJGNsYXNzXSA/Pz0gUmVnaXN0cnk6OmdldENsYXNzUmVzZXR0ZXJzKCRjbGFzcykgYXMgJHJlc2V0KSB7CiAgICAgICAgICAgICAgICAkcmVzZXQoJHRoaXMsICRkYXRhKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKCRkYXRhKSB7CiAgICAgICAgICAgICAgICBQdWJsaWNIeWRyYXRvcjo6aHlkcmF0ZSgkdGhpcywgJGRhdGEpOwogICAgICAgICAgICB9CiAgICAgICAgICAgICR0aGlzLT5sYXp5T2JqZWN0U3RhdGUgPSBuZXcgTGF6eU9iamVjdFN0YXRlKFJlZ2lzdHJ5Ojokbm9Jbml0aWFsaXplclN0YXRlID8/PSBzdGF0aWMgZm4gKCkgPT4gdGhyb3cgbmV3IFxMb2dpY0V4Y2VwdGlvbignTGF6eSBwcm94eSBoYXMgbm8gaW5pdGlhbGl6ZXIuJykpOwogICAgICAgICAgICAkdGhpcy0+bGF6eU9iamVjdFN0YXRlLT5yZWFsSW5zdGFuY2UgPSAkaW5zdGFuY2U7CiAgICAgICAgfSBlbHNlaWYgKChSZWdpc3RyeTo6JHBhcmVudE1ldGhvZHNbJGNsYXNzXSA/Pz0gUmVnaXN0cnk6OmdldFBhcmVudE1ldGhvZHMoJGNsYXNzKSlbJ3Vuc2VyaWFsaXplJ10pIHsKICAgICAgICAgICAgcGFyZW50OjpfX3Vuc2VyaWFsaXplKCRkYXRhKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBQdWJsaWNIeWRyYXRvcjo6aHlkcmF0ZSgkdGhpcywgJGRhdGEpOwoKICAgICAgICAgICAgaWYgKFJlZ2lzdHJ5OjokcGFyZW50TWV0aG9kc1skY2xhc3NdWyd3YWtldXAnXSkgewogICAgICAgICAgICAgICAgcGFyZW50OjpfX3dha2V1cCgpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBfX2Rlc3RydWN0KCkKICAgIHsKICAgICAgICBpZiAoaXNzZXQoJHRoaXMtPmxhenlPYmplY3RTdGF0ZSkpIHsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KCiAgICAgICAgaWYgKChSZWdpc3RyeTo6JHBhcmVudE1ldGhvZHNbc2VsZjo6Y2xhc3NdID8/PSBSZWdpc3RyeTo6Z2V0UGFyZW50TWV0aG9kcyhzZWxmOjpjbGFzcykpWydkZXN0cnVjdCddKSB7CiAgICAgICAgICAgIHBhcmVudDo6X19kZXN0cnVjdCgpOwogICAgICAgIH0KICAgIH0KfQoiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZG9jQmxvY2siO047czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBtZXRhZGF0YSI7YTowOnt9fQ==";