1778692655
441d63ebbc39eba359c9061ece8482bd-phpdoc%3A99bb61276eb08d531dcefa73e4f74356-d3edd382f0f018dc32adb190600a4acd
s:98980:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjIwOiJOYXRpdmVIdHRwQ2xpZW50LnBocCI7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lc3BhY2VzIjthOjE6e3M6Mjk6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50IjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mjk6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTA6Ikh0dHBDbGllbnQiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbmNsdWRlcyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBmdW5jdGlvbnMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY29uc3RhbnRzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNsYXNzZXMiO2E6MTp7czo0NjoiXFN5bWZvbnlcQ29tcG9uZW50XEh0dHBDbGllbnRcTmF0aXZlSHR0cENsaWVudCI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18iOjE1OntzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AaW1wbGVtZW50cyI7YTozOntzOjQ5OiJcU3ltZm9ueVxDb250cmFjdHNcSHR0cENsaWVudFxIdHRwQ2xpZW50SW50ZXJmYWNlIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDk6IlxTeW1mb255XENvbnRyYWN0c1xIdHRwQ2xpZW50XEh0dHBDbGllbnRJbnRlcmZhY2UiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiSHR0cENsaWVudEludGVyZmFjZSI7fXM6Mjk6IlxQc3JcTG9nXExvZ2dlckF3YXJlSW50ZXJmYWNlIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mjk6IlxQc3JcTG9nXExvZ2dlckF3YXJlSW50ZXJmYWNlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjA6IkxvZ2dlckF3YXJlSW50ZXJmYWNlIjt9czo0MToiXFN5bWZvbnlcQ29udHJhY3RzXFNlcnZpY2VcUmVzZXRJbnRlcmZhY2UiO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MToiXFN5bWZvbnlcQ29udHJhY3RzXFNlcnZpY2VcUmVzZXRJbnRlcmZhY2UiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNDoiUmVzZXRJbnRlcmZhY2UiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGNvbnN0YW50cyI7YToxOntzOjY0OiJcU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxOYXRpdmVIdHRwQ2xpZW50OjpPUFRJT05TX0RFRkFVTFRTIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50Ijo5OntzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mzk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjQ6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQ6Ok9QVElPTlNfREVGQVVMVFMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiT1BUSU9OU19ERUZBVUxUUyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGRvY0Jsb2NrIjtOO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AHZhbHVlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24iOjI6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AZXhwcmVzc2lvbiI7czoxMjc6IlxTeW1mb255XENvbnRyYWN0c1xIdHRwQ2xpZW50XEh0dHBDbGllbnRJbnRlcmZhY2U6Ok9QVElPTlNfREVGQVVMVFMgKyBbJ2NyeXB0b19tZXRob2QnID0+IFxTVFJFQU1fQ1JZUFRPX01FVEhPRF9UTFN2MV8yX0NMSUVOVF0iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmaW5hbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AG1ldGFkYXRhIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABhdHRyaWJ1dGVzIjthOjA6e319fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBwcm9wZXJ0aWVzIjthOjM6e3M6NjM6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQ6OiRkZWZhdWx0T3B0aW9ucyI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTQ6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0MztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjYzOiJcU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxOYXRpdmVIdHRwQ2xpZW50OjokZGVmYXVsdE9wdGlvbnMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNDoiZGVmYXVsdE9wdGlvbnMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24iOjI6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AZXhwcmVzc2lvbiI7czoyMjoic2VsZjo6T1BUSU9OU19ERUZBVUxUUyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBwYXJ0cyI7YTowOnt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAaG9va3MiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpcnR1YWwiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAYXR0cmlidXRlcyI7YTowOnt9fXM6NjI6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQ6OiRlbXB0eURlZmF1bHRzIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxNDp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjI6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQ6OiRlbXB0eURlZmF1bHRzIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6ImVtcHR5RGVmYXVsdHMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24iOjI6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AZXhwcmVzc2lvbiI7czoyMjoic2VsZjo6T1BUSU9OU19ERUZBVUxUUyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBwYXJ0cyI7YTowOnt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjoxO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAaG9va3MiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpcnR1YWwiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAYXR0cmlidXRlcyI7YTowOnt9fXM6NTQ6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQ6OiRtdWx0aSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTQ6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU0OiJcU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxOYXRpdmVIdHRwQ2xpZW50OjokbXVsdGkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo1OiJtdWx0aSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtOO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU2OiJcU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxJbnRlcm5hbFxOYXRpdmVDbGllbnRTdGF0ZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE3OiJOYXRpdmVDbGllbnRTdGF0ZSI7fX1zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGhvb2tzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXJ0dWFsIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGF0dHJpYnV0ZXMiO2E6MDp7fX19czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGhvZHMiO2E6OTp7czo2MToiXFN5bWZvbnlcQ29tcG9uZW50XEh0dHBDbGllbnRcTmF0aXZlSHR0cENsaWVudDo6X19jb25zdHJ1Y3QoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjE0OiJkZWZhdWx0T3B0aW9ucyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uIjoyOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAGV4cHJlc3Npb24iO3M6MjoiW10iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxODoibWF4SG9zdENvbm5lY3Rpb25zIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24iOjI6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AZXhwcmVzc2lvbiI7czoxOiI2IjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAHBhcnRzIjthOjA6e319czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE4NDc7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NjQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MjMyMTt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2MToiXFN5bWZvbnlcQ29tcG9uZW50XEh0dHBDbGllbnRcTmF0aXZlSHR0cENsaWVudDo6X19jb25zdHJ1Y3QoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJfX2NvbnN0cnVjdCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjA6IiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTozOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MjU6IkRlZmF1bHQgcmVxdWVzdCdzIG9wdGlvbnMiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxNDoiZGVmYXVsdE9wdGlvbnMiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo0MToiVGhlIG1heGltdW0gbnVtYmVyIG9mIGNvbm5lY3Rpb25zIHRvIG9wZW4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE4OiJtYXhIb3N0Q29ubmVjdGlvbnMiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MjtPOjQyOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xTZWUiOjM6e3M6NzoiACoAbmFtZSI7czozOiJzZWUiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjIxOiJmb3IgYXZhaWxhYmxlIG9wdGlvbnMiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6OToiACoAcmVmZXJzIjtPOjU0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZWZlcmVuY2VcRnFzZW4iOjE6e3M6NjE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZWZlcmVuY2VcRnFzZW4AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2NzoiXFN5bWZvbnlcQ29udHJhY3RzXEh0dHBDbGllbnRcSHR0cENsaWVudEludGVyZmFjZTo6T1BUSU9OU19ERUZBVUxUUyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE2OiJPUFRJT05TX0RFRkFVTFRTIjt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czoyODoiU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MTE6e3M6MjA6IkxvZ2dlckF3YXJlSW50ZXJmYWNlIjtzOjI4OiJQc3JcTG9nXExvZ2dlckF3YXJlSW50ZXJmYWNlIjtzOjE2OiJMb2dnZXJBd2FyZVRyYWl0IjtzOjI0OiJQc3JcTG9nXExvZ2dlckF3YXJlVHJhaXQiO3M6MjQ6IkludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiI7czo2MzoiU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxFeGNlcHRpb25cSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIjtzOjE4OiJUcmFuc3BvcnRFeGNlcHRpb24iO3M6NTc6IlN5bWZvbnlcQ29tcG9uZW50XEh0dHBDbGllbnRcRXhjZXB0aW9uXFRyYW5zcG9ydEV4Y2VwdGlvbiI7czoxNzoiTmF0aXZlQ2xpZW50U3RhdGUiO3M6NTU6IlN5bWZvbnlcQ29tcG9uZW50XEh0dHBDbGllbnRcSW50ZXJuYWxcTmF0aXZlQ2xpZW50U3RhdGUiO3M6MTQ6Ik5hdGl2ZVJlc3BvbnNlIjtzOjUyOiJTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XFJlc3BvbnNlXE5hdGl2ZVJlc3BvbnNlIjtzOjE0OiJSZXNwb25zZVN0cmVhbSI7czo1MjoiU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxSZXNwb25zZVxSZXNwb25zZVN0cmVhbSI7czoxOToiSHR0cENsaWVudEludGVyZmFjZSI7czo0ODoiU3ltZm9ueVxDb250cmFjdHNcSHR0cENsaWVudFxIdHRwQ2xpZW50SW50ZXJmYWNlIjtzOjE3OiJSZXNwb25zZUludGVyZmFjZSI7czo0NjoiU3ltZm9ueVxDb250cmFjdHNcSHR0cENsaWVudFxSZXNwb25zZUludGVyZmFjZSI7czoyMzoiUmVzcG9uc2VTdHJlYW1JbnRlcmZhY2UiO3M6NTI6IlN5bWZvbnlcQ29udHJhY3RzXEh0dHBDbGllbnRcUmVzcG9uc2VTdHJlYW1JbnRlcmZhY2UiO3M6MTQ6IlJlc2V0SW50ZXJmYWNlIjtzOjQwOiJTeW1mb255XENvbnRyYWN0c1xTZXJ2aWNlXFJlc2V0SW50ZXJmYWNlIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjU3OiJcU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxOYXRpdmVIdHRwQ2xpZW50OjpyZXF1ZXN0KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTozOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjY6Im1ldGhvZCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czozOiJ1cmwiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6Im9wdGlvbnMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjI6IltdIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAHBhcnRzIjthOjA6e319czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjY5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjI0MTY7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mjc3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjEyNDI2O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ3OiJcU3ltZm9ueVxDb250cmFjdHNcSHR0cENsaWVudFxSZXNwb25zZUludGVyZmFjZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE3OiJSZXNwb25zZUludGVyZmFjZSI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1NzoiXFN5bWZvbnlcQ29tcG9uZW50XEh0dHBDbGllbnRcTmF0aXZlSHR0cENsaWVudDo6cmVxdWVzdCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NzoicmVxdWVzdCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjA6IiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcU2VlIjozOntzOjc6IgAqAG5hbWUiO3M6Mzoic2VlIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyMToiZm9yIGF2YWlsYWJsZSBvcHRpb25zIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjk6IgAqAHJlZmVycyI7Tzo1NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmVmZXJlbmNlXEZxc2VuIjoxOntzOjYxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmVmZXJlbmNlXEZxc2VuAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Njc6IlxTeW1mb255XENvbnRyYWN0c1xIdHRwQ2xpZW50XEh0dHBDbGllbnRJbnRlcmZhY2U6Ok9QVElPTlNfREVGQVVMVFMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiT1BUSU9OU19ERUZBVUxUUyI7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjoyMDg7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6NTY6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQ6OnN0cmVhbSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTM6e3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ3OiJcU3ltZm9ueVxDb250cmFjdHNcSHR0cENsaWVudFxSZXNwb25zZUludGVyZmFjZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE3OiJSZXNwb25zZUludGVyZmFjZSI7fX1pOjE7Tzo0MDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEl0ZXJhYmxlXyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6OToicmVzcG9uc2VzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE51bGxhYmxlIjoxOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE51bGxhYmxlAHJlYWxUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcRmxvYXRfIjowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NzoidGltZW91dCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uIjoyOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAGV4cHJlc3Npb24iO3M6NDQ6Int7IFBIUERPQzM3YTYyNTljYzBjMWRhZTI5OWE3ODY2NDg5ZGZmMGJkIH19IjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAHBhcnRzIjthOjE6e3M6NDQ6Int7IFBIUERPQzM3YTYyNTljYzBjMWRhZTI5OWE3ODY2NDg5ZGZmMGJkIH19IjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTnVsbF8iOjA6e319fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNzk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTI0MzM7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mjg2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjEyNzM3O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUzOiJcU3ltZm9ueVxDb250cmFjdHNcSHR0cENsaWVudFxSZXNwb25zZVN0cmVhbUludGVyZmFjZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIzOiJSZXNwb25zZVN0cmVhbUludGVyZmFjZSI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1NjoiXFN5bWZvbnlcQ29tcG9uZW50XEh0dHBDbGllbnRcTmF0aXZlSHR0cENsaWVudDo6c3RyZWFtKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo2OiJzdHJlYW0iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo1NToiXFN5bWZvbnlcQ29tcG9uZW50XEh0dHBDbGllbnRcTmF0aXZlSHR0cENsaWVudDo6cmVzZXQoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI4ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxMjc0NDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyOTE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTI4MTU7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1NToiXFN5bWZvbnlcQ29tcG9uZW50XEh0dHBDbGllbnRcTmF0aXZlSHR0cENsaWVudDo6cmVzZXQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjU6InJlc2V0Ijt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6NjU6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQ6OmdldEJvZHlBc1N0cmluZygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTM6e3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6ImJvZHkiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI5MztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxMjgyMjt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozMTQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTM0MTQ7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjY1OiJcU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxOYXRpdmVIdHRwQ2xpZW50OjpnZXRCb2R5QXNTdHJpbmcoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJnZXRCb2R5QXNTdHJpbmciO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjE7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6NjM6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQ6OnBhcnNlSG9zdFBvcnQoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjM6InVybCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiaW5mbyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjoxO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzE5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjEzNDg5O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjMyOTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxMzg4OTt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjYzOiJcU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxOYXRpdmVIdHRwQ2xpZW50OjpwYXJzZUhvc3RQb3J0KCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMzoicGFyc2VIb3N0UG9ydCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0NDoiRXh0cmFjdHMgdGhlIGhvc3QgYW5kIHRoZSBwb3J0IGZyb20gdGhlIFVSTC4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjoyMDg7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjE7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6NjA6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQ6OmRuc1Jlc29sdmUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjQ6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiaG9zdCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1NjoiXFN5bWZvbnlcQ29tcG9uZW50XEh0dHBDbGllbnRcSW50ZXJuYWxcTmF0aXZlQ2xpZW50U3RhdGUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNzoiTmF0aXZlQ2xpZW50U3RhdGUiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJtdWx0aSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiaW5mbyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjoxO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aTozO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xOdWxsYWJsZSI6MTp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xOdWxsYWJsZQByZWFsVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjg6IlxDbG9zdXJlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NzoiQ2xvc3VyZSI7fX19czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMDoib25Qcm9ncmVzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzM0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjEzOTg2O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM3OTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxNjA3MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjA6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQ6OmRuc1Jlc29sdmUoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEwOiJkbnNSZXNvbHZlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjY2OiJSZXNvbHZlcyB0aGUgSVAgb2YgdGhlIGhvc3QgdXNpbmcgdGhlIGxvY2FsIEROUyBjYWNoZSBpZiBwb3NzaWJsZS4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjoyMDg7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjE7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6NzI6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQ6OmNyZWF0ZVJlZGlyZWN0UmVzb2x2ZXIoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjU6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6Im9wdGlvbnMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6OToiYXV0aG9yaXR5IjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE51bGxhYmxlIjoxOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE51bGxhYmxlAHJlYWxUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX19czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJwcm94eSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aTozO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiaW5mbyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjoxO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aTo0O086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xOdWxsYWJsZSI6MTp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xOdWxsYWJsZQByZWFsVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjg6IlxDbG9zdXJlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NzoiQ2xvc3VyZSI7fX19czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMDoib25Qcm9ncmVzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mzg0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE2MTYyO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ2MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToyMDIwMDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo4OiJcQ2xvc3VyZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6IkNsb3N1cmUiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzI6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQ6OmNyZWF0ZVJlZGlyZWN0UmVzb2x2ZXIoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIyOiJjcmVhdGVSZWRpcmVjdFJlc29sdmVyIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjYxOiJIYW5kbGVzIHJlZGlyZWN0cyAtIHRoZSBuYXRpdmUgbG9naWMgaXMgdG9vIGJ1Z2d5IHRvIGJlIHVzZWQuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MjA4O3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjoxO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjc0OiJcU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxOYXRpdmVIdHRwQ2xpZW50Ojpjb25maWd1cmVIZWFkZXJzQW5kUHJveHkoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjU6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo3OiJjb250ZXh0IjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6Imhvc3QiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjE0OiJyZXF1ZXN0SGVhZGVycyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aTozO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xOdWxsYWJsZSI6MTp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xOdWxsYWJsZQByZWFsVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToicHJveHkiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6NDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToiaXNTc2wiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ2MztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToyMDIwNzt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0OTc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MjE2NjQ7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjc0OiJcU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxOYXRpdmVIdHRwQ2xpZW50Ojpjb25maWd1cmVIZWFkZXJzQW5kUHJveHkoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI0OiJjb25maWd1cmVIZWFkZXJzQW5kUHJveHkiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjE7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fX1zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AdXNlZFRyYWl0cyI7YToyOntzOjQ1OiJcU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxIdHRwQ2xpZW50VHJhaXQiO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NToiXFN5bWZvbnlcQ29tcG9uZW50XEh0dHBDbGllbnRcSHR0cENsaWVudFRyYWl0IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6Ikh0dHBDbGllbnRUcmFpdCI7fXM6MjU6IlxQc3JcTG9nXExvZ2dlckF3YXJlVHJhaXQiO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyNToiXFBzclxMb2dcTG9nZ2VyQXdhcmVUcmFpdCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE2OiJMb2dnZXJBd2FyZVRyYWl0Ijt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0OTg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDY6IlxTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XE5hdGl2ZUh0dHBDbGllbnQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiTmF0aXZlSHR0cENsaWVudCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6OTI6IkEgcG9ydGFibGUgaW1wbGVtZW50YXRpb24gb2YgdGhlIEh0dHBDbGllbnRJbnRlcmZhY2UgY29udHJhY3RzIGJhc2VkIG9uIFBIUCBzdHJlYW0gd3JhcHBlcnMuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEwOToiUEhQIHN0cmVhbSB3cmFwcGVycyBhcmUgYWJsZSB0byBmZXRjaCByZXNwb25zZSBib2RpZXMgY29uY3VycmVudGx5LApidXQgZWFjaCByZXF1ZXN0IGlzIG9wZW5lZCBzeW5jaHJvbm91c2x5LiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xBdXRob3IiOjQ6e3M6NzoiACoAbmFtZSI7czo2OiJhdXRob3IiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtOO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xBdXRob3IAYXV0aG9yTmFtZSI7czoxNDoiTmljb2xhcyBHcmVrYXMiO3M6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xBdXRob3IAYXV0aG9yRW1haWwiO3M6MTM6InBAdGNod29yay5jb20iO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjIwODtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBwYXJlbnQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGZpbmFsIjtiOjE7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHJlYWRPbmx5IjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AYXR0cmlidXRlcyI7YTowOnt9fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGludGVyZmFjZXMiO2E6MDp7fXM6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAdHJhaXRzIjthOjA6e31zOjQwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGVudW1zIjthOjA6e31zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGhhc2giO3M6MzI6ImQzZWRkMzgyZjBmMDE4ZGMzMmFkYjE5MDYwMGE0YWNkIjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHBhdGgiO3M6NDc6InZlbmRvci9zeW1mb255L2h0dHAtY2xpZW50L05hdGl2ZUh0dHBDbGllbnQucGhwIjtzOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHNvdXJjZSI7czoyMTY2ODoiPD9waHAKCi8qCiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBTeW1mb255IHBhY2thZ2UuCiAqCiAqIChjKSBGYWJpZW4gUG90ZW5jaWVyIDxmYWJpZW5Ac3ltZm9ueS5jb20+CiAqCiAqIEZvciB0aGUgZnVsbCBjb3B5cmlnaHQgYW5kIGxpY2Vuc2UgaW5mb3JtYXRpb24sIHBsZWFzZSB2aWV3IHRoZSBMSUNFTlNFCiAqIGZpbGUgdGhhdCB3YXMgZGlzdHJpYnV0ZWQgd2l0aCB0aGlzIHNvdXJjZSBjb2RlLgogKi8KCm5hbWVzcGFjZSBTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50OwoKdXNlIFBzclxMb2dcTG9nZ2VyQXdhcmVJbnRlcmZhY2U7CnVzZSBQc3JcTG9nXExvZ2dlckF3YXJlVHJhaXQ7CnVzZSBTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XEV4Y2VwdGlvblxJbnZhbGlkQXJndW1lbnRFeGNlcHRpb247CnVzZSBTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XEV4Y2VwdGlvblxUcmFuc3BvcnRFeGNlcHRpb247CnVzZSBTeW1mb255XENvbXBvbmVudFxIdHRwQ2xpZW50XEludGVybmFsXE5hdGl2ZUNsaWVudFN0YXRlOwp1c2UgU3ltZm9ueVxDb21wb25lbnRcSHR0cENsaWVudFxSZXNwb25zZVxOYXRpdmVSZXNwb25zZTsKdXNlIFN5bWZvbnlcQ29tcG9uZW50XEh0dHBDbGllbnRcUmVzcG9uc2VcUmVzcG9uc2VTdHJlYW07CnVzZSBTeW1mb255XENvbnRyYWN0c1xIdHRwQ2xpZW50XEh0dHBDbGllbnRJbnRlcmZhY2U7CnVzZSBTeW1mb255XENvbnRyYWN0c1xIdHRwQ2xpZW50XFJlc3BvbnNlSW50ZXJmYWNlOwp1c2UgU3ltZm9ueVxDb250cmFjdHNcSHR0cENsaWVudFxSZXNwb25zZVN0cmVhbUludGVyZmFjZTsKdXNlIFN5bWZvbnlcQ29udHJhY3RzXFNlcnZpY2VcUmVzZXRJbnRlcmZhY2U7CgovKioKICogQSBwb3J0YWJsZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgSHR0cENsaWVudEludGVyZmFjZSBjb250cmFjdHMgYmFzZWQgb24gUEhQIHN0cmVhbSB3cmFwcGVycy4KICoKICogUEhQIHN0cmVhbSB3cmFwcGVycyBhcmUgYWJsZSB0byBmZXRjaCByZXNwb25zZSBib2RpZXMgY29uY3VycmVudGx5LAogKiBidXQgZWFjaCByZXF1ZXN0IGlzIG9wZW5lZCBzeW5jaHJvbm91c2x5LgogKgogKiBAYXV0aG9yIE5pY29sYXMgR3Jla2FzIDxwQHRjaHdvcmsuY29tPgogKi8KZmluYWwgY2xhc3MgTmF0aXZlSHR0cENsaWVudCBpbXBsZW1lbnRzIEh0dHBDbGllbnRJbnRlcmZhY2UsIExvZ2dlckF3YXJlSW50ZXJmYWNlLCBSZXNldEludGVyZmFjZQp7CiAgICB1c2UgSHR0cENsaWVudFRyYWl0OwogICAgdXNlIExvZ2dlckF3YXJlVHJhaXQ7CgogICAgcHVibGljIGNvbnN0IE9QVElPTlNfREVGQVVMVFMgPSBIdHRwQ2xpZW50SW50ZXJmYWNlOjpPUFRJT05TX0RFRkFVTFRTICsgWwogICAgICAgICdjcnlwdG9fbWV0aG9kJyA9PiBcU1RSRUFNX0NSWVBUT19NRVRIT0RfVExTdjFfMl9DTElFTlQsCiAgICBdOwoKICAgIHByaXZhdGUgYXJyYXkgJGRlZmF1bHRPcHRpb25zID0gc2VsZjo6T1BUSU9OU19ERUZBVUxUUzsKICAgIHByaXZhdGUgc3RhdGljIGFycmF5ICRlbXB0eURlZmF1bHRzID0gc2VsZjo6T1BUSU9OU19ERUZBVUxUUzsKCiAgICBwcml2YXRlIE5hdGl2ZUNsaWVudFN0YXRlICRtdWx0aTsKCiAgICAvKioKICAgICAqIEBwYXJhbSBhcnJheSAkZGVmYXVsdE9wdGlvbnMgICAgIERlZmF1bHQgcmVxdWVzdCdzIG9wdGlvbnMKICAgICAqIEBwYXJhbSBpbnQgICAkbWF4SG9zdENvbm5lY3Rpb25zIFRoZSBtYXhpbXVtIG51bWJlciBvZiBjb25uZWN0aW9ucyB0byBvcGVuCiAgICAgKgogICAgICogQHNlZSBIdHRwQ2xpZW50SW50ZXJmYWNlOjpPUFRJT05TX0RFRkFVTFRTIGZvciBhdmFpbGFibGUgb3B0aW9ucwogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoYXJyYXkgJGRlZmF1bHRPcHRpb25zID0gW10sIGludCAkbWF4SG9zdENvbm5lY3Rpb25zID0gNikKICAgIHsKICAgICAgICAkdGhpcy0+ZGVmYXVsdE9wdGlvbnNbJ2J1ZmZlciddID8/PSBzZWxmOjpzaG91bGRCdWZmZXIoLi4uKTsKCiAgICAgICAgaWYgKCRkZWZhdWx0T3B0aW9ucykgewogICAgICAgICAgICBbLCAkdGhpcy0+ZGVmYXVsdE9wdGlvbnNdID0gc2VsZjo6cHJlcGFyZVJlcXVlc3QobnVsbCwgbnVsbCwgJGRlZmF1bHRPcHRpb25zLCAkdGhpcy0+ZGVmYXVsdE9wdGlvbnMpOwogICAgICAgIH0KCiAgICAgICAgJHRoaXMtPm11bHRpID0gbmV3IE5hdGl2ZUNsaWVudFN0YXRlKCk7CiAgICAgICAgJHRoaXMtPm11bHRpLT5tYXhIb3N0Q29ubmVjdGlvbnMgPSAwIDwgJG1heEhvc3RDb25uZWN0aW9ucyA/ICRtYXhIb3N0Q29ubmVjdGlvbnMgOiBcUEhQX0lOVF9NQVg7CiAgICB9CgogICAgLyoqCiAgICAgKiBAc2VlIEh0dHBDbGllbnRJbnRlcmZhY2U6Ok9QVElPTlNfREVGQVVMVFMgZm9yIGF2YWlsYWJsZSBvcHRpb25zCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiByZXF1ZXN0KHN0cmluZyAkbWV0aG9kLCBzdHJpbmcgJHVybCwgYXJyYXkgJG9wdGlvbnMgPSBbXSk6IFJlc3BvbnNlSW50ZXJmYWNlCiAgICB7CiAgICAgICAgWyR1cmwsICRvcHRpb25zXSA9IHNlbGY6OnByZXBhcmVSZXF1ZXN0KCRtZXRob2QsICR1cmwsICRvcHRpb25zLCAkdGhpcy0+ZGVmYXVsdE9wdGlvbnMpOwoKICAgICAgICBpZiAoJG9wdGlvbnNbJ2JpbmR0byddKSB7CiAgICAgICAgICAgIGlmIChmaWxlX2V4aXN0cygkb3B0aW9uc1snYmluZHRvJ10pKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgVHJhbnNwb3J0RXhjZXB0aW9uKF9fQ0xBU1NfXy4nIGNhbm5vdCBiaW5kIHRvIGxvY2FsIFVuaXggc29ja2V0cywgdXNlIGUuZy4gQ3VybEh0dHBDbGllbnQgaW5zdGVhZC4nKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc3RyX3N0YXJ0c193aXRoKCRvcHRpb25zWydiaW5kdG8nXSwgJ2lmIScpKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgVHJhbnNwb3J0RXhjZXB0aW9uKF9fQ0xBU1NfXy4nIGNhbm5vdCBiaW5kIHRvIG5ldHdvcmsgaW50ZXJmYWNlcywgdXNlIGUuZy4gQ3VybEh0dHBDbGllbnQgaW5zdGVhZC4nKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc3RyX3N0YXJ0c193aXRoKCRvcHRpb25zWydiaW5kdG8nXSwgJ2hvc3QhJykpIHsKICAgICAgICAgICAgICAgICRvcHRpb25zWydiaW5kdG8nXSA9IHN1YnN0cigkb3B0aW9uc1snYmluZHRvJ10sIDUpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICgoXFBIUF9WRVJTSU9OX0lEIDwgODAyMjMgfHwgODAzMDAgPD0gXFBIUF9WRVJTSU9OX0lEICYmIDgwMzExIDwgXFBIUF9WRVJTSU9OX0lEKSAmJiAnXFwnID09PSBcRElSRUNUT1JZX1NFUEFSQVRPUiAmJiAnWycgPT09ICRvcHRpb25zWydiaW5kdG8nXVswXSkgewogICAgICAgICAgICAgICAgJG9wdGlvbnNbJ2JpbmR0byddID0gcHJlZ19yZXBsYWNlKCd7XlxbW15cXV0rK1xdfScsICdbJDBdJywgJG9wdGlvbnNbJ2JpbmR0byddKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgJGhhc0NvbnRlbnRMZW5ndGggPSBpc3NldCgkb3B0aW9uc1snbm9ybWFsaXplZF9oZWFkZXJzJ11bJ2NvbnRlbnQtbGVuZ3RoJ10pOwogICAgICAgICRoYXNCb2R5ID0gJycgIT09ICRvcHRpb25zWydib2R5J10gfHwgJ1BPU1QnID09PSAkbWV0aG9kIHx8ICRoYXNDb250ZW50TGVuZ3RoOwoKICAgICAgICAkb3B0aW9uc1snYm9keSddID0gc2VsZjo6Z2V0Qm9keUFzU3RyaW5nKCRvcHRpb25zWydib2R5J10pOwoKICAgICAgICBpZiAoJ2NodW5rZWQnID09PSBzdWJzdHIoJG9wdGlvbnNbJ25vcm1hbGl6ZWRfaGVhZGVycyddWyd0cmFuc2Zlci1lbmNvZGluZyddWzBdID8/ICcnLCBcc3RybGVuKCdUcmFuc2Zlci1FbmNvZGluZzogJykpKSB7CiAgICAgICAgICAgIHVuc2V0KCRvcHRpb25zWydub3JtYWxpemVkX2hlYWRlcnMnXVsndHJhbnNmZXItZW5jb2RpbmcnXSk7CiAgICAgICAgICAgICRvcHRpb25zWydoZWFkZXJzJ10gPSBhcnJheV9tZXJnZSguLi5hcnJheV92YWx1ZXMoJG9wdGlvbnNbJ25vcm1hbGl6ZWRfaGVhZGVycyddKSk7CiAgICAgICAgICAgICRvcHRpb25zWydib2R5J10gPSBzZWxmOjpkZWNodW5rKCRvcHRpb25zWydib2R5J10pOwogICAgICAgIH0KICAgICAgICBpZiAoJycgPT09ICRvcHRpb25zWydib2R5J10gJiYgJGhhc0JvZHkgJiYgISRoYXNDb250ZW50TGVuZ3RoKSB7CiAgICAgICAgICAgICRvcHRpb25zWydoZWFkZXJzJ11bXSA9ICdDb250ZW50LUxlbmd0aDogMCc7CiAgICAgICAgfQogICAgICAgIGlmICgkaGFzQm9keSAmJiAhaXNzZXQoJG9wdGlvbnNbJ25vcm1hbGl6ZWRfaGVhZGVycyddWydjb250ZW50LXR5cGUnXSkpIHsKICAgICAgICAgICAgJG9wdGlvbnNbJ2hlYWRlcnMnXVtdID0gJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJzsKICAgICAgICB9CgogICAgICAgIGlmIChcZXh0ZW5zaW9uX2xvYWRlZCgnemxpYicpICYmICFpc3NldCgkb3B0aW9uc1snbm9ybWFsaXplZF9oZWFkZXJzJ11bJ2FjY2VwdC1lbmNvZGluZyddKSkgewogICAgICAgICAgICAvLyBnemlwIGlzIHRoZSBtb3N0IHdpZGVseSBhdmFpbGFibGUgYWxnbywgbm8gbmVlZCB0byBkZWFsIHdpdGggZGVmbGF0ZQogICAgICAgICAgICAkb3B0aW9uc1snaGVhZGVycyddW10gPSAnQWNjZXB0LUVuY29kaW5nOiBnemlwJzsKICAgICAgICB9CgogICAgICAgIGlmICgkb3B0aW9uc1sncGVlcl9maW5nZXJwcmludCddKSB7CiAgICAgICAgICAgIGlmIChpc3NldCgkb3B0aW9uc1sncGVlcl9maW5nZXJwcmludCddWydwaW4tc2hhMjU2J10pICYmIDEgPT09IFxjb3VudCgkb3B0aW9uc1sncGVlcl9maW5nZXJwcmludCddKSkgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IFRyYW5zcG9ydEV4Y2VwdGlvbihfX0NMQVNTX18uJyBjYW5ub3QgdmVyaWZ5ICJwaW4tc2hhMjU2IiBmaW5nZXJwcmludHMsIHBsZWFzZSBwcm92aWRlIGEgInNoYTI1NiIgb25lLicpOwogICAgICAgICAgICB9CgogICAgICAgICAgICB1bnNldCgkb3B0aW9uc1sncGVlcl9maW5nZXJwcmludCddWydwaW4tc2hhMjU2J10pOwogICAgICAgIH0KCiAgICAgICAgJGluZm8gPSBbCiAgICAgICAgICAgICdyZXNwb25zZV9oZWFkZXJzJyA9PiBbXSwKICAgICAgICAgICAgJ3VybCcgPT4gJHVybCwKICAgICAgICAgICAgJ2Vycm9yJyA9PiBudWxsLAogICAgICAgICAgICAnY2FuY2VsZWQnID0+IGZhbHNlLAogICAgICAgICAgICAnaHR0cF9tZXRob2QnID0+ICRtZXRob2QsCiAgICAgICAgICAgICdodHRwX2NvZGUnID0+IDAsCiAgICAgICAgICAgICdyZWRpcmVjdF9jb3VudCcgPT4gMCwKICAgICAgICAgICAgJ3N0YXJ0X3RpbWUnID0+IDAuMCwKICAgICAgICAgICAgJ2Nvbm5lY3RfdGltZScgPT4gMC4wLAogICAgICAgICAgICAncmVkaXJlY3RfdGltZScgPT4gMC4wLAogICAgICAgICAgICAncHJldHJhbnNmZXJfdGltZScgPT4gMC4wLAogICAgICAgICAgICAnc3RhcnR0cmFuc2Zlcl90aW1lJyA9PiAwLjAsCiAgICAgICAgICAgICd0b3RhbF90aW1lJyA9PiAwLjAsCiAgICAgICAgICAgICduYW1lbG9va3VwX3RpbWUnID0+IDAuMCwKICAgICAgICAgICAgJ3NpemVfdXBsb2FkJyA9PiAwLAogICAgICAgICAgICAnc2l6ZV9kb3dubG9hZCcgPT4gMCwKICAgICAgICAgICAgJ3NpemVfYm9keScgPT4gXHN0cmxlbigkb3B0aW9uc1snYm9keSddKSwKICAgICAgICAgICAgJ3ByaW1hcnlfaXAnID0+ICcnLAogICAgICAgICAgICAncHJpbWFyeV9wb3J0JyA9PiAnaHR0cDonID09PSAkdXJsWydzY2hlbWUnXSA/IDgwIDogNDQzLAogICAgICAgICAgICAnZGVidWcnID0+IFxleHRlbnNpb25fbG9hZGVkKCdjdXJsJykgPyAnJyA6ICIqIEVuYWJsZSB0aGUgY3VybCBleHRlbnNpb24gZm9yIGJldHRlciBwZXJmb3JtYW5jZVxuIiwKICAgICAgICBdOwoKICAgICAgICBpZiAoJG9uUHJvZ3Jlc3MgPSAkb3B0aW9uc1snb25fcHJvZ3Jlc3MnXSkgewogICAgICAgICAgICAkbWF4RHVyYXRpb24gPSAwIDwgJG9wdGlvbnNbJ21heF9kdXJhdGlvbiddID8gJG9wdGlvbnNbJ21heF9kdXJhdGlvbiddIDogXElORjsKICAgICAgICAgICAgJG9uUHJvZ3Jlc3MgPSBzdGF0aWMgZnVuY3Rpb24gKC4uLiRwcm9ncmVzcykgdXNlICgkb25Qcm9ncmVzcywgJiRpbmZvLCAkbWF4RHVyYXRpb24pIHsKICAgICAgICAgICAgICAgIGlmICgkaW5mb1sndG90YWxfdGltZSddID49ICRtYXhEdXJhdGlvbikgewogICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBUcmFuc3BvcnRFeGNlcHRpb24oXHNwcmludGYoJ01heCBkdXJhdGlvbiB3YXMgcmVhY2hlZCBmb3IgIiVzIi4nLCBpbXBsb2RlKCcnLCAkaW5mb1sndXJsJ10pKSk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgJHByb2dyZXNzSW5mbyA9ICRpbmZvOwogICAgICAgICAgICAgICAgJHByb2dyZXNzSW5mb1sndXJsJ10gPSBpbXBsb2RlKCcnLCAkaW5mb1sndXJsJ10pOwogICAgICAgICAgICAgICAgdW5zZXQoJHByb2dyZXNzSW5mb1snc2l6ZV9ib2R5J10pOwoKICAgICAgICAgICAgICAgIC8vIE1lbW9pemUgdGhlIGxhc3QgcHJvZ3Jlc3MgdG8gZWFzZSBjYWxsaW5nIHRoZSBjYWxsYmFjayBwZXJpb2RpY2FsbHkgd2hlbiBubyBuZXR3b3JrIHRyYW5zZmVyIGhhcHBlbnMKICAgICAgICAgICAgICAgIHN0YXRpYyAkbGFzdFByb2dyZXNzID0gWzAsIDBdOwoKICAgICAgICAgICAgICAgIGlmICgkcHJvZ3Jlc3MgJiYgLTEgPT09ICRwcm9ncmVzc1swXSkgewogICAgICAgICAgICAgICAgICAgIC8vIFJlc3BvbnNlIGNvbXBsZXRlZAogICAgICAgICAgICAgICAgICAgICRsYXN0UHJvZ3Jlc3NbMF0gPSBtYXgoJGxhc3RQcm9ncmVzcyk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICRsYXN0UHJvZ3Jlc3MgPSAkcHJvZ3Jlc3MgPzogJGxhc3RQcm9ncmVzczsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAkb25Qcm9ncmVzcygkbGFzdFByb2dyZXNzWzBdLCAkbGFzdFByb2dyZXNzWzFdLCAkcHJvZ3Jlc3NJbmZvKTsKICAgICAgICAgICAgfTsKICAgICAgICB9IGVsc2VpZiAoMCA8ICRvcHRpb25zWydtYXhfZHVyYXRpb24nXSkgewogICAgICAgICAgICAkbWF4RHVyYXRpb24gPSAkb3B0aW9uc1snbWF4X2R1cmF0aW9uJ107CiAgICAgICAgICAgICRvblByb2dyZXNzID0gc3RhdGljIGZ1bmN0aW9uICgpIHVzZSAoJiRpbmZvLCAkbWF4RHVyYXRpb24pOiB2b2lkIHsKICAgICAgICAgICAgICAgIGlmICgkaW5mb1sndG90YWxfdGltZSddID49ICRtYXhEdXJhdGlvbikgewogICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBUcmFuc3BvcnRFeGNlcHRpb24oXHNwcmludGYoJ01heCBkdXJhdGlvbiB3YXMgcmVhY2hlZCBmb3IgIiVzIi4nLCBpbXBsb2RlKCcnLCAkaW5mb1sndXJsJ10pKSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH07CiAgICAgICAgfQoKICAgICAgICAvLyBBbHdheXMgcmVnaXN0ZXIgYSBub3RpZmljYXRpb24gY2FsbGJhY2sgdG8gY29tcHV0ZSBsaXZlIHN0YXRzIGFib3V0IHRoZSByZXNwb25zZQogICAgICAgICRub3RpZmljYXRpb24gPSBzdGF0aWMgZnVuY3Rpb24gKGludCAkY29kZSwgaW50ICRzZXZlcml0eSwgP3N0cmluZyAkbXNnLCBpbnQgJG1zZ0NvZGUsIGludCAkZGxOb3csIGludCAkZGxTaXplKSB1c2UgKCRvblByb2dyZXNzLCAmJGluZm8pIHsKICAgICAgICAgICAgJGluZm9bJ3RvdGFsX3RpbWUnXSA9IG1pY3JvdGltZSh0cnVlKSAtICRpbmZvWydzdGFydF90aW1lJ107CgogICAgICAgICAgICBpZiAoXFNUUkVBTV9OT1RJRllfUFJPR1JFU1MgPT09ICRjb2RlKSB7CiAgICAgICAgICAgICAgICAkaW5mb1snc3RhcnR0cmFuc2Zlcl90aW1lJ10gPSAkaW5mb1snc3RhcnR0cmFuc2Zlcl90aW1lJ10gPzogJGluZm9bJ3RvdGFsX3RpbWUnXTsKICAgICAgICAgICAgICAgICRpbmZvWydzaXplX3VwbG9hZCddICs9ICRkbE5vdyA/IDAgOiAkaW5mb1snc2l6ZV9ib2R5J107CiAgICAgICAgICAgICAgICAkaW5mb1snc2l6ZV9kb3dubG9hZCddID0gJGRsTm93OwogICAgICAgICAgICB9IGVsc2VpZiAoXFNUUkVBTV9OT1RJRllfQ09OTkVDVCA9PT0gJGNvZGUpIHsKICAgICAgICAgICAgICAgICRpbmZvWydjb25uZWN0X3RpbWUnXSA9ICRpbmZvWyd0b3RhbF90aW1lJ107CiAgICAgICAgICAgICAgICAkaW5mb1snZGVidWcnXSAuPSAkaW5mb1sncmVxdWVzdF9oZWFkZXInXTsKICAgICAgICAgICAgICAgIHVuc2V0KCRpbmZvWydyZXF1ZXN0X2hlYWRlciddKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKCRvblByb2dyZXNzKSB7CiAgICAgICAgICAgICAgICAkb25Qcm9ncmVzcygkZGxOb3csICRkbFNpemUpOwogICAgICAgICAgICB9CiAgICAgICAgfTsKCiAgICAgICAgaWYgKCRvcHRpb25zWydyZXNvbHZlJ10pIHsKICAgICAgICAgICAgJHRoaXMtPm11bHRpLT5kbnNDYWNoZSA9ICRvcHRpb25zWydyZXNvbHZlJ10gKyAkdGhpcy0+bXVsdGktPmRuc0NhY2hlOwogICAgICAgIH0KCiAgICAgICAgJHRoaXMtPmxvZ2dlcj8tPmluZm8oXHNwcmludGYoJ1JlcXVlc3Q6ICIlcyAlcyInLCAkbWV0aG9kLCBpbXBsb2RlKCcnLCAkdXJsKSkpOwoKICAgICAgICBpZiAoIWlzc2V0KCRvcHRpb25zWydub3JtYWxpemVkX2hlYWRlcnMnXVsndXNlci1hZ2VudCddKSkgewogICAgICAgICAgICAkb3B0aW9uc1snaGVhZGVycyddW10gPSAnVXNlci1BZ2VudDogU3ltZm9ueSBIdHRwQ2xpZW50IChOYXRpdmUpJzsKICAgICAgICB9CgogICAgICAgIGlmICgwIDwgJG9wdGlvbnNbJ21heF9kdXJhdGlvbiddKSB7CiAgICAgICAgICAgICRvcHRpb25zWyd0aW1lb3V0J10gPSBtaW4oJG9wdGlvbnNbJ21heF9kdXJhdGlvbiddLCAkb3B0aW9uc1sndGltZW91dCddKTsKICAgICAgICB9CiAgICAgICAgaWYgKFxQSFBfSU5UX1NJWkUgPT09IDQgJiYgMjE0NyA8ICRvcHRpb25zWyd0aW1lb3V0J10pIHsKICAgICAgICAgICAgJG9wdGlvbnNbJ3RpbWVvdXQnXSA9IDIxNDc7IC8vIGZvcGVuKCkgb24geDg2IGRvZXNuJ3Qgc3VwcG9ydCBsb25nZXIgdGltZW91dHMKICAgICAgICB9CgogICAgICAgIHN3aXRjaCAoJGNyeXB0b01ldGhvZCA9ICRvcHRpb25zWydjcnlwdG9fbWV0aG9kJ10pIHsKICAgICAgICAgICAgY2FzZSBcU1RSRUFNX0NSWVBUT19NRVRIT0RfVExTdjFfMF9DTElFTlQ6CiAgICAgICAgICAgICAgICAkY3J5cHRvTWV0aG9kIHw9IFxTVFJFQU1fQ1JZUFRPX01FVEhPRF9UTFN2MV8xX0NMSUVOVDsKICAgICAgICAgICAgICAgIC8vIG5vIGJyZWFrCiAgICAgICAgICAgIGNhc2UgXFNUUkVBTV9DUllQVE9fTUVUSE9EX1RMU3YxXzFfQ0xJRU5UOgogICAgICAgICAgICAgICAgJGNyeXB0b01ldGhvZCB8PSBcU1RSRUFNX0NSWVBUT19NRVRIT0RfVExTdjFfMl9DTElFTlQ7CiAgICAgICAgICAgICAgICAvLyBubyBicmVhawogICAgICAgICAgICBjYXNlIFxTVFJFQU1fQ1JZUFRPX01FVEhPRF9UTFN2MV8yX0NMSUVOVDoKICAgICAgICAgICAgICAgICRjcnlwdG9NZXRob2QgfD0gXFNUUkVBTV9DUllQVE9fTUVUSE9EX1RMU3YxXzNfQ0xJRU5UOwogICAgICAgIH0KCiAgICAgICAgJGNvbnRleHQgPSBbCiAgICAgICAgICAgICdodHRwJyA9PiBbCiAgICAgICAgICAgICAgICAncHJvdG9jb2xfdmVyc2lvbicgPT4gbWluKCRvcHRpb25zWydodHRwX3ZlcnNpb24nXSA/OiAnMS4xJywgJzEuMScpLAogICAgICAgICAgICAgICAgJ21ldGhvZCcgPT4gJG1ldGhvZCwKICAgICAgICAgICAgICAgICdjb250ZW50JyA9PiAkb3B0aW9uc1snYm9keSddLAogICAgICAgICAgICAgICAgJ2lnbm9yZV9lcnJvcnMnID0+IHRydWUsCiAgICAgICAgICAgICAgICAnY3VybF92ZXJpZnlfc3NsX3BlZXInID0+ICRvcHRpb25zWyd2ZXJpZnlfcGVlciddLAogICAgICAgICAgICAgICAgJ2N1cmxfdmVyaWZ5X3NzbF9ob3N0JyA9PiAkb3B0aW9uc1sndmVyaWZ5X2hvc3QnXSwKICAgICAgICAgICAgICAgICdhdXRvX2RlY29kZScgPT4gZmFsc2UsIC8vIERpc2FibGUgZGVjaHVuayBmaWx0ZXIsIGl0J3MgaW5jb21wYXRpYmxlIHdpdGggc3RyZWFtX3NlbGVjdCgpCiAgICAgICAgICAgICAgICAndGltZW91dCcgPT4gJG9wdGlvbnNbJ3RpbWVvdXQnXSwKICAgICAgICAgICAgICAgICdmb2xsb3dfbG9jYXRpb24nID0+IGZhbHNlLCAvLyBXZSBmb2xsb3cgcmVkaXJlY3RzIG91cnNlbHZlcyAtIHRoZSBuYXRpdmUgbG9naWMgaXMgdG9vIGxpbWl0ZWQKICAgICAgICAgICAgXSwKICAgICAgICAgICAgJ3NzbCcgPT4gYXJyYXlfZmlsdGVyKFsKICAgICAgICAgICAgICAgICd2ZXJpZnlfcGVlcicgPT4gJG9wdGlvbnNbJ3ZlcmlmeV9wZWVyJ10sCiAgICAgICAgICAgICAgICAndmVyaWZ5X3BlZXJfbmFtZScgPT4gJG9wdGlvbnNbJ3ZlcmlmeV9ob3N0J10sCiAgICAgICAgICAgICAgICAnY2FmaWxlJyA9PiAkb3B0aW9uc1snY2FmaWxlJ10sCiAgICAgICAgICAgICAgICAnY2FwYXRoJyA9PiAkb3B0aW9uc1snY2FwYXRoJ10sCiAgICAgICAgICAgICAgICAnbG9jYWxfY2VydCcgPT4gJG9wdGlvbnNbJ2xvY2FsX2NlcnQnXSwKICAgICAgICAgICAgICAgICdsb2NhbF9waycgPT4gJG9wdGlvbnNbJ2xvY2FsX3BrJ10sCiAgICAgICAgICAgICAgICAncGFzc3BocmFzZScgPT4gJG9wdGlvbnNbJ3Bhc3NwaHJhc2UnXSwKICAgICAgICAgICAgICAgICdjaXBoZXJzJyA9PiAkb3B0aW9uc1snY2lwaGVycyddLAogICAgICAgICAgICAgICAgJ3BlZXJfZmluZ2VycHJpbnQnID0+ICRvcHRpb25zWydwZWVyX2ZpbmdlcnByaW50J10sCiAgICAgICAgICAgICAgICAnY2FwdHVyZV9wZWVyX2NlcnRfY2hhaW4nID0+ICRvcHRpb25zWydjYXB0dXJlX3BlZXJfY2VydF9jaGFpbiddLAogICAgICAgICAgICAgICAgJ2FsbG93X3NlbGZfc2lnbmVkJyA9PiAoYm9vbCkgJG9wdGlvbnNbJ3BlZXJfZmluZ2VycHJpbnQnXSwKICAgICAgICAgICAgICAgICdTTklfZW5hYmxlZCcgPT4gdHJ1ZSwKICAgICAgICAgICAgICAgICdkaXNhYmxlX2NvbXByZXNzaW9uJyA9PiB0cnVlLAogICAgICAgICAgICAgICAgJ2NyeXB0b19tZXRob2QnID0+ICRjcnlwdG9NZXRob2QsCiAgICAgICAgICAgIF0sIHN0YXRpYyBmbiAoJHYpID0+IG51bGwgIT09ICR2KSwKICAgICAgICAgICAgJ3NvY2tldCcgPT4gWwogICAgICAgICAgICAgICAgJ2JpbmR0bycgPT4gJG9wdGlvbnNbJ2JpbmR0byddLAogICAgICAgICAgICAgICAgJ3RjcF9ub2RlbGF5JyA9PiB0cnVlLAogICAgICAgICAgICBdLAogICAgICAgIF07CgogICAgICAgICRjb250ZXh0ID0gc3RyZWFtX2NvbnRleHRfY3JlYXRlKCRjb250ZXh0LCBbJ25vdGlmaWNhdGlvbicgPT4gJG5vdGlmaWNhdGlvbl0pOwoKICAgICAgICAkcmVzb2x2ZXIgPSBzdGF0aWMgZnVuY3Rpb24gKCRtdWx0aSkgdXNlICgkY29udGV4dCwgJG9wdGlvbnMsICR1cmwsICYkaW5mbywgJG9uUHJvZ3Jlc3MpIHsKICAgICAgICAgICAgJGF1dGhvcml0eSA9ICR1cmxbJ2F1dGhvcml0eSddOwogICAgICAgICAgICBbJGhvc3QsICRwb3J0XSA9IHNlbGY6OnBhcnNlSG9zdFBvcnQoJHVybCwgJGluZm8pOwoKICAgICAgICAgICAgaWYgKCFpc3NldCgkb3B0aW9uc1snbm9ybWFsaXplZF9oZWFkZXJzJ11bJ2hvc3QnXSkpIHsKICAgICAgICAgICAgICAgICRvcHRpb25zWydoZWFkZXJzJ11bXSA9ICdIb3N0OiAnLiRob3N0LiRwb3J0OwogICAgICAgICAgICB9CgogICAgICAgICAgICAkcHJveHkgPSBzZWxmOjpnZXRQcm94eSgkb3B0aW9uc1sncHJveHknXSwgJHVybCwgJG9wdGlvbnNbJ25vX3Byb3h5J10pOwoKICAgICAgICAgICAgaWYgKCFzZWxmOjpjb25maWd1cmVIZWFkZXJzQW5kUHJveHkoJGNvbnRleHQsICRob3N0LCAkb3B0aW9uc1snaGVhZGVycyddLCAkcHJveHksICdodHRwczonID09PSAkdXJsWydzY2hlbWUnXSkpIHsKICAgICAgICAgICAgICAgICRpcCA9IHNlbGY6OmRuc1Jlc29sdmUoJGhvc3QsICRtdWx0aSwgJGluZm8sICRvblByb2dyZXNzKTsKICAgICAgICAgICAgICAgICR1cmxbJ2F1dGhvcml0eSddID0gc3Vic3RyX3JlcGxhY2UoJHVybFsnYXV0aG9yaXR5J10sICRpcCwgLVxzdHJsZW4oJGhvc3QpIC0gXHN0cmxlbigkcG9ydCksIFxzdHJsZW4oJGhvc3QpKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgcmV0dXJuIFtzZWxmOjpjcmVhdGVSZWRpcmVjdFJlc29sdmVyKCRvcHRpb25zLCAkYXV0aG9yaXR5LCAkcHJveHksICRpbmZvLCAkb25Qcm9ncmVzcyksIGltcGxvZGUoJycsICR1cmwpXTsKICAgICAgICB9OwoKICAgICAgICByZXR1cm4gbmV3IE5hdGl2ZVJlc3BvbnNlKCR0aGlzLT5tdWx0aSwgJGNvbnRleHQsIGltcGxvZGUoJycsICR1cmwpLCAkb3B0aW9ucywgJGluZm8sICRyZXNvbHZlciwgJG9uUHJvZ3Jlc3MsICR0aGlzLT5sb2dnZXIpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiBzdHJlYW0oUmVzcG9uc2VJbnRlcmZhY2V8aXRlcmFibGUgJHJlc3BvbnNlcywgP2Zsb2F0ICR0aW1lb3V0ID0gbnVsbCk6IFJlc3BvbnNlU3RyZWFtSW50ZXJmYWNlCiAgICB7CiAgICAgICAgaWYgKCRyZXNwb25zZXMgaW5zdGFuY2VvZiBOYXRpdmVSZXNwb25zZSkgewogICAgICAgICAgICAkcmVzcG9uc2VzID0gWyRyZXNwb25zZXNdOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIG5ldyBSZXNwb25zZVN0cmVhbShOYXRpdmVSZXNwb25zZTo6c3RyZWFtKCRyZXNwb25zZXMsICR0aW1lb3V0KSk7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIHJlc2V0KCk6IHZvaWQKICAgIHsKICAgICAgICAkdGhpcy0+bXVsdGktPnJlc2V0KCk7CiAgICB9CgogICAgcHJpdmF0ZSBzdGF0aWMgZnVuY3Rpb24gZ2V0Qm9keUFzU3RyaW5nKCRib2R5KTogc3RyaW5nCiAgICB7CiAgICAgICAgaWYgKFxpc19yZXNvdXJjZSgkYm9keSkpIHsKICAgICAgICAgICAgcmV0dXJuIHN0cmVhbV9nZXRfY29udGVudHMoJGJvZHkpOwogICAgICAgIH0KCiAgICAgICAgaWYgKCEkYm9keSBpbnN0YW5jZW9mIFxDbG9zdXJlKSB7CiAgICAgICAgICAgIHJldHVybiAkYm9keTsKICAgICAgICB9CgogICAgICAgICRyZXN1bHQgPSAnJzsKCiAgICAgICAgd2hpbGUgKCcnICE9PSAkZGF0YSA9ICRib2R5KHNlbGY6OiRDSFVOS19TSVpFKSkgewogICAgICAgICAgICBpZiAoIVxpc19zdHJpbmcoJGRhdGEpKSB7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgVHJhbnNwb3J0RXhjZXB0aW9uKFxzcHJpbnRmKCdSZXR1cm4gdmFsdWUgb2YgdGhlICJib2R5IiBvcHRpb24gY2FsbGJhY2sgbXVzdCBiZSBzdHJpbmcsICIlcyIgcmV0dXJuZWQuJywgZ2V0X2RlYnVnX3R5cGUoJGRhdGEpKSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICRyZXN1bHQgLj0gJGRhdGE7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gJHJlc3VsdDsKICAgIH0KCiAgICAvKioKICAgICAqIEV4dHJhY3RzIHRoZSBob3N0IGFuZCB0aGUgcG9ydCBmcm9tIHRoZSBVUkwuCiAgICAgKi8KICAgIHByaXZhdGUgc3RhdGljIGZ1bmN0aW9uIHBhcnNlSG9zdFBvcnQoYXJyYXkgJHVybCwgYXJyYXkgJiRpbmZvKTogYXJyYXkKICAgIHsKICAgICAgICBpZiAoJHBvcnQgPSBwYXJzZV91cmwoJHVybFsnYXV0aG9yaXR5J10sIFxQSFBfVVJMX1BPUlQpID86ICcnKSB7CiAgICAgICAgICAgICRpbmZvWydwcmltYXJ5X3BvcnQnXSA9ICRwb3J0OwogICAgICAgICAgICAkcG9ydCA9ICc6Jy4kcG9ydDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAkaW5mb1sncHJpbWFyeV9wb3J0J10gPSAnaHR0cDonID09PSAkdXJsWydzY2hlbWUnXSA/IDgwIDogNDQzOwogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIFtwYXJzZV91cmwoJHVybFsnYXV0aG9yaXR5J10sIFxQSFBfVVJMX0hPU1QpLCAkcG9ydF07CiAgICB9CgogICAgLyoqCiAgICAgKiBSZXNvbHZlcyB0aGUgSVAgb2YgdGhlIGhvc3QgdXNpbmcgdGhlIGxvY2FsIEROUyBjYWNoZSBpZiBwb3NzaWJsZS4KICAgICAqLwogICAgcHJpdmF0ZSBzdGF0aWMgZnVuY3Rpb24gZG5zUmVzb2x2ZShzdHJpbmcgJGhvc3QsIE5hdGl2ZUNsaWVudFN0YXRlICRtdWx0aSwgYXJyYXkgJiRpbmZvLCA/XENsb3N1cmUgJG9uUHJvZ3Jlc3MpOiBzdHJpbmcKICAgIHsKICAgICAgICAkZmxhZyA9ICcnICE9PSAkaG9zdCAmJiAnWycgPT09ICRob3N0WzBdICYmICddJyA9PT0gJGhvc3RbLTFdICYmIHN0cl9jb250YWlucygkaG9zdCwgJzonKSA/IFxGSUxURVJfRkxBR19JUFY2IDogXEZJTFRFUl9GTEFHX0lQVjQ7CiAgICAgICAgJGlwID0gXEZJTFRFUl9GTEFHX0lQVjYgPT09ICRmbGFnID8gc3Vic3RyKCRob3N0LCAxLCAtMSkgOiAkaG9zdDsKICAgICAgICAkbm93ID0gbWljcm90aW1lKHRydWUpOwoKICAgICAgICBpZiAoZmlsdGVyX3ZhcigkaXAsIFxGSUxURVJfVkFMSURBVEVfSVAsICRmbGFnKSkgewogICAgICAgICAgICAvLyBUaGUgaG9zdCBpcyBhbHJlYWR5IGFuIElQIGFkZHJlc3MKICAgICAgICB9IGVsc2VpZiAobnVsbCA9PT0gJGlwID0gJG11bHRpLT5kbnNDYWNoZVskaG9zdF0gPz8gbnVsbCkgewogICAgICAgICAgICAkaW5mb1snZGVidWcnXSAuPSAiKiBIb3N0bmFtZSB3YXMgTk9UIGZvdW5kIGluIEROUyBjYWNoZVxuIjsKCiAgICAgICAgICAgIGlmICgkaXAgPSBnZXRob3N0YnluYW1lbCgkaG9zdCkpIHsKICAgICAgICAgICAgICAgICRpcCA9ICRpcFswXTsKICAgICAgICAgICAgfSBlbHNlaWYgKCFcZGVmaW5lZCgnU1RSRUFNX1BGX0lORVQ2JykpIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBUcmFuc3BvcnRFeGNlcHRpb24oXHNwcmludGYoJ0NvdWxkIG5vdCByZXNvbHZlIGhvc3QgIiVzIi4nLCAkaG9zdCkpOwogICAgICAgICAgICB9IGVsc2VpZiAoJGlwID0gZG5zX2dldF9yZWNvcmQoJGhvc3QsIFxETlNfQUFBQSkpIHsKICAgICAgICAgICAgICAgICRpcCA9ICRpcFswXVsnaXB2NiddOwogICAgICAgICAgICB9IGVsc2VpZiAoXGV4dGVuc2lvbl9sb2FkZWQoJ3NvY2tldHMnKSkgewogICAgICAgICAgICAgICAgaWYgKCEkYWRkckluZm8gPSBzb2NrZXRfYWRkcmluZm9fbG9va3VwKCRob3N0LCAwLCBbJ2FpX3NvY2t0eXBlJyA9PiBcU09DS19TVFJFQU0sICdhaV9mYW1pbHknID0+IFxBRl9JTkVUNl0pKSB7CiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFRyYW5zcG9ydEV4Y2VwdGlvbihcc3ByaW50ZignQ291bGQgbm90IHJlc29sdmUgaG9zdCAiJXMiLicsICRob3N0KSk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgJGlwID0gc29ja2V0X2FkZHJpbmZvX2V4cGxhaW4oJGFkZHJJbmZvWzBdKVsnYWlfYWRkciddWydzaW42X2FkZHInXTsKICAgICAgICAgICAgfSBlbHNlaWYgKCdsb2NhbGhvc3QnID09PSAkaG9zdCB8fCAnbG9jYWxob3N0LicgPT09ICRob3N0KSB7CiAgICAgICAgICAgICAgICAkaXAgPSAnOjoxJzsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRocm93IG5ldyBUcmFuc3BvcnRFeGNlcHRpb24oXHNwcmludGYoJ0NvdWxkIG5vdCByZXNvbHZlIGhvc3QgIiVzIi4nLCAkaG9zdCkpOwogICAgICAgICAgICB9CgogICAgICAgICAgICAkbXVsdGktPmRuc0NhY2hlWyRob3N0XSA9ICRpcDsKICAgICAgICAgICAgJGluZm9bJ2RlYnVnJ10gLj0gIiogQWRkZWQgeyRob3N0fTowOnskaXB9IHRvIEROUyBjYWNoZVxuIjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAkaW5mb1snZGVidWcnXSAuPSAiKiBIb3N0bmFtZSB3YXMgZm91bmQgaW4gRE5TIGNhY2hlXG4iOwogICAgICAgIH0KCiAgICAgICAgJGhvc3QgPSBzdHJfY29udGFpbnMoJGlwLCAnOicpID8gIlskaXBdIiA6ICRpcDsKICAgICAgICAkaW5mb1snbmFtZWxvb2t1cF90aW1lJ10gPSBtaWNyb3RpbWUodHJ1ZSkgLSAoJGluZm9bJ3N0YXJ0X3RpbWUnXSA/OiAkbm93KTsKICAgICAgICAkaW5mb1sncHJpbWFyeV9pcCddID0gJGlwOwoKICAgICAgICBpZiAoJG9uUHJvZ3Jlc3MpIHsKICAgICAgICAgICAgLy8gTm90aWZ5IEROUyByZXNvbHV0aW9uCiAgICAgICAgICAgICRvblByb2dyZXNzKCk7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gJGhvc3Q7CiAgICB9CgogICAgLyoqCiAgICAgKiBIYW5kbGVzIHJlZGlyZWN0cyAtIHRoZSBuYXRpdmUgbG9naWMgaXMgdG9vIGJ1Z2d5IHRvIGJlIHVzZWQuCiAgICAgKi8KICAgIHByaXZhdGUgc3RhdGljIGZ1bmN0aW9uIGNyZWF0ZVJlZGlyZWN0UmVzb2x2ZXIoYXJyYXkgJG9wdGlvbnMsIHN0cmluZyAkYXV0aG9yaXR5LCA/YXJyYXkgJHByb3h5LCBhcnJheSAmJGluZm8sID9cQ2xvc3VyZSAkb25Qcm9ncmVzcyk6IFxDbG9zdXJlCiAgICB7CiAgICAgICAgJHJlZGlyZWN0SGVhZGVycyA9IFtdOwogICAgICAgIGlmICgwIDwgJG1heFJlZGlyZWN0cyA9ICRvcHRpb25zWydtYXhfcmVkaXJlY3RzJ10pIHsKICAgICAgICAgICAgJHJlZGlyZWN0SGVhZGVycyA9IFsnYXV0aG9yaXR5JyA9PiAkYXV0aG9yaXR5XTsKICAgICAgICAgICAgJHJlZGlyZWN0SGVhZGVyc1snd2l0aF9hdXRoJ10gPSAkcmVkaXJlY3RIZWFkZXJzWydub19hdXRoJ10gPSBhcnJheV9maWx0ZXIoJG9wdGlvbnNbJ2hlYWRlcnMnXSwgc3RhdGljIGZuICgkaCkgPT4gMCAhPT0gc3RyaXBvcygkaCwgJ0hvc3Q6JykpOwoKICAgICAgICAgICAgaWYgKGlzc2V0KCRvcHRpb25zWydub3JtYWxpemVkX2hlYWRlcnMnXVsnYXV0aG9yaXphdGlvbiddKSB8fCBpc3NldCgkb3B0aW9uc1snbm9ybWFsaXplZF9oZWFkZXJzJ11bJ2Nvb2tpZSddKSkgewogICAgICAgICAgICAgICAgJHJlZGlyZWN0SGVhZGVyc1snbm9fYXV0aCddID0gYXJyYXlfZmlsdGVyKCRyZWRpcmVjdEhlYWRlcnNbJ25vX2F1dGgnXSwgc3RhdGljIGZuICgkaCkgPT4gMCAhPT0gc3RyaXBvcygkaCwgJ0F1dGhvcml6YXRpb246JykgJiYgMCAhPT0gc3RyaXBvcygkaCwgJ0Nvb2tpZTonKSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHJldHVybiBzdGF0aWMgZnVuY3Rpb24gKE5hdGl2ZUNsaWVudFN0YXRlICRtdWx0aSwgP3N0cmluZyAkbG9jYXRpb24sICRjb250ZXh0KSB1c2UgKCYkcmVkaXJlY3RIZWFkZXJzLCAkcHJveHksICYkaW5mbywgJG1heFJlZGlyZWN0cywgJG9uUHJvZ3Jlc3MpOiA/c3RyaW5nIHsKICAgICAgICAgICAgaWYgKG51bGwgPT09ICRsb2NhdGlvbiB8fCAkaW5mb1snaHR0cF9jb2RlJ10gPCAzMDAgfHwgNDAwIDw9ICRpbmZvWydodHRwX2NvZGUnXSkgewogICAgICAgICAgICAgICAgJGluZm9bJ3JlZGlyZWN0X3VybCddID0gbnVsbDsKCiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICR1cmwgPSBzZWxmOjpwYXJzZVVybCgkbG9jYXRpb24pOwogICAgICAgICAgICAgICAgJGxvY2F0aW9uSGFzSG9zdCA9IGlzc2V0KCR1cmxbJ2F1dGhvcml0eSddKTsKICAgICAgICAgICAgICAgICR1cmwgPSBzZWxmOjpyZXNvbHZlVXJsKCR1cmwsICRpbmZvWyd1cmwnXSk7CiAgICAgICAgICAgIH0gY2F0Y2ggKEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbikgewogICAgICAgICAgICAgICAgJGluZm9bJ3JlZGlyZWN0X3VybCddID0gbnVsbDsKCiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJGluZm9bJ3JlZGlyZWN0X3VybCddID0gaW1wbG9kZSgnJywgJHVybCk7CgogICAgICAgICAgICBpZiAoJGluZm9bJ3JlZGlyZWN0X2NvdW50J10gPj0gJG1heFJlZGlyZWN0cykgewogICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgICRpbmZvWyd1cmwnXSA9ICR1cmw7CiAgICAgICAgICAgICsrJGluZm9bJ3JlZGlyZWN0X2NvdW50J107CiAgICAgICAgICAgICRpbmZvWydyZWRpcmVjdF90aW1lJ10gPSBtaWNyb3RpbWUodHJ1ZSkgLSAkaW5mb1snc3RhcnRfdGltZSddOwoKICAgICAgICAgICAgLy8gRG8gbGlrZSBjdXJsIGFuZCBicm93c2VyczogdHVybiBQT1NUIHRvIEdFVCBvbiAzMDEsIDMwMiBhbmQgMzAzCiAgICAgICAgICAgIGlmIChcaW5fYXJyYXkoJGluZm9bJ2h0dHBfY29kZSddLCBbMzAxLCAzMDIsIDMwM10sIHRydWUpKSB7CiAgICAgICAgICAgICAgICAkb3B0aW9ucyA9IHN0cmVhbV9jb250ZXh0X2dldF9vcHRpb25zKCRjb250ZXh0KVsnaHR0cCddOwoKICAgICAgICAgICAgICAgIGlmICgnUE9TVCcgPT09ICRvcHRpb25zWydtZXRob2QnXSB8fCAzMDMgPT09ICRpbmZvWydodHRwX2NvZGUnXSkgewogICAgICAgICAgICAgICAgICAgICRpbmZvWydodHRwX21ldGhvZCddID0gJG9wdGlvbnNbJ21ldGhvZCddID0gJ0hFQUQnID09PSAkb3B0aW9uc1snbWV0aG9kJ10gPyAnSEVBRCcgOiAnR0VUJzsKICAgICAgICAgICAgICAgICAgICAkb3B0aW9uc1snY29udGVudCddID0gJyc7CiAgICAgICAgICAgICAgICAgICAgJGZpbHRlckNvbnRlbnRIZWFkZXJzID0gc3RhdGljIGZuICgkaCkgPT4gMCAhPT0gc3RyaXBvcygkaCwgJ0NvbnRlbnQtTGVuZ3RoOicpICYmIDAgIT09IHN0cmlwb3MoJGgsICdDb250ZW50LVR5cGU6JykgJiYgMCAhPT0gc3RyaXBvcygkaCwgJ1RyYW5zZmVyLUVuY29kaW5nOicpOwogICAgICAgICAgICAgICAgICAgICRvcHRpb25zWydoZWFkZXInXSA9IGFycmF5X2ZpbHRlcigkb3B0aW9uc1snaGVhZGVyJ10sICRmaWx0ZXJDb250ZW50SGVhZGVycyk7CiAgICAgICAgICAgICAgICAgICAgJHJlZGlyZWN0SGVhZGVyc1snbm9fYXV0aCddID0gYXJyYXlfZmlsdGVyKCRyZWRpcmVjdEhlYWRlcnNbJ25vX2F1dGgnXSwgJGZpbHRlckNvbnRlbnRIZWFkZXJzKTsKICAgICAgICAgICAgICAgICAgICAkcmVkaXJlY3RIZWFkZXJzWyd3aXRoX2F1dGgnXSA9IGFycmF5X2ZpbHRlcigkcmVkaXJlY3RIZWFkZXJzWyd3aXRoX2F1dGgnXSwgJGZpbHRlckNvbnRlbnRIZWFkZXJzKTsKCiAgICAgICAgICAgICAgICAgICAgaWYgKFxQSFBfVkVSU0lPTl9JRCA+PSA4MDMwMCkgewogICAgICAgICAgICAgICAgICAgICAgICBzdHJlYW1fY29udGV4dF9zZXRfb3B0aW9ucygkY29udGV4dCwgWydodHRwJyA9PiAkb3B0aW9uc10pOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHN0cmVhbV9jb250ZXh0X3NldF9vcHRpb24oJGNvbnRleHQsIFsnaHR0cCcgPT4gJG9wdGlvbnNdKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIFskaG9zdCwgJHBvcnRdID0gc2VsZjo6cGFyc2VIb3N0UG9ydCgkdXJsLCAkaW5mbyk7CgogICAgICAgICAgICBpZiAoJGxvY2F0aW9uSGFzSG9zdCkgewogICAgICAgICAgICAgICAgLy8gQXV0aG9yaXphdGlvbiBhbmQgQ29va2llIGhlYWRlcnMgTVVTVCBOT1QgZm9sbG93IGV4Y2VwdCBmb3IgdGhlIGluaXRpYWwgYXV0aG9yaXR5IG5hbWUKICAgICAgICAgICAgICAgICRyZXF1ZXN0SGVhZGVycyA9ICRyZWRpcmVjdEhlYWRlcnNbJ2F1dGhvcml0eSddID09PSAkdXJsWydhdXRob3JpdHknXSA/ICRyZWRpcmVjdEhlYWRlcnNbJ3dpdGhfYXV0aCddIDogJHJlZGlyZWN0SGVhZGVyc1snbm9fYXV0aCddOwogICAgICAgICAgICAgICAgJHJlcXVlc3RIZWFkZXJzW10gPSAnSG9zdDogJy4kaG9zdC4kcG9ydDsKICAgICAgICAgICAgICAgICRkbnNSZXNvbHZlID0gIXNlbGY6OmNvbmZpZ3VyZUhlYWRlcnNBbmRQcm94eSgkY29udGV4dCwgJGhvc3QsICRyZXF1ZXN0SGVhZGVycywgJHByb3h5LCAnaHR0cHM6JyA9PT0gJHVybFsnc2NoZW1lJ10pOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgJGRuc1Jlc29sdmUgPSBpc3NldChzdHJlYW1fY29udGV4dF9nZXRfb3B0aW9ucygkY29udGV4dClbJ3NzbCddWydwZWVyX25hbWUnXSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICgkZG5zUmVzb2x2ZSkgewogICAgICAgICAgICAgICAgJGlwID0gc2VsZjo6ZG5zUmVzb2x2ZSgkaG9zdCwgJG11bHRpLCAkaW5mbywgJG9uUHJvZ3Jlc3MpOwogICAgICAgICAgICAgICAgJHVybFsnYXV0aG9yaXR5J10gPSBzdWJzdHJfcmVwbGFjZSgkdXJsWydhdXRob3JpdHknXSwgJGlwLCAtXHN0cmxlbigkaG9zdCkgLSBcc3RybGVuKCRwb3J0KSwgXHN0cmxlbigkaG9zdCkpOwogICAgICAgICAgICB9CgogICAgICAgICAgICByZXR1cm4gaW1wbG9kZSgnJywgJHVybCk7CiAgICAgICAgfTsKICAgIH0KCiAgICBwcml2YXRlIHN0YXRpYyBmdW5jdGlvbiBjb25maWd1cmVIZWFkZXJzQW5kUHJveHkoJGNvbnRleHQsIHN0cmluZyAkaG9zdCwgYXJyYXkgJHJlcXVlc3RIZWFkZXJzLCA/YXJyYXkgJHByb3h5LCBib29sICRpc1NzbCk6IGJvb2wKICAgIHsKICAgICAgICBpZiAobnVsbCA9PT0gJHByb3h5KSB7CiAgICAgICAgICAgIHN0cmVhbV9jb250ZXh0X3NldF9vcHRpb24oJGNvbnRleHQsICdodHRwJywgJ2hlYWRlcicsICRyZXF1ZXN0SGVhZGVycyk7CiAgICAgICAgICAgIHN0cmVhbV9jb250ZXh0X3NldF9vcHRpb24oJGNvbnRleHQsICdzc2wnLCAncGVlcl9uYW1lJywgJGhvc3QpOwoKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KCiAgICAgICAgLy8gTWF0Y2hpbmcgIm5vX3Byb3h5IiBzaG91bGQgZm9sbG93IHRoZSBiZWhhdmlvciBvZiBjdXJsCgogICAgICAgIGZvcmVhY2ggKCRwcm94eVsnbm9fcHJveHknXSBhcyAkcnVsZSkgewogICAgICAgICAgICAkZG90UnVsZSA9ICcuJy5sdHJpbSgkcnVsZSwgJy4nKTsKCiAgICAgICAgICAgIGlmICgnKicgPT09ICRydWxlIHx8ICRob3N0ID09PSAkcnVsZSB8fCBzdHJfZW5kc193aXRoKCRob3N0LCAkZG90UnVsZSkpIHsKICAgICAgICAgICAgICAgIHN0cmVhbV9jb250ZXh0X3NldF9vcHRpb24oJGNvbnRleHQsICdodHRwJywgJ3Byb3h5JywgbnVsbCk7CiAgICAgICAgICAgICAgICBzdHJlYW1fY29udGV4dF9zZXRfb3B0aW9uKCRjb250ZXh0LCAnaHR0cCcsICdyZXF1ZXN0X2Z1bGx1cmknLCBmYWxzZSk7CiAgICAgICAgICAgICAgICBzdHJlYW1fY29udGV4dF9zZXRfb3B0aW9uKCRjb250ZXh0LCAnaHR0cCcsICdoZWFkZXInLCAkcmVxdWVzdEhlYWRlcnMpOwogICAgICAgICAgICAgICAgc3RyZWFtX2NvbnRleHRfc2V0X29wdGlvbigkY29udGV4dCwgJ3NzbCcsICdwZWVyX25hbWUnLCAkaG9zdCk7CgogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiAobnVsbCAhPT0gJHByb3h5WydhdXRoJ10pIHsKICAgICAgICAgICAgJHJlcXVlc3RIZWFkZXJzW10gPSAnUHJveHktQXV0aG9yaXphdGlvbjogJy4kcHJveHlbJ2F1dGgnXTsKICAgICAgICB9CgogICAgICAgIHN0cmVhbV9jb250ZXh0X3NldF9vcHRpb24oJGNvbnRleHQsICdodHRwJywgJ3Byb3h5JywgJHByb3h5Wyd1cmwnXSk7CiAgICAgICAgc3RyZWFtX2NvbnRleHRfc2V0X29wdGlvbigkY29udGV4dCwgJ2h0dHAnLCAncmVxdWVzdF9mdWxsdXJpJywgISRpc1NzbCk7CiAgICAgICAgc3RyZWFtX2NvbnRleHRfc2V0X29wdGlvbigkY29udGV4dCwgJ2h0dHAnLCAnaGVhZGVyJywgJHJlcXVlc3RIZWFkZXJzKTsKICAgICAgICBzdHJlYW1fY29udGV4dF9zZXRfb3B0aW9uKCRjb250ZXh0LCAnc3NsJywgJ3BlZXJfbmFtZScsIG51bGwpOwoKICAgICAgICByZXR1cm4gdHJ1ZTsKICAgIH0KfQoiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZG9jQmxvY2siO047czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBtZXRhZGF0YSI7YTowOnt9fQ==";