1778692642
441d63ebbc39eba359c9061ece8482bd-phpdoc%3A5aeb376fa7da32e7cdd434379328aea9-67a60ad1ac25465fbc99fb049a97899c
s:110600:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjI2OiJDb25maWdCdWlsZGVyR2VuZXJhdG9yLnBocCI7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lc3BhY2VzIjthOjE6e3M6MzM6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlciI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjMzOiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo3OiJCdWlsZGVyIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW5jbHVkZXMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZnVuY3Rpb25zIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNvbnN0YW50cyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjbGFzc2VzIjthOjE6e3M6NTY6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXyI6MTU6e3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBpbXBsZW1lbnRzIjthOjE6e3M6NjU6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9ySW50ZXJmYWNlIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjU6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9ySW50ZXJmYWNlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MzE6IkNvbmZpZ0J1aWxkZXJHZW5lcmF0b3JJbnRlcmZhY2UiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGNvbnN0YW50cyI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHByb3BlcnRpZXMiO2E6Mjp7czo2NjoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OiRjbGFzc2VzIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxNDp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mzk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjY6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjokY2xhc3NlcyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6ImNsYXNzZXMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MDoiIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDY6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDbGFzc0J1aWxkZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoiQ2xhc3NCdWlsZGVyIjt9fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czozMjoiU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjE0OntzOjk6IkFycmF5Tm9kZSI7czo0NToiU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cQXJyYXlOb2RlIjtzOjg6IkJhc2VOb2RlIjtzOjQ0OiJTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxCYXNlTm9kZSI7czoxMToiQm9vbGVhbk5vZGUiO3M6NDc6IlN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xEZWZpbml0aW9uXEJvb2xlYW5Ob2RlIjtzOjExOiJFeHByQnVpbGRlciI7czo1NToiU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cQnVpbGRlclxFeHByQnVpbGRlciI7czoyMjoiQ29uZmlndXJhdGlvbkludGVyZmFjZSI7czo1ODoiU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cQ29uZmlndXJhdGlvbkludGVyZmFjZSI7czo4OiJFbnVtTm9kZSI7czo0NDoiU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cRW51bU5vZGUiO3M6Mjk6IkludmFsaWRDb25maWd1cmF0aW9uRXhjZXB0aW9uIjtzOjc1OiJTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxFeGNlcHRpb25cSW52YWxpZENvbmZpZ3VyYXRpb25FeGNlcHRpb24iO3M6OToiRmxvYXROb2RlIjtzOjQ1OiJTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxGbG9hdE5vZGUiO3M6MTE6IkludGVnZXJOb2RlIjtzOjQ3OiJTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxJbnRlZ2VyTm9kZSI7czoxMzoiTm9kZUludGVyZmFjZSI7czo0OToiU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cTm9kZUludGVyZmFjZSI7czoxOToiUHJvdG90eXBlZEFycmF5Tm9kZSI7czo1NToiU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cUHJvdG90eXBlZEFycmF5Tm9kZSI7czoxMDoiU2NhbGFyTm9kZSI7czo0NjoiU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cU2NhbGFyTm9kZSI7czoxMjoiVmFyaWFibGVOb2RlIjtzOjQ4OiJTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxWYXJpYWJsZU5vZGUiO3M6MTc6IlBhcmFtQ29uZmlndXJhdG9yIjtzOjQ5OiJTeW1mb255XENvbXBvbmVudFxDb25maWdcTG9hZGVyXFBhcmFtQ29uZmlndXJhdG9yIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uIjoyOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAGV4cHJlc3Npb24iO3M6MjoiW10iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGhvb2tzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXJ0dWFsIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjY4OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ29uZmlnQnVpbGRlckdlbmVyYXRvcjo6JG91dHB1dERpciI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTQ6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjY4OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ29uZmlnQnVpbGRlckdlbmVyYXRvcjo6JG91dHB1dERpciI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjk6Im91dHB1dERpciI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtOO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGhvb2tzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXJ0dWFsIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGF0dHJpYnV0ZXMiO2E6MDp7fX19czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGhvZHMiO2E6MTk6e3M6NzE6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpfX2NvbnN0cnVjdCgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTM6e3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo5OiJvdXRwdXREaXIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjEzNzk7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTQ3NTt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo3MToiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6Ol9fY29uc3RydWN0KCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMToiX19jb25zdHJ1Y3QiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo2NToiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OmJ1aWxkKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU5OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cQ29uZmlndXJhdGlvbkludGVyZmFjZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIyOiJDb25maWd1cmF0aW9uSW50ZXJmYWNlIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTM6ImNvbmZpZ3VyYXRpb24iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjUwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE1NjE7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Nzg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MjU0NTt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo4OiJcQ2xvc3VyZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6IkNsb3N1cmUiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjU6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpidWlsZCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NToiYnVpbGQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM4OiJ0aGF0IHdpbGwgcmV0dXJuIHRoZSByb290IGNvbmZpZyBjbGFzcyI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6ODoiXENsb3N1cmUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo3OiJDbG9zdXJlIjt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjU0O3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjcxOiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ29uZmlnQnVpbGRlckdlbmVyYXRvcjo6Z2V0RnVsbFBhdGgoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDY6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDbGFzc0J1aWxkZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoiQ2xhc3NCdWlsZGVyIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToiY2xhc3MiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjgwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjI1NTI7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6Mjg2Mzt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzE6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpnZXRGdWxsUGF0aCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTE6ImdldEZ1bGxQYXRoIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjcyOiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ29uZmlnQnVpbGRlckdlbmVyYXRvcjo6d3JpdGVDbGFzc2VzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo5MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToyODcwO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTozMzM2O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzI6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjp3cml0ZUNsYXNzZXMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEyOiJ3cml0ZUNsYXNzZXMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6Njk6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpidWlsZE5vZGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTA6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxOb2RlSW50ZXJmYWNlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6Ik5vZGVJbnRlcmZhY2UiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJub2RlIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ2OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ2xhc3NCdWlsZGVyIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTI6IkNsYXNzQnVpbGRlciI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6ImNsYXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjk6Im5hbWVzcGFjZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTA2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjMzNDM7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTIxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjQyNTE7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2OToiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OmJ1aWxkTm9kZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiYnVpbGROb2RlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjc1OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ29uZmlnQnVpbGRlckdlbmVyYXRvcjo6aGFuZGxlQXJyYXlOb2RlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTozOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ2OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cQXJyYXlOb2RlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiQXJyYXlOb2RlIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoibm9kZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NjoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENsYXNzQnVpbGRlciI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEyOiJDbGFzc0J1aWxkZXIiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo5OiJuYW1lc3BhY2UiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEyMztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo0MjU4O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE4NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo2OTUzO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzU6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpoYW5kbGVBcnJheU5vZGUoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJoYW5kbGVBcnJheU5vZGUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6Nzg6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpoYW5kbGVWYXJpYWJsZU5vZGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDk6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxWYXJpYWJsZU5vZGUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoiVmFyaWFibGVOb2RlIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoibm9kZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NjoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENsYXNzQnVpbGRlciI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEyOiJDbGFzc0J1aWxkZXIiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTg5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjY5NjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjEyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjc2NzA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo3ODoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OmhhbmRsZVZhcmlhYmxlTm9kZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTg6ImhhbmRsZVZhcmlhYmxlTm9kZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo4NToiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OmhhbmRsZVByb3RvdHlwZWRBcnJheU5vZGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTY6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxQcm90b3R5cGVkQXJyYXlOb2RlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6IlByb3RvdHlwZWRBcnJheU5vZGUiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJub2RlIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ2OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ2xhc3NCdWlsZGVyIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTI6IkNsYXNzQnVpbGRlciI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6ImNsYXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjk6Im5hbWVzcGFjZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjE0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjc2Nzc7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzY1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjEzNjg0O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6ODU6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpoYW5kbGVQcm90b3R5cGVkQXJyYXlOb2RlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyNToiaGFuZGxlUHJvdG90eXBlZEFycmF5Tm9kZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo3NjoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OmhhbmRsZVNjYWxhck5vZGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDc6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxTY2FsYXJOb2RlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTA6IlNjYWxhck5vZGUiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJub2RlIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ2OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ2xhc3NCdWlsZGVyIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTI6IkNsYXNzQnVpbGRlciI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6ImNsYXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNjc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTM2OTE7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mzg2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE0MjQwO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzY6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpoYW5kbGVTY2FsYXJOb2RlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiaGFuZGxlU2NhbGFyTm9kZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo3NzoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OmdldFBhcmFtZXRlclR5cGVzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUwOiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cTm9kZUludGVyZmFjZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEzOiJOb2RlSW50ZXJmYWNlIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoibm9kZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mzg4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE0MjQ3O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQxNTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxNTI1Mzt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjc3OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ29uZmlnQnVpbGRlckdlbmVyYXRvcjo6Z2V0UGFyYW1ldGVyVHlwZXMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE3OiJnZXRQYXJhbWV0ZXJUeXBlcyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo3MDoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OmdldENvbW1lbnQoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDU6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxCYXNlTm9kZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6IkJhc2VOb2RlIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoibm9kZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDE3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE1MjYwO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ1NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxNjkyNjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzA6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpnZXRDb21tZW50KCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMDoiZ2V0Q29tbWVudCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo3NToiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OmdldFNpbmd1bGFyTmFtZSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTM6e3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1NjoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xEZWZpbml0aW9uXFByb3RvdHlwZWRBcnJheU5vZGUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiUHJvdG90eXBlZEFycmF5Tm9kZSI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6Im5vZGUiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ1OTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxNjk4Mzt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0NzY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTc0NzU7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjc1OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ29uZmlnQnVpbGRlckdlbmVyYXRvcjo6Z2V0U2luZ3VsYXJOYW1lKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNToiZ2V0U2luZ3VsYXJOYW1lIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjI2OiJQaWNrIGEgZ29vZCBzaW5ndWxhciBuYW1lLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjU0O3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjcyOiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ29uZmlnQnVpbGRlckdlbmVyYXRvcjo6YnVpbGRUb0FycmF5KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ2OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ2xhc3NCdWlsZGVyIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTI6IkNsYXNzQnVpbGRlciI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6ImNsYXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0Nzg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTc0ODI7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTEyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE4NzU4O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzI6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpidWlsZFRvQXJyYXkoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEyOiJidWlsZFRvQXJyYXkiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6NzY6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpidWlsZENvbnN0cnVjdG9yKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ2OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ2xhc3NCdWlsZGVyIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTI6IkNsYXNzQnVpbGRlciI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6ImNsYXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1MTQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTg3NjU7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTU5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjIwNDY2O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzY6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpidWlsZENvbnN0cnVjdG9yKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiYnVpbGRDb25zdHJ1Y3RvciI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo3NjoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OmJ1aWxkU2V0RXh0cmFLZXkoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDY6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDbGFzc0J1aWxkZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoiQ2xhc3NCdWlsZGVyIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToiY2xhc3MiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU2MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToyMDQ3Mzt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1ODM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MjA5NDE7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo3NjoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OmJ1aWxkU2V0RXh0cmFLZXkoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE2OiJidWlsZFNldEV4dHJhS2V5Ijt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjc1OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ29uZmlnQnVpbGRlckdlbmVyYXRvcjo6Z2V0U3ViTmFtZXNwYWNlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ2OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ2xhc3NCdWlsZGVyIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTI6IkNsYXNzQnVpbGRlciI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjk6InJvb3RDbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTg1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjIwOTQ4O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU4ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToyMTEyNTt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzU6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpnZXRTdWJOYW1lc3BhY2UoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJnZXRTdWJOYW1lc3BhY2UiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6ODQ6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpoYXNOb3JtYWxpemF0aW9uQ2xvc3VyZXMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTA6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxOb2RlSW50ZXJmYWNlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6Ik5vZGVJbnRlcmZhY2UiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJub2RlIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1OTA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MjExMzI7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTk5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjIxNDIwO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo4NDoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6Omhhc05vcm1hbGl6YXRpb25DbG9zdXJlcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjQ6Imhhc05vcm1hbGl6YXRpb25DbG9zdXJlcyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo2NzoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OmdldFR5cGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6OToiY2xhc3NUeXBlIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjI0OiJoYXNOb3JtYWxpemF0aW9uQ2xvc3VyZXMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYwMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToyMTQyNzt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2MDQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MjE1OTM7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjY3OiJcU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXJcQ29uZmlnQnVpbGRlckdlbmVyYXRvcjo6Z2V0VHlwZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NzoiZ2V0VHlwZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo3MjoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3I6OmdldFBhcmFtVHlwZSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTM6e3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToidHlwZXMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MjE6IndpdGhQYXJhbUNvbmZpZ3VyYXRvciI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uIjoyOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAGV4cHJlc3Npb24iO3M6NDQ6Int7IFBIUERPQzY4OTM0YTNlOTQ1NWZhNzI0MjAyMzdlYjA1OTAyMzI3IH19IjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAHBhcnRzIjthOjE6e3M6NDQ6Int7IFBIUERPQzY4OTM0YTNlOTQ1NWZhNzI0MjAyMzdlYjA1OTAyMzI3IH19IjtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUHNldWRvVHlwZXNcRmFsc2VfIjowOnt9fX1zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NjA2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjIxNjAwO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYwOTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToyMTgzNDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzI6IlxTeW1mb255XENvbXBvbmVudFxDb25maWdcQnVpbGRlclxDb25maWdCdWlsZGVyR2VuZXJhdG9yOjpnZXRQYXJhbVR5cGUoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEyOiJnZXRQYXJhbVR5cGUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fX1zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AdXNlZFRyYWl0cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYxMDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1NjoiXFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xCdWlsZGVyXENvbmZpZ0J1aWxkZXJHZW5lcmF0b3IiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMjoiQ29uZmlnQnVpbGRlckdlbmVyYXRvciI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NTI6IkdlbmVyYXRlIENvbmZpZ0J1aWxkZXJzIHRvIGhlbHAgY3JlYXRlIHZhbGlkIGNvbmZpZy4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEF1dGhvciI6NDp7czo3OiIAKgBuYW1lIjtzOjY6ImF1dGhvciI7czoxNDoiACoAZGVzY3JpcHRpb24iO047czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEF1dGhvcgBhdXRob3JOYW1lIjtzOjEzOiJUb2JpYXMgTnlob2xtIjtzOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcQXV0aG9yAGF1dGhvckVtYWlsIjtzOjIzOiJ0b2JpYXMubnlob2xtQGdtYWlsLmNvbSI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6NTQ7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AcGFyZW50IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBmaW5hbCI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwByZWFkT25seSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGF0dHJpYnV0ZXMiO2E6MDp7fX19czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbnRlcmZhY2VzIjthOjA6e31zOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHRyYWl0cyI7YTowOnt9czo0MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBlbnVtcyI7YTowOnt9czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBoYXNoIjtzOjMyOiI2N2E2MGFkMWFjMjU0NjVmYmM5OWZiMDQ5YTk3ODk5YyI7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBwYXRoIjtzOjU2OiJ2ZW5kb3Ivc3ltZm9ueS9jb25maWcvQnVpbGRlci9Db25maWdCdWlsZGVyR2VuZXJhdG9yLnBocCI7czo0MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBzb3VyY2UiO3M6MjE4Mzg6Ijw/cGhwCgovKgogKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgU3ltZm9ueSBwYWNrYWdlLgogKgogKiAoYykgRmFiaWVuIFBvdGVuY2llciA8ZmFiaWVuQHN5bWZvbnkuY29tPgogKgogKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRQogKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS4KICovCgpuYW1lc3BhY2UgU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXEJ1aWxkZXI7Cgp1c2UgU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cQXJyYXlOb2RlOwp1c2UgU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cQmFzZU5vZGU7CnVzZSBTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxCb29sZWFuTm9kZTsKdXNlIFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xEZWZpbml0aW9uXEJ1aWxkZXJcRXhwckJ1aWxkZXI7CnVzZSBTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxDb25maWd1cmF0aW9uSW50ZXJmYWNlOwp1c2UgU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cRW51bU5vZGU7CnVzZSBTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxFeGNlcHRpb25cSW52YWxpZENvbmZpZ3VyYXRpb25FeGNlcHRpb247CnVzZSBTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxGbG9hdE5vZGU7CnVzZSBTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxJbnRlZ2VyTm9kZTsKdXNlIFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xEZWZpbml0aW9uXE5vZGVJbnRlcmZhY2U7CnVzZSBTeW1mb255XENvbXBvbmVudFxDb25maWdcRGVmaW5pdGlvblxQcm90b3R5cGVkQXJyYXlOb2RlOwp1c2UgU3ltZm9ueVxDb21wb25lbnRcQ29uZmlnXERlZmluaXRpb25cU2NhbGFyTm9kZTsKdXNlIFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xEZWZpbml0aW9uXFZhcmlhYmxlTm9kZTsKdXNlIFN5bWZvbnlcQ29tcG9uZW50XENvbmZpZ1xMb2FkZXJcUGFyYW1Db25maWd1cmF0b3I7CgovKioKICogR2VuZXJhdGUgQ29uZmlnQnVpbGRlcnMgdG8gaGVscCBjcmVhdGUgdmFsaWQgY29uZmlnLgogKgogKiBAYXV0aG9yIFRvYmlhcyBOeWhvbG0gPHRvYmlhcy5ueWhvbG1AZ21haWwuY29tPgogKi8KY2xhc3MgQ29uZmlnQnVpbGRlckdlbmVyYXRvciBpbXBsZW1lbnRzIENvbmZpZ0J1aWxkZXJHZW5lcmF0b3JJbnRlcmZhY2UKewogICAgLyoqCiAgICAgKiBAdmFyIENsYXNzQnVpbGRlcltdCiAgICAgKi8KICAgIHByaXZhdGUgYXJyYXkgJGNsYXNzZXMgPSBbXTsKICAgIHByaXZhdGUgc3RyaW5nICRvdXRwdXREaXI7CgogICAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KHN0cmluZyAkb3V0cHV0RGlyKQogICAgewogICAgICAgICR0aGlzLT5vdXRwdXREaXIgPSAkb3V0cHV0RGlyOwogICAgfQoKICAgIC8qKgogICAgICogQHJldHVybiBcQ2xvc3VyZSB0aGF0IHdpbGwgcmV0dXJuIHRoZSByb290IGNvbmZpZyBjbGFzcwogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gYnVpbGQoQ29uZmlndXJhdGlvbkludGVyZmFjZSAkY29uZmlndXJhdGlvbik6IFxDbG9zdXJlCiAgICB7CiAgICAgICAgJHRoaXMtPmNsYXNzZXMgPSBbXTsKCiAgICAgICAgJHJvb3ROb2RlID0gJGNvbmZpZ3VyYXRpb24tPmdldENvbmZpZ1RyZWVCdWlsZGVyKCktPmJ1aWxkVHJlZSgpOwogICAgICAgICRyb290Q2xhc3MgPSBuZXcgQ2xhc3NCdWlsZGVyKCdTeW1mb255XFxDb25maWcnLCAkcm9vdE5vZGUtPmdldE5hbWUoKSk7CgogICAgICAgICRwYXRoID0gJHRoaXMtPmdldEZ1bGxQYXRoKCRyb290Q2xhc3MpOwogICAgICAgIGlmICghaXNfZmlsZSgkcGF0aCkpIHsKICAgICAgICAgICAgLy8gR2VuZXJhdGUgdGhlIGNsYXNzIGlmIHRoZSBmaWxlIG5vdCBleGlzdHMKICAgICAgICAgICAgJHRoaXMtPmNsYXNzZXNbXSA9ICRyb290Q2xhc3M7CiAgICAgICAgICAgICR0aGlzLT5idWlsZE5vZGUoJHJvb3ROb2RlLCAkcm9vdENsYXNzLCAkdGhpcy0+Z2V0U3ViTmFtZXNwYWNlKCRyb290Q2xhc3MpKTsKICAgICAgICAgICAgJHJvb3RDbGFzcy0+YWRkSW1wbGVtZW50cyhDb25maWdCdWlsZGVySW50ZXJmYWNlOjpjbGFzcyk7CiAgICAgICAgICAgICRyb290Q2xhc3MtPmFkZE1ldGhvZCgnZ2V0RXh0ZW5zaW9uQWxpYXMnLCAnCnB1YmxpYyBmdW5jdGlvbiBOQU1FKCk6IHN0cmluZwp7CiAgICByZXR1cm4gXCdBTElBU1wnOwp9JywgWydBTElBUycgPT4gJHJvb3ROb2RlLT5nZXRQYXRoKCldKTsKCiAgICAgICAgICAgICR0aGlzLT53cml0ZUNsYXNzZXMoKTsKICAgICAgICB9CgogICAgICAgIHJldHVybiBmdW5jdGlvbiAoKSB1c2UgKCRwYXRoLCAkcm9vdENsYXNzKSB7CiAgICAgICAgICAgIHJlcXVpcmVfb25jZSAkcGF0aDsKICAgICAgICAgICAgJGNsYXNzTmFtZSA9ICRyb290Q2xhc3MtPmdldEZxY24oKTsKCiAgICAgICAgICAgIHJldHVybiBuZXcgJGNsYXNzTmFtZSgpOwogICAgICAgIH07CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBnZXRGdWxsUGF0aChDbGFzc0J1aWxkZXIgJGNsYXNzKTogc3RyaW5nCiAgICB7CiAgICAgICAgJGRpcmVjdG9yeSA9ICR0aGlzLT5vdXRwdXREaXIuXERJUkVDVE9SWV9TRVBBUkFUT1IuJGNsYXNzLT5nZXREaXJlY3RvcnkoKTsKICAgICAgICBpZiAoIWlzX2RpcigkZGlyZWN0b3J5KSkgewogICAgICAgICAgICBAbWtkaXIoJGRpcmVjdG9yeSwgMDc3NywgdHJ1ZSk7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gJGRpcmVjdG9yeS5cRElSRUNUT1JZX1NFUEFSQVRPUi4kY2xhc3MtPmdldEZpbGVuYW1lKCk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiB3cml0ZUNsYXNzZXMoKTogdm9pZAogICAgewogICAgICAgIGZvcmVhY2ggKCR0aGlzLT5jbGFzc2VzIGFzICRjbGFzcykgewogICAgICAgICAgICAkdGhpcy0+YnVpbGRDb25zdHJ1Y3RvcigkY2xhc3MpOwogICAgICAgICAgICAkdGhpcy0+YnVpbGRUb0FycmF5KCRjbGFzcyk7CiAgICAgICAgICAgIGlmICgkY2xhc3MtPmdldFByb3BlcnRpZXMoKSkgewogICAgICAgICAgICAgICAgJGNsYXNzLT5hZGRQcm9wZXJ0eSgnX3VzZWRQcm9wZXJ0aWVzJywgbnVsbCwgJ1tdJyk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJHRoaXMtPmJ1aWxkU2V0RXh0cmFLZXkoJGNsYXNzKTsKCiAgICAgICAgICAgIGZpbGVfcHV0X2NvbnRlbnRzKCR0aGlzLT5nZXRGdWxsUGF0aCgkY2xhc3MpLCAkY2xhc3MtPmJ1aWxkKCkpOwogICAgICAgIH0KCiAgICAgICAgJHRoaXMtPmNsYXNzZXMgPSBbXTsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIGJ1aWxkTm9kZShOb2RlSW50ZXJmYWNlICRub2RlLCBDbGFzc0J1aWxkZXIgJGNsYXNzLCBzdHJpbmcgJG5hbWVzcGFjZSk6IHZvaWQKICAgIHsKICAgICAgICBpZiAoISRub2RlIGluc3RhbmNlb2YgQXJyYXlOb2RlKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBcTG9naWNFeGNlcHRpb24oJ1RoZSBub2RlIHdhcyBleHBlY3RlZCB0byBiZSBhbiBBcnJheU5vZGUuIFRoaXMgQ29uZmlndXJhdGlvbiBpbmNsdWRlcyBhbiBlZGdlIGNhc2Ugbm90IHN1cHBvcnRlZCB5ZXQuJyk7CiAgICAgICAgfQoKICAgICAgICBmb3JlYWNoICgkbm9kZS0+Z2V0Q2hpbGRyZW4oKSBhcyAkY2hpbGQpIHsKICAgICAgICAgICAgbWF0Y2ggKHRydWUpIHsKICAgICAgICAgICAgICAgICRjaGlsZCBpbnN0YW5jZW9mIFNjYWxhck5vZGUgPT4gJHRoaXMtPmhhbmRsZVNjYWxhck5vZGUoJGNoaWxkLCAkY2xhc3MpLAogICAgICAgICAgICAgICAgJGNoaWxkIGluc3RhbmNlb2YgUHJvdG90eXBlZEFycmF5Tm9kZSA9PiAkdGhpcy0+aGFuZGxlUHJvdG90eXBlZEFycmF5Tm9kZSgkY2hpbGQsICRjbGFzcywgJG5hbWVzcGFjZSksCiAgICAgICAgICAgICAgICAkY2hpbGQgaW5zdGFuY2VvZiBWYXJpYWJsZU5vZGUgPT4gJHRoaXMtPmhhbmRsZVZhcmlhYmxlTm9kZSgkY2hpbGQsICRjbGFzcyksCiAgICAgICAgICAgICAgICAkY2hpbGQgaW5zdGFuY2VvZiBBcnJheU5vZGUgPT4gJHRoaXMtPmhhbmRsZUFycmF5Tm9kZSgkY2hpbGQsICRjbGFzcywgJG5hbWVzcGFjZSksCiAgICAgICAgICAgICAgICBkZWZhdWx0ID0+IHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbihcc3ByaW50ZignVW5rbm93biBub2RlICIlcyIuJywgJGNoaWxkOjpjbGFzcykpLAogICAgICAgICAgICB9OwogICAgICAgIH0KICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIGhhbmRsZUFycmF5Tm9kZShBcnJheU5vZGUgJG5vZGUsIENsYXNzQnVpbGRlciAkY2xhc3MsIHN0cmluZyAkbmFtZXNwYWNlKTogdm9pZAogICAgewogICAgICAgICRjaGlsZENsYXNzID0gbmV3IENsYXNzQnVpbGRlcigkbmFtZXNwYWNlLCAkbm9kZS0+Z2V0TmFtZSgpKTsKICAgICAgICAkY2hpbGRDbGFzcy0+c2V0QWxsb3dFeHRyYUtleXMoJG5vZGUtPnNob3VsZElnbm9yZUV4dHJhS2V5cygpKTsKICAgICAgICAkY2xhc3MtPmFkZFJlcXVpcmUoJGNoaWxkQ2xhc3MpOwogICAgICAgICR0aGlzLT5jbGFzc2VzW10gPSAkY2hpbGRDbGFzczsKCiAgICAgICAgJG5vZGVUeXBlcyA9ICR0aGlzLT5nZXRQYXJhbWV0ZXJUeXBlcygkbm9kZSk7CiAgICAgICAgJHBhcmFtVHlwZSA9ICR0aGlzLT5nZXRQYXJhbVR5cGUoJG5vZGVUeXBlcyk7CgogICAgICAgICRoYXNOb3JtYWxpemF0aW9uQ2xvc3VyZXMgPSAkdGhpcy0+aGFzTm9ybWFsaXphdGlvbkNsb3N1cmVzKCRub2RlKTsKICAgICAgICAkY29tbWVudCA9ICR0aGlzLT5nZXRDb21tZW50KCRub2RlKTsKICAgICAgICBpZiAoJGhhc05vcm1hbGl6YXRpb25DbG9zdXJlcyAmJiAnYXJyYXknICE9PSAkcGFyYW1UeXBlKSB7CiAgICAgICAgICAgICRjb21tZW50ID0gXHNwcmludGYoIiAqIEB0ZW1wbGF0ZSBUVmFsdWUgb2YgJXNcbiAqIEBwYXJhbSBUVmFsdWUgXCR2YWx1ZVxuJXMiLCAkcGFyYW1UeXBlLCAkY29tbWVudCk7CiAgICAgICAgICAgICRjb21tZW50IC49IFxzcHJpbnRmKCcgKiBAcmV0dXJuICVzfCR0aGlzJy4iXG4iLCAkY2hpbGRDbGFzcy0+Z2V0RnFjbigpKTsKICAgICAgICAgICAgJGNvbW1lbnQgLj0gXHNwcmludGYoJyAqIEBwc2FsbS1yZXR1cm4gKFRWYWx1ZSBpcyBhcnJheSA/ICVzIDogc3RhdGljKScuIlxuICIsICRjaGlsZENsYXNzLT5nZXRGcWNuKCkpOwogICAgICAgIH0KICAgICAgICBpZiAoJycgIT09ICRjb21tZW50KSB7CiAgICAgICAgICAgICRjb21tZW50ID0gIi8qKlxuJGNvbW1lbnQqL1xuIjsKICAgICAgICB9CgogICAgICAgICRwcm9wZXJ0eSA9ICRjbGFzcy0+YWRkUHJvcGVydHkoCiAgICAgICAgICAgICRub2RlLT5nZXROYW1lKCksCiAgICAgICAgICAgICR0aGlzLT5nZXRUeXBlKCRjaGlsZENsYXNzLT5nZXRGcWNuKCksICRoYXNOb3JtYWxpemF0aW9uQ2xvc3VyZXMpCiAgICAgICAgKTsKICAgICAgICAkYm9keSA9ICRoYXNOb3JtYWxpemF0aW9uQ2xvc3VyZXMgJiYgJ2FycmF5JyAhPT0gJHBhcmFtVHlwZSA/ICcKQ09NTUVOVHB1YmxpYyBmdW5jdGlvbiBOQU1FKFBBUkFNX1RZUEUgJHZhbHVlID0gW10pOiBDTEFTU3xzdGF0aWMKewogICAgaWYgKCFcaXNfYXJyYXkoJHZhbHVlKSkgewogICAgICAgICR0aGlzLT5fdXNlZFByb3BlcnRpZXNbXCdQUk9QRVJUWVwnXSA9IHRydWU7CiAgICAgICAgJHRoaXMtPlBST1BFUlRZID0gJHZhbHVlOwoKICAgICAgICByZXR1cm4gJHRoaXM7CiAgICB9CgogICAgaWYgKCEkdGhpcy0+UFJPUEVSVFkgaW5zdGFuY2VvZiBDTEFTUykgewogICAgICAgICR0aGlzLT5fdXNlZFByb3BlcnRpZXNbXCdQUk9QRVJUWVwnXSA9IHRydWU7CiAgICAgICAgJHRoaXMtPlBST1BFUlRZID0gbmV3IENMQVNTKCR2YWx1ZSk7CiAgICB9IGVsc2VpZiAoMCA8IFxmdW5jX251bV9hcmdzKCkpIHsKICAgICAgICB0aHJvdyBuZXcgSW52YWxpZENvbmZpZ3VyYXRpb25FeGNlcHRpb24oXCdUaGUgbm9kZSBjcmVhdGVkIGJ5ICJOQU1FKCkiIGhhcyBhbHJlYWR5IGJlZW4gaW5pdGlhbGl6ZWQuIFlvdSBjYW5ub3QgcGFzcyB2YWx1ZXMgdGhlIHNlY29uZCB0aW1lIHlvdSBjYWxsIE5BTUUoKS5cJyk7CiAgICB9CgogICAgcmV0dXJuICR0aGlzLT5QUk9QRVJUWTsKfScgOiAnCkNPTU1FTlRwdWJsaWMgZnVuY3Rpb24gTkFNRShhcnJheSAkdmFsdWUgPSBbXSk6IENMQVNTCnsKICAgIGlmIChudWxsID09PSAkdGhpcy0+UFJPUEVSVFkpIHsKICAgICAgICAkdGhpcy0+X3VzZWRQcm9wZXJ0aWVzW1wnUFJPUEVSVFlcJ10gPSB0cnVlOwogICAgICAgICR0aGlzLT5QUk9QRVJUWSA9IG5ldyBDTEFTUygkdmFsdWUpOwogICAgfSBlbHNlaWYgKDAgPCBcZnVuY19udW1fYXJncygpKSB7CiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRDb25maWd1cmF0aW9uRXhjZXB0aW9uKFwnVGhlIG5vZGUgY3JlYXRlZCBieSAiTkFNRSgpIiBoYXMgYWxyZWFkeSBiZWVuIGluaXRpYWxpemVkLiBZb3UgY2Fubm90IHBhc3MgdmFsdWVzIHRoZSBzZWNvbmQgdGltZSB5b3UgY2FsbCBOQU1FKCkuXCcpOwogICAgfQoKICAgIHJldHVybiAkdGhpcy0+UFJPUEVSVFk7Cn0nOwogICAgICAgICRjbGFzcy0+YWRkVXNlKEludmFsaWRDb25maWd1cmF0aW9uRXhjZXB0aW9uOjpjbGFzcyk7CiAgICAgICAgJGNsYXNzLT5hZGRNZXRob2QoJG5vZGUtPmdldE5hbWUoKSwgJGJvZHksIFsKICAgICAgICAgICAgJ0NPTU1FTlQnID0+ICRjb21tZW50LAogICAgICAgICAgICAnUFJPUEVSVFknID0+ICRwcm9wZXJ0eS0+Z2V0TmFtZSgpLAogICAgICAgICAgICAnQ0xBU1MnID0+ICRjaGlsZENsYXNzLT5nZXRGcWNuKCksCiAgICAgICAgICAgICdQQVJBTV9UWVBFJyA9PiAkcGFyYW1UeXBlLAogICAgICAgIF0pOwoKICAgICAgICAkdGhpcy0+YnVpbGROb2RlKCRub2RlLCAkY2hpbGRDbGFzcywgJHRoaXMtPmdldFN1Yk5hbWVzcGFjZSgkY2hpbGRDbGFzcykpOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gaGFuZGxlVmFyaWFibGVOb2RlKFZhcmlhYmxlTm9kZSAkbm9kZSwgQ2xhc3NCdWlsZGVyICRjbGFzcyk6IHZvaWQKICAgIHsKICAgICAgICAkY29tbWVudCA9ICR0aGlzLT5nZXRDb21tZW50KCRub2RlKTsKICAgICAgICAkcHJvcGVydHkgPSAkY2xhc3MtPmFkZFByb3BlcnR5KCRub2RlLT5nZXROYW1lKCkpOwogICAgICAgICRjbGFzcy0+YWRkVXNlKFBhcmFtQ29uZmlndXJhdG9yOjpjbGFzcyk7CgogICAgICAgICRib2R5ID0gJwovKioKQ09NTUVOVCAqCiAqIEByZXR1cm4gJHRoaXMKICovCnB1YmxpYyBmdW5jdGlvbiBOQU1FKG1peGVkICR2YWx1ZURFRkFVTFQpOiBzdGF0aWMKewogICAgJHRoaXMtPl91c2VkUHJvcGVydGllc1tcJ1BST1BFUlRZXCddID0gdHJ1ZTsKICAgICR0aGlzLT5QUk9QRVJUWSA9ICR2YWx1ZTsKCiAgICByZXR1cm4gJHRoaXM7Cn0nOwogICAgICAgICRjbGFzcy0+YWRkTWV0aG9kKCRub2RlLT5nZXROYW1lKCksICRib2R5LCBbCiAgICAgICAgICAgICdQUk9QRVJUWScgPT4gJHByb3BlcnR5LT5nZXROYW1lKCksCiAgICAgICAgICAgICdDT01NRU5UJyA9PiAkY29tbWVudCwKICAgICAgICAgICAgJ0RFRkFVTFQnID0+ICRub2RlLT5oYXNEZWZhdWx0VmFsdWUoKSA/ICcgPSAnLnZhcl9leHBvcnQoJG5vZGUtPmdldERlZmF1bHRWYWx1ZSgpLCB0cnVlKSA6ICcnLAogICAgICAgIF0pOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gaGFuZGxlUHJvdG90eXBlZEFycmF5Tm9kZShQcm90b3R5cGVkQXJyYXlOb2RlICRub2RlLCBDbGFzc0J1aWxkZXIgJGNsYXNzLCBzdHJpbmcgJG5hbWVzcGFjZSk6IHZvaWQKICAgIHsKICAgICAgICAkbmFtZSA9ICR0aGlzLT5nZXRTaW5ndWxhck5hbWUoJG5vZGUpOwogICAgICAgICRwcm90b3R5cGUgPSAkbm9kZS0+Z2V0UHJvdG90eXBlKCk7CiAgICAgICAgJG1ldGhvZE5hbWUgPSAkbmFtZTsKICAgICAgICAkaGFzTm9ybWFsaXphdGlvbkNsb3N1cmVzID0gJHRoaXMtPmhhc05vcm1hbGl6YXRpb25DbG9zdXJlcygkbm9kZSkgfHwgJHRoaXMtPmhhc05vcm1hbGl6YXRpb25DbG9zdXJlcygkcHJvdG90eXBlKTsKCiAgICAgICAgJG5vZGVQYXJhbWV0ZXJUeXBlcyA9ICR0aGlzLT5nZXRQYXJhbWV0ZXJUeXBlcygkbm9kZSk7CiAgICAgICAgJHByb3RvdHlwZVBhcmFtZXRlclR5cGVzID0gJHRoaXMtPmdldFBhcmFtZXRlclR5cGVzKCRwcm90b3R5cGUpOwogICAgICAgICRub0tleSA9IG51bGwgPT09ICRrZXkgPSAkbm9kZS0+Z2V0S2V5QXR0cmlidXRlKCk7CiAgICAgICAgaWYgKCEkcHJvdG90eXBlIGluc3RhbmNlb2YgQXJyYXlOb2RlIHx8ICgkcHJvdG90eXBlIGluc3RhbmNlb2YgUHJvdG90eXBlZEFycmF5Tm9kZSAmJiAkcHJvdG90eXBlLT5nZXRQcm90b3R5cGUoKSBpbnN0YW5jZW9mIFNjYWxhck5vZGUpKSB7CiAgICAgICAgICAgICRjbGFzcy0+YWRkVXNlKFBhcmFtQ29uZmlndXJhdG9yOjpjbGFzcyk7CiAgICAgICAgICAgICRwcm9wZXJ0eSA9ICRjbGFzcy0+YWRkUHJvcGVydHkoJG5vZGUtPmdldE5hbWUoKSk7CiAgICAgICAgICAgIGlmICgkbm9LZXkpIHsKICAgICAgICAgICAgICAgIC8vIFRoaXMgaXMgYW4gYXJyYXkgb2YgdmFsdWVzOyBkb24ndCB1c2Ugc2luZ3VsYXIgbmFtZQogICAgICAgICAgICAgICAgJG5vZGVUeXBlc1dpdGhvdXRBcnJheSA9IGFycmF5X2ZpbHRlcigkbm9kZVBhcmFtZXRlclR5cGVzLCBzdGF0aWMgZm4gKCR0eXBlKSA9PiAnYXJyYXknICE9PSAkdHlwZSk7CiAgICAgICAgICAgICAgICAkYm9keSA9ICcKLyoqCiAqIEBwYXJhbSBQYXJhbUNvbmZpZ3VyYXRvcnxsaXN0PFBhcmFtQ29uZmlndXJhdG9yfFBST1RPVFlQRV9UWVBFPkVYVFJBX1RZUEUgJHZhbHVlCiAqCiAqIEByZXR1cm4gJHRoaXMKICovCnB1YmxpYyBmdW5jdGlvbiBOQU1FKFBBUkFNX1RZUEUgJHZhbHVlKTogc3RhdGljCnsKICAgICR0aGlzLT5fdXNlZFByb3BlcnRpZXNbXCdQUk9QRVJUWVwnXSA9IHRydWU7CiAgICAkdGhpcy0+UFJPUEVSVFkgPSAkdmFsdWU7CgogICAgcmV0dXJuICR0aGlzOwp9JzsKCiAgICAgICAgICAgICAgICAkY2xhc3MtPmFkZE1ldGhvZCgkbm9kZS0+Z2V0TmFtZSgpLCAkYm9keSwgWwogICAgICAgICAgICAgICAgICAgICdQUk9QRVJUWScgPT4gJHByb3BlcnR5LT5nZXROYW1lKCksCiAgICAgICAgICAgICAgICAgICAgJ1BST1RPVFlQRV9UWVBFJyA9PiBpbXBsb2RlKCd8JywgJHByb3RvdHlwZVBhcmFtZXRlclR5cGVzKSwKICAgICAgICAgICAgICAgICAgICAnRVhUUkFfVFlQRScgPT4gJG5vZGVUeXBlc1dpdGhvdXRBcnJheSA/ICd8Jy5pbXBsb2RlKCd8JywgJG5vZGVUeXBlc1dpdGhvdXRBcnJheSkgOiAnJywKICAgICAgICAgICAgICAgICAgICAnUEFSQU1fVFlQRScgPT4gJHRoaXMtPmdldFBhcmFtVHlwZSgkbm9kZVBhcmFtZXRlclR5cGVzLCB0cnVlKSwKICAgICAgICAgICAgICAgIF0pOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgJGJvZHkgPSAnCi8qKgogKiBAcmV0dXJuICR0aGlzCiAqLwpwdWJsaWMgZnVuY3Rpb24gTkFNRShzdHJpbmcgJFZBUiwgVFlQRSAkVkFMVUUpOiBzdGF0aWMKewogICAgJHRoaXMtPl91c2VkUHJvcGVydGllc1tcJ1BST1BFUlRZXCddID0gdHJ1ZTsKICAgICR0aGlzLT5QUk9QRVJUWVskVkFSXSA9ICRWQUxVRTsKCiAgICByZXR1cm4gJHRoaXM7Cn0nOwoKICAgICAgICAgICAgICAgICRjbGFzcy0+YWRkTWV0aG9kKCRtZXRob2ROYW1lLCAkYm9keSwgWwogICAgICAgICAgICAgICAgICAgICdQUk9QRVJUWScgPT4gJHByb3BlcnR5LT5nZXROYW1lKCksCiAgICAgICAgICAgICAgICAgICAgJ1RZUEUnID0+ICR0aGlzLT5nZXRQYXJhbVR5cGUoJHByb3RvdHlwZVBhcmFtZXRlclR5cGVzLCB0cnVlKSwKICAgICAgICAgICAgICAgICAgICAnVkFSJyA9PiAnJyA9PT0gJGtleSA/ICdrZXknIDogJGtleSwKICAgICAgICAgICAgICAgICAgICAnVkFMVUUnID0+ICd2YWx1ZScgPT09ICRrZXkgPyAnZGF0YScgOiAndmFsdWUnLAogICAgICAgICAgICAgICAgXSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CgogICAgICAgICRjaGlsZENsYXNzID0gbmV3IENsYXNzQnVpbGRlcigkbmFtZXNwYWNlLCAkbmFtZSk7CiAgICAgICAgaWYgKCRwcm90b3R5cGUgaW5zdGFuY2VvZiBBcnJheU5vZGUpIHsKICAgICAgICAgICAgJGNoaWxkQ2xhc3MtPnNldEFsbG93RXh0cmFLZXlzKCRwcm90b3R5cGUtPnNob3VsZElnbm9yZUV4dHJhS2V5cygpKTsKICAgICAgICB9CiAgICAgICAgJGNsYXNzLT5hZGRSZXF1aXJlKCRjaGlsZENsYXNzKTsKICAgICAgICAkdGhpcy0+Y2xhc3Nlc1tdID0gJGNoaWxkQ2xhc3M7CgogICAgICAgICRwcm9wZXJ0eSA9ICRjbGFzcy0+YWRkUHJvcGVydHkoCiAgICAgICAgICAgICRub2RlLT5nZXROYW1lKCksCiAgICAgICAgICAgICR0aGlzLT5nZXRUeXBlKCRjaGlsZENsYXNzLT5nZXRGcWNuKCkuJ1tdJywgJGhhc05vcm1hbGl6YXRpb25DbG9zdXJlcykKICAgICAgICApOwoKICAgICAgICAkcGFyYW1UeXBlID0gJHRoaXMtPmdldFBhcmFtVHlwZSgkbm9LZXkgPyAkbm9kZVBhcmFtZXRlclR5cGVzIDogJHByb3RvdHlwZVBhcmFtZXRlclR5cGVzKTsKCiAgICAgICAgJGNvbW1lbnQgPSAkdGhpcy0+Z2V0Q29tbWVudCgkbm9kZSk7CiAgICAgICAgaWYgKCRoYXNOb3JtYWxpemF0aW9uQ2xvc3VyZXMgJiYgJ2FycmF5JyAhPT0gJHBhcmFtVHlwZSkgewogICAgICAgICAgICAkY29tbWVudCA9IFxzcHJpbnRmKCIgKiBAdGVtcGxhdGUgVFZhbHVlIG9mICVzXG4gKiBAcGFyYW0gVFZhbHVlIFwkdmFsdWVcbiVzIiwgJHBhcmFtVHlwZSwgJGNvbW1lbnQpOwogICAgICAgICAgICAkY29tbWVudCAuPSBcc3ByaW50ZignICogQHJldHVybiAlc3wkdGhpcycuIlxuIiwgJGNoaWxkQ2xhc3MtPmdldEZxY24oKSk7CiAgICAgICAgICAgICRjb21tZW50IC49IFxzcHJpbnRmKCcgKiBAcHNhbG0tcmV0dXJuIChUVmFsdWUgaXMgYXJyYXkgPyAlcyA6IHN0YXRpYyknLiJcbiAiLCAkY2hpbGRDbGFzcy0+Z2V0RnFjbigpKTsKICAgICAgICB9CiAgICAgICAgaWYgKCcnICE9PSAkY29tbWVudCkgewogICAgICAgICAgICAkY29tbWVudCA9ICIvKipcbiRjb21tZW50Ki9cbiI7CiAgICAgICAgfQoKICAgICAgICBpZiAoJG5vS2V5KSB7CiAgICAgICAgICAgICRib2R5ID0gJGhhc05vcm1hbGl6YXRpb25DbG9zdXJlcyAmJiAnYXJyYXknICE9PSAkcGFyYW1UeXBlID8gJwpDT01NRU5UcHVibGljIGZ1bmN0aW9uIE5BTUUoUEFSQU1fVFlQRSAkdmFsdWUgPSBbXSk6IENMQVNTfHN0YXRpYwp7CiAgICAkdGhpcy0+X3VzZWRQcm9wZXJ0aWVzW1wnUFJPUEVSVFlcJ10gPSB0cnVlOwogICAgaWYgKCFcaXNfYXJyYXkoJHZhbHVlKSkgewogICAgICAgICR0aGlzLT5QUk9QRVJUWVtdID0gJHZhbHVlOwoKICAgICAgICByZXR1cm4gJHRoaXM7CiAgICB9CgogICAgcmV0dXJuICR0aGlzLT5QUk9QRVJUWVtdID0gbmV3IENMQVNTKCR2YWx1ZSk7Cn0nIDogJwpDT01NRU5UcHVibGljIGZ1bmN0aW9uIE5BTUUoYXJyYXkgJHZhbHVlID0gW10pOiBDTEFTUwp7CiAgICAkdGhpcy0+X3VzZWRQcm9wZXJ0aWVzW1wnUFJPUEVSVFlcJ10gPSB0cnVlOwoKICAgIHJldHVybiAkdGhpcy0+UFJPUEVSVFlbXSA9IG5ldyBDTEFTUygkdmFsdWUpOwp9JzsKICAgICAgICAgICAgJGNsYXNzLT5hZGRNZXRob2QoJG1ldGhvZE5hbWUsICRib2R5LCBbCiAgICAgICAgICAgICAgICAnQ09NTUVOVCcgPT4gJGNvbW1lbnQsCiAgICAgICAgICAgICAgICAnUFJPUEVSVFknID0+ICRwcm9wZXJ0eS0+Z2V0TmFtZSgpLAogICAgICAgICAgICAgICAgJ0NMQVNTJyA9PiAkY2hpbGRDbGFzcy0+Z2V0RnFjbigpLAogICAgICAgICAgICAgICAgJ1BBUkFNX1RZUEUnID0+ICRwYXJhbVR5cGUsCiAgICAgICAgICAgIF0pOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICRib2R5ID0gJGhhc05vcm1hbGl6YXRpb25DbG9zdXJlcyAmJiAnYXJyYXknICE9PSAkcGFyYW1UeXBlID8gJwpDT01NRU5UcHVibGljIGZ1bmN0aW9uIE5BTUUoc3RyaW5nICRWQVIsIFBBUkFNX1RZUEUgJFZBTFVFID0gW10pOiBDTEFTU3xzdGF0aWMKewogICAgaWYgKCFcaXNfYXJyYXkoJFZBTFVFKSkgewogICAgICAgICR0aGlzLT5fdXNlZFByb3BlcnRpZXNbXCdQUk9QRVJUWVwnXSA9IHRydWU7CiAgICAgICAgJHRoaXMtPlBST1BFUlRZWyRWQVJdID0gJFZBTFVFOwoKICAgICAgICByZXR1cm4gJHRoaXM7CiAgICB9CgogICAgaWYgKCFpc3NldCgkdGhpcy0+UFJPUEVSVFlbJFZBUl0pIHx8ICEkdGhpcy0+UFJPUEVSVFlbJFZBUl0gaW5zdGFuY2VvZiBDTEFTUykgewogICAgICAgICR0aGlzLT5fdXNlZFByb3BlcnRpZXNbXCdQUk9QRVJUWVwnXSA9IHRydWU7CiAgICAgICAgJHRoaXMtPlBST1BFUlRZWyRWQVJdID0gbmV3IENMQVNTKCRWQUxVRSk7CiAgICB9IGVsc2VpZiAoMSA8IFxmdW5jX251bV9hcmdzKCkpIHsKICAgICAgICB0aHJvdyBuZXcgSW52YWxpZENvbmZpZ3VyYXRpb25FeGNlcHRpb24oXCdUaGUgbm9kZSBjcmVhdGVkIGJ5ICJOQU1FKCkiIGhhcyBhbHJlYWR5IGJlZW4gaW5pdGlhbGl6ZWQuIFlvdSBjYW5ub3QgcGFzcyB2YWx1ZXMgdGhlIHNlY29uZCB0aW1lIHlvdSBjYWxsIE5BTUUoKS5cJyk7CiAgICB9CgogICAgcmV0dXJuICR0aGlzLT5QUk9QRVJUWVskVkFSXTsKfScgOiAnCkNPTU1FTlRwdWJsaWMgZnVuY3Rpb24gTkFNRShzdHJpbmcgJFZBUiwgYXJyYXkgJFZBTFVFID0gW10pOiBDTEFTUwp7CiAgICBpZiAoIWlzc2V0KCR0aGlzLT5QUk9QRVJUWVskVkFSXSkpIHsKICAgICAgICAkdGhpcy0+X3VzZWRQcm9wZXJ0aWVzW1wnUFJPUEVSVFlcJ10gPSB0cnVlOwogICAgICAgICR0aGlzLT5QUk9QRVJUWVskVkFSXSA9IG5ldyBDTEFTUygkVkFMVUUpOwogICAgfSBlbHNlaWYgKDEgPCBcZnVuY19udW1fYXJncygpKSB7CiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRDb25maWd1cmF0aW9uRXhjZXB0aW9uKFwnVGhlIG5vZGUgY3JlYXRlZCBieSAiTkFNRSgpIiBoYXMgYWxyZWFkeSBiZWVuIGluaXRpYWxpemVkLiBZb3UgY2Fubm90IHBhc3MgdmFsdWVzIHRoZSBzZWNvbmQgdGltZSB5b3UgY2FsbCBOQU1FKCkuXCcpOwogICAgfQoKICAgIHJldHVybiAkdGhpcy0+UFJPUEVSVFlbJFZBUl07Cn0nOwogICAgICAgICAgICAkY2xhc3MtPmFkZFVzZShJbnZhbGlkQ29uZmlndXJhdGlvbkV4Y2VwdGlvbjo6Y2xhc3MpOwogICAgICAgICAgICAkY2xhc3MtPmFkZE1ldGhvZCgkbWV0aG9kTmFtZSwgc3RyX3JlcGxhY2UoJyR2YWx1ZScsICckVkFSJywgJGJvZHkpLCBbCiAgICAgICAgICAgICAgICAnQ09NTUVOVCcgPT4gJGNvbW1lbnQsICdQUk9QRVJUWScgPT4gJHByb3BlcnR5LT5nZXROYW1lKCksCiAgICAgICAgICAgICAgICAnQ0xBU1MnID0+ICRjaGlsZENsYXNzLT5nZXRGcWNuKCksCiAgICAgICAgICAgICAgICAnVkFSJyA9PiAnJyA9PT0gJGtleSA/ICdrZXknIDogJGtleSwKICAgICAgICAgICAgICAgICdWQUxVRScgPT4gJ3ZhbHVlJyA9PT0gJGtleSA/ICdkYXRhJyA6ICd2YWx1ZScsCiAgICAgICAgICAgICAgICAnUEFSQU1fVFlQRScgPT4gJHBhcmFtVHlwZSwKICAgICAgICAgICAgXSk7CiAgICAgICAgfQoKICAgICAgICAkdGhpcy0+YnVpbGROb2RlKCRwcm90b3R5cGUsICRjaGlsZENsYXNzLCAkbmFtZXNwYWNlLidcXCcuJGNoaWxkQ2xhc3MtPmdldE5hbWUoKSk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBoYW5kbGVTY2FsYXJOb2RlKFNjYWxhck5vZGUgJG5vZGUsIENsYXNzQnVpbGRlciAkY2xhc3MpOiB2b2lkCiAgICB7CiAgICAgICAgJGNvbW1lbnQgPSAkdGhpcy0+Z2V0Q29tbWVudCgkbm9kZSk7CiAgICAgICAgJHByb3BlcnR5ID0gJGNsYXNzLT5hZGRQcm9wZXJ0eSgkbm9kZS0+Z2V0TmFtZSgpKTsKICAgICAgICAkY2xhc3MtPmFkZFVzZShQYXJhbUNvbmZpZ3VyYXRvcjo6Y2xhc3MpOwoKICAgICAgICAkYm9keSA9ICcKLyoqCkNPTU1FTlQgKiBAcmV0dXJuICR0aGlzCiAqLwpwdWJsaWMgZnVuY3Rpb24gTkFNRSgkdmFsdWUpOiBzdGF0aWMKewogICAgJHRoaXMtPl91c2VkUHJvcGVydGllc1tcJ1BST1BFUlRZXCddID0gdHJ1ZTsKICAgICR0aGlzLT5QUk9QRVJUWSA9ICR2YWx1ZTsKCiAgICByZXR1cm4gJHRoaXM7Cn0nOwoKICAgICAgICAkY2xhc3MtPmFkZE1ldGhvZCgkbm9kZS0+Z2V0TmFtZSgpLCAkYm9keSwgWydQUk9QRVJUWScgPT4gJHByb3BlcnR5LT5nZXROYW1lKCksICdDT01NRU5UJyA9PiAkY29tbWVudF0pOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0UGFyYW1ldGVyVHlwZXMoTm9kZUludGVyZmFjZSAkbm9kZSk6IGFycmF5CiAgICB7CiAgICAgICAgJHBhcmFtVHlwZXMgPSBbXTsKICAgICAgICBpZiAoJG5vZGUgaW5zdGFuY2VvZiBCYXNlTm9kZSkgewogICAgICAgICAgICAkdHlwZXMgPSAkbm9kZS0+Z2V0Tm9ybWFsaXplZFR5cGVzKCk7CiAgICAgICAgICAgIGlmIChcaW5fYXJyYXkoRXhwckJ1aWxkZXI6OlRZUEVfQU5ZLCAkdHlwZXMsIHRydWUpKSB7CiAgICAgICAgICAgICAgICAkcGFyYW1UeXBlc1tdID0gJ21peGVkJzsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoXGluX2FycmF5KEV4cHJCdWlsZGVyOjpUWVBFX1NUUklORywgJHR5cGVzLCB0cnVlKSkgewogICAgICAgICAgICAgICAgJHBhcmFtVHlwZXNbXSA9ICdzdHJpbmcnOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICgkbm9kZSBpbnN0YW5jZW9mIEJvb2xlYW5Ob2RlKSB7CiAgICAgICAgICAgICRwYXJhbVR5cGVzW10gPSAnYm9vbCc7CiAgICAgICAgfSBlbHNlaWYgKCRub2RlIGluc3RhbmNlb2YgSW50ZWdlck5vZGUpIHsKICAgICAgICAgICAgJHBhcmFtVHlwZXNbXSA9ICdpbnQnOwogICAgICAgIH0gZWxzZWlmICgkbm9kZSBpbnN0YW5jZW9mIEZsb2F0Tm9kZSkgewogICAgICAgICAgICAkcGFyYW1UeXBlc1tdID0gJ2Zsb2F0JzsKICAgICAgICB9IGVsc2VpZiAoJG5vZGUgaW5zdGFuY2VvZiBFbnVtTm9kZSkgewogICAgICAgICAgICAkcGFyYW1UeXBlc1tdID0gJ21peGVkJzsKICAgICAgICB9IGVsc2VpZiAoJG5vZGUgaW5zdGFuY2VvZiBBcnJheU5vZGUpIHsKICAgICAgICAgICAgJHBhcmFtVHlwZXNbXSA9ICdhcnJheSc7CiAgICAgICAgfSBlbHNlaWYgKCRub2RlIGluc3RhbmNlb2YgVmFyaWFibGVOb2RlKSB7CiAgICAgICAgICAgICRwYXJhbVR5cGVzW10gPSAnbWl4ZWQnOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIGFycmF5X3VuaXF1ZSgkcGFyYW1UeXBlcyk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBnZXRDb21tZW50KEJhc2VOb2RlICRub2RlKTogc3RyaW5nCiAgICB7CiAgICAgICAgJGNvbW1lbnQgPSAnJzsKICAgICAgICBpZiAoJycgIT09ICRpbmZvID0gKHN0cmluZykgJG5vZGUtPmdldEluZm8oKSkgewogICAgICAgICAgICAkY29tbWVudCAuPSAkaW5mby4iXG4iOwogICAgICAgIH0KCiAgICAgICAgaWYgKCEkbm9kZSBpbnN0YW5jZW9mIEFycmF5Tm9kZSkgewogICAgICAgICAgICBmb3JlYWNoICgoYXJyYXkpICgkbm9kZS0+Z2V0RXhhbXBsZSgpID8/IFtdKSBhcyAkZXhhbXBsZSkgewogICAgICAgICAgICAgICAgJGNvbW1lbnQgLj0gJ0BleGFtcGxlICcuJGV4YW1wbGUuIlxuIjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKCcnICE9PSAkZGVmYXVsdCA9ICRub2RlLT5nZXREZWZhdWx0VmFsdWUoKSkgewogICAgICAgICAgICAgICAgJGNvbW1lbnQgLj0gJ0BkZWZhdWx0ICcuKG51bGwgPT09ICRkZWZhdWx0ID8gJ251bGwnIDogdmFyX2V4cG9ydCgkZGVmYXVsdCwgdHJ1ZSkpLiJcbiI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICgkbm9kZSBpbnN0YW5jZW9mIEVudW1Ob2RlKSB7CiAgICAgICAgICAgICAgICAkY29tbWVudCAuPSBcc3ByaW50ZignQHBhcmFtIFBhcmFtQ29uZmlndXJhdG9yfCVzICR2YWx1ZScsIGltcGxvZGUoJ3wnLCBhcnJheV91bmlxdWUoYXJyYXlfbWFwKGZuICgkYSkgPT4gISRhIGluc3RhbmNlb2YgXFVuaXRFbnVtID8gdmFyX2V4cG9ydCgkYSwgdHJ1ZSkgOiAnXFwnLmx0cmltKHZhcl9leHBvcnQoJGEsIHRydWUpLCAnXFwnKSwgJG5vZGUtPmdldFZhbHVlcygpKSkpKS4iXG4iOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgJHBhcmFtZXRlclR5cGVzID0gJHRoaXMtPmdldFBhcmFtZXRlclR5cGVzKCRub2RlKTsKICAgICAgICAgICAgICAgICRjb21tZW50IC49ICdAcGFyYW0gUGFyYW1Db25maWd1cmF0b3J8Jy5pbXBsb2RlKCd8JywgJHBhcmFtZXRlclR5cGVzKS4nICR2YWx1ZScuIlxuIjsKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGZvcmVhY2ggKChhcnJheSkgKCRub2RlLT5nZXRFeGFtcGxlKCkgPz8gW10pIGFzICRleGFtcGxlKSB7CiAgICAgICAgICAgICAgICAkY29tbWVudCAuPSAnQGV4YW1wbGUgJy5qc29uX2VuY29kZSgkZXhhbXBsZSkuIlxuIjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKCRub2RlLT5oYXNEZWZhdWx0VmFsdWUoKSAmJiBbXSAhPSAkZGVmYXVsdCA9ICRub2RlLT5nZXREZWZhdWx0VmFsdWUoKSkgewogICAgICAgICAgICAgICAgJGNvbW1lbnQgLj0gJ0BkZWZhdWx0ICcuanNvbl9lbmNvZGUoJGRlZmF1bHQpLiJcbiI7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmICgkbm9kZS0+aXNEZXByZWNhdGVkKCkpIHsKICAgICAgICAgICAgJGNvbW1lbnQgLj0gJ0BkZXByZWNhdGVkICcuJG5vZGUtPmdldERlcHJlY2F0aW9uKCRub2RlLT5nZXROYW1lKCksICRub2RlLT5nZXRQYXJlbnQoKS0+Z2V0TmFtZSgpKVsnbWVzc2FnZSddLiJcbiI7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gJGNvbW1lbnQgPyAnICogJy5zdHJfcmVwbGFjZSgiXG4iLCAiXG4gKiAiLCBydHJpbSgkY29tbWVudCwgIlxuIikpLiJcbiIgOiAnJzsKICAgIH0KCiAgICAvKioKICAgICAqIFBpY2sgYSBnb29kIHNpbmd1bGFyIG5hbWUuCiAgICAgKi8KICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0U2luZ3VsYXJOYW1lKFByb3RvdHlwZWRBcnJheU5vZGUgJG5vZGUpOiBzdHJpbmcKICAgIHsKICAgICAgICAkbmFtZSA9ICRub2RlLT5nZXROYW1lKCk7CiAgICAgICAgaWYgKCFzdHJfZW5kc193aXRoKCRuYW1lLCAncycpKSB7CiAgICAgICAgICAgIHJldHVybiAkbmFtZTsKICAgICAgICB9CgogICAgICAgICRwYXJlbnQgPSAkbm9kZS0+Z2V0UGFyZW50KCk7CiAgICAgICAgJG1hcHBpbmdzID0gJHBhcmVudCBpbnN0YW5jZW9mIEFycmF5Tm9kZSA/ICRwYXJlbnQtPmdldFhtbFJlbWFwcGluZ3MoKSA6IFtdOwogICAgICAgIGZvcmVhY2ggKCRtYXBwaW5ncyBhcyAkbWFwKSB7CiAgICAgICAgICAgIGlmICgkbWFwWzFdID09PSAkbmFtZSkgewogICAgICAgICAgICAgICAgJG5hbWUgPSAkbWFwWzBdOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHJldHVybiAkbmFtZTsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIGJ1aWxkVG9BcnJheShDbGFzc0J1aWxkZXIgJGNsYXNzKTogdm9pZAogICAgewogICAgICAgICRib2R5ID0gJyRvdXRwdXQgPSBbXTsnOwogICAgICAgIGZvcmVhY2ggKCRjbGFzcy0+Z2V0UHJvcGVydGllcygpIGFzICRwKSB7CiAgICAgICAgICAgICRjb2RlID0gJyR0aGlzLT5QUk9QRVJUWSc7CiAgICAgICAgICAgIGlmIChudWxsICE9PSAkcC0+Z2V0VHlwZSgpKSB7CiAgICAgICAgICAgICAgICBpZiAoJHAtPmlzQXJyYXkoKSkgewogICAgICAgICAgICAgICAgICAgICRjb2RlID0gJHAtPmFyZVNjYWxhcnNBbGxvd2VkKCkKICAgICAgICAgICAgICAgICAgICAgICAgPyAnYXJyYXlfbWFwKGZuICgkdikgPT4gJHYgaW5zdGFuY2VvZiBDTEFTUyA/ICR2LT50b0FycmF5KCkgOiAkdiwgJHRoaXMtPlBST1BFUlRZKScKICAgICAgICAgICAgICAgICAgICAgICAgOiAnYXJyYXlfbWFwKGZuICgkdikgPT4gJHYtPnRvQXJyYXkoKSwgJHRoaXMtPlBST1BFUlRZKScKICAgICAgICAgICAgICAgICAgICA7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICRjb2RlID0gJHAtPmFyZVNjYWxhcnNBbGxvd2VkKCkKICAgICAgICAgICAgICAgICAgICAgICAgPyAnJHRoaXMtPlBST1BFUlRZIGluc3RhbmNlb2YgQ0xBU1MgPyAkdGhpcy0+UFJPUEVSVFktPnRvQXJyYXkoKSA6ICR0aGlzLT5QUk9QRVJUWScKICAgICAgICAgICAgICAgICAgICAgICAgOiAnJHRoaXMtPlBST1BFUlRZLT50b0FycmF5KCknCiAgICAgICAgICAgICAgICAgICAgOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICAkYm9keSAuPSBzdHJ0cignCiAgICBpZiAoaXNzZXQoJHRoaXMtPl91c2VkUHJvcGVydGllc1tcJ1BST1BFUlRZXCddKSkgewogICAgICAgICRvdXRwdXRbXCdPUkdfTkFNRVwnXSA9ICcuJGNvZGUuJzsKICAgIH0nLCBbJ1BST1BFUlRZJyA9PiAkcC0+Z2V0TmFtZSgpLCAnT1JHX05BTUUnID0+ICRwLT5nZXRPcmlnaW5hbE5hbWUoKSwgJ0NMQVNTJyA9PiAkcC0+Z2V0VHlwZSgpXSk7CiAgICAgICAgfQoKICAgICAgICAkZXh0cmFLZXlzID0gJGNsYXNzLT5zaG91bGRBbGxvd0V4dHJhS2V5cygpID8gJyArICR0aGlzLT5fZXh0cmFLZXlzJyA6ICcnOwoKICAgICAgICAkY2xhc3MtPmFkZE1ldGhvZCgndG9BcnJheScsICcKcHVibGljIGZ1bmN0aW9uIE5BTUUoKTogYXJyYXkKewogICAgJy4kYm9keS4nCgogICAgcmV0dXJuICRvdXRwdXQnLiRleHRyYUtleXMuJzsKfScpOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gYnVpbGRDb25zdHJ1Y3RvcihDbGFzc0J1aWxkZXIgJGNsYXNzKTogdm9pZAogICAgewogICAgICAgICRib2R5ID0gJyc7CiAgICAgICAgZm9yZWFjaCAoJGNsYXNzLT5nZXRQcm9wZXJ0aWVzKCkgYXMgJHApIHsKICAgICAgICAgICAgJGNvZGUgPSAnJHZhbHVlW1wnT1JHX05BTUVcJ10nOwogICAgICAgICAgICBpZiAobnVsbCAhPT0gJHAtPmdldFR5cGUoKSkgewogICAgICAgICAgICAgICAgaWYgKCRwLT5pc0FycmF5KCkpIHsKICAgICAgICAgICAgICAgICAgICAkY29kZSA9ICRwLT5hcmVTY2FsYXJzQWxsb3dlZCgpCiAgICAgICAgICAgICAgICAgICAgICAgID8gJ2FycmF5X21hcChmbiAoJHYpID0+IFxpc19hcnJheSgkdikgPyBuZXcgJy4kcC0+Z2V0VHlwZSgpLicoJHYpIDogJHYsICR2YWx1ZVtcJ09SR19OQU1FXCddKScKICAgICAgICAgICAgICAgICAgICAgICAgOiAnYXJyYXlfbWFwKGZuICgkdikgPT4gbmV3ICcuJHAtPmdldFR5cGUoKS4nKCR2KSwgJHZhbHVlW1wnT1JHX05BTUVcJ10pJwogICAgICAgICAgICAgICAgICAgIDsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgJGNvZGUgPSAkcC0+YXJlU2NhbGFyc0FsbG93ZWQoKQogICAgICAgICAgICAgICAgICAgICAgICA/ICdcaXNfYXJyYXkoJHZhbHVlW1wnT1JHX05BTUVcJ10pID8gbmV3ICcuJHAtPmdldFR5cGUoKS4nKCR2YWx1ZVtcJ09SR19OQU1FXCddKSA6ICR2YWx1ZVtcJ09SR19OQU1FXCddJwogICAgICAgICAgICAgICAgICAgICAgICA6ICduZXcgJy4kcC0+Z2V0VHlwZSgpLicoJHZhbHVlW1wnT1JHX05BTUVcJ10pJwogICAgICAgICAgICAgICAgICAgIDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgJGJvZHkgLj0gc3RydHIoJwogICAgaWYgKGFycmF5X2tleV9leGlzdHMoXCdPUkdfTkFNRVwnLCAkdmFsdWUpKSB7CiAgICAgICAgJHRoaXMtPl91c2VkUHJvcGVydGllc1tcJ1BST1BFUlRZXCddID0gdHJ1ZTsKICAgICAgICAkdGhpcy0+UFJPUEVSVFkgPSAnLiRjb2RlLic7CiAgICAgICAgdW5zZXQoJHZhbHVlW1wnT1JHX05BTUVcJ10pOwogICAgfQonLCBbJ1BST1BFUlRZJyA9PiAkcC0+Z2V0TmFtZSgpLCAnT1JHX05BTUUnID0+ICRwLT5nZXRPcmlnaW5hbE5hbWUoKV0pOwogICAgICAgIH0KCiAgICAgICAgaWYgKCRjbGFzcy0+c2hvdWxkQWxsb3dFeHRyYUtleXMoKSkgewogICAgICAgICAgICAkYm9keSAuPSAnCiAgICAkdGhpcy0+X2V4dHJhS2V5cyA9ICR2YWx1ZTsKJzsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAkYm9keSAuPSAnCiAgICBpZiAoW10gIT09ICR2YWx1ZSkgewogICAgICAgIHRocm93IG5ldyBJbnZhbGlkQ29uZmlndXJhdGlvbkV4Y2VwdGlvbihzcHJpbnRmKFwnVGhlIGZvbGxvd2luZyBrZXlzIGFyZSBub3Qgc3VwcG9ydGVkIGJ5ICIlcyI6IFwnLCBfX0NMQVNTX18pLmltcGxvZGUoXCcsIFwnLCBhcnJheV9rZXlzKCR2YWx1ZSkpKTsKICAgIH0nOwoKICAgICAgICAgICAgJGNsYXNzLT5hZGRVc2UoSW52YWxpZENvbmZpZ3VyYXRpb25FeGNlcHRpb246OmNsYXNzKTsKICAgICAgICB9CgogICAgICAgICRjbGFzcy0+YWRkTWV0aG9kKCdfX2NvbnN0cnVjdCcsICcKcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KGFycmF5ICR2YWx1ZSA9IFtdKQp7Jy4kYm9keS4nCn0nKTsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIGJ1aWxkU2V0RXh0cmFLZXkoQ2xhc3NCdWlsZGVyICRjbGFzcyk6IHZvaWQKICAgIHsKICAgICAgICBpZiAoISRjbGFzcy0+c2hvdWxkQWxsb3dFeHRyYUtleXMoKSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQoKICAgICAgICAkY2xhc3MtPmFkZFVzZShQYXJhbUNvbmZpZ3VyYXRvcjo6Y2xhc3MpOwoKICAgICAgICAkY2xhc3MtPmFkZFByb3BlcnR5KCdfZXh0cmFLZXlzJyk7CgogICAgICAgICRjbGFzcy0+YWRkTWV0aG9kKCdzZXQnLCAnCi8qKgogKiBAcGFyYW0gUGFyYW1Db25maWd1cmF0b3J8bWl4ZWQgJHZhbHVlCiAqCiAqIEByZXR1cm4gJHRoaXMKICovCnB1YmxpYyBmdW5jdGlvbiBOQU1FKHN0cmluZyAka2V5LCBtaXhlZCAkdmFsdWUpOiBzdGF0aWMKewogICAgJHRoaXMtPl9leHRyYUtleXNbJGtleV0gPSAkdmFsdWU7CgogICAgcmV0dXJuICR0aGlzOwp9Jyk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBnZXRTdWJOYW1lc3BhY2UoQ2xhc3NCdWlsZGVyICRyb290Q2xhc3MpOiBzdHJpbmcKICAgIHsKICAgICAgICByZXR1cm4gXHNwcmludGYoJyVzXFwlcycsICRyb290Q2xhc3MtPmdldE5hbWVzcGFjZSgpLCBzdWJzdHIoJHJvb3RDbGFzcy0+Z2V0TmFtZSgpLCAwLCAtNikpOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gaGFzTm9ybWFsaXphdGlvbkNsb3N1cmVzKE5vZGVJbnRlcmZhY2UgJG5vZGUpOiBib29sCiAgICB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgJHIgPSBuZXcgXFJlZmxlY3Rpb25Qcm9wZXJ0eSgkbm9kZSwgJ25vcm1hbGl6YXRpb25DbG9zdXJlcycpOwogICAgICAgIH0gY2F0Y2ggKFxSZWZsZWN0aW9uRXhjZXB0aW9uKSB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CgogICAgICAgIHJldHVybiBbXSAhPT0gJHItPmdldFZhbHVlKCRub2RlKTsKICAgIH0KCiAgICBwcml2YXRlIGZ1bmN0aW9uIGdldFR5cGUoc3RyaW5nICRjbGFzc1R5cGUsIGJvb2wgJGhhc05vcm1hbGl6YXRpb25DbG9zdXJlcyk6IHN0cmluZwogICAgewogICAgICAgIHJldHVybiAkY2xhc3NUeXBlLigkaGFzTm9ybWFsaXphdGlvbkNsb3N1cmVzID8gJ3xzY2FsYXInIDogJycpOwogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gZ2V0UGFyYW1UeXBlKGFycmF5ICR0eXBlcywgYm9vbCAkd2l0aFBhcmFtQ29uZmlndXJhdG9yID0gZmFsc2UpOiBzdHJpbmcKICAgIHsKICAgICAgICByZXR1cm4gXGluX2FycmF5KCdtaXhlZCcsICR0eXBlcywgdHJ1ZSkgPyAnbWl4ZWQnIDogKCR3aXRoUGFyYW1Db25maWd1cmF0b3IgPyAnUGFyYW1Db25maWd1cmF0b3J8JyA6ICcnKS5pbXBsb2RlKCd8JywgJHR5cGVzKTsKICAgIH0KfQoiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZG9jQmxvY2siO047czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBtZXRhZGF0YSI7YTowOnt9fQ==";