1778692612
441d63ebbc39eba359c9061ece8482bd-phpdoc%3Ad0671b7e4dee45bad0bf312e4e7d0e3c-2983dcca47cbcee2357a95566acd3443
s:128184:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjE0OiJKc29uUGFyc2VyLnBocCI7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lc3BhY2VzIjthOjE6e3M6NzoiXEpQT1BIUCI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjc6IlxKUE9QSFAiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo2OiJKUE9QSFAiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbmNsdWRlcyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBmdW5jdGlvbnMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY29uc3RhbnRzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNsYXNzZXMiO2E6Mzp7czoxNjoiXEpQT1BIUFxKc29uVHlwZSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18iOjE1OntzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AaW1wbGVtZW50cyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGNvbnN0YW50cyI7YToyOntzOjI3OiJcSlBPUEhQXEpzb25UeXBlOjpKc29uQXJyYXkiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQiOjk6e3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyNzoiXEpQT1BIUFxKc29uVHlwZTo6SnNvbkFycmF5IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiSnNvbkFycmF5Ijt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZG9jQmxvY2siO047czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAdmFsdWUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjE6IjAiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmaW5hbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AG1ldGFkYXRhIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABhdHRyaWJ1dGVzIjthOjA6e319czoyODoiXEpQT1BIUFxKc29uVHlwZTo6SnNvbk9iamVjdCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudCI6OTp7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI4OiJcSlBPUEhQXEpzb25UeXBlOjpKc29uT2JqZWN0IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTA6Ikpzb25PYmplY3QiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2YWx1ZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uIjoyOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAGV4cHJlc3Npb24iO3M6MToiMSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBwYXJ0cyI7YTowOnt9fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGZpbmFsIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbWV0YWRhdGEiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGF0dHJpYnV0ZXMiO2E6MDp7fX19czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHByb3BlcnRpZXMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBtZXRob2RzIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AdXNlZFRyYWl0cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjE2OiJcSlBPUEhQXEpzb25UeXBlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6ODoiSnNvblR5cGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZG9jQmxvY2siO047czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHBhcmVudCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AYWJzdHJhY3QiO2I6MTtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZmluYWwiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AcmVhZE9ubHkiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBhdHRyaWJ1dGVzIjthOjA6e319czoxNzoiXEpQT1BIUFxUb2tlblR5cGUiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfIjoxNTp7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGltcGxlbWVudHMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBjb25zdGFudHMiO2E6MTE6e3M6Mjc6IlxKUE9QSFBcVG9rZW5UeXBlOjpUb2tlbkVPRiI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudCI6OTp7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI3OiJcSlBPUEhQXFRva2VuVHlwZTo6VG9rZW5FT0YiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo4OiJUb2tlbkVPRiI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGRvY0Jsb2NrIjtOO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AHZhbHVlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24iOjI6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AZXhwcmVzc2lvbiI7czoyOiItMSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBwYXJ0cyI7YTowOnt9fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGZpbmFsIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbWV0YWRhdGEiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjMzOiJcSlBPUEhQXFRva2VuVHlwZTo6VG9rZW5BcnJheU9wZW4iO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQiOjk6e3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mjg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozMzoiXEpQT1BIUFxUb2tlblR5cGU6OlRva2VuQXJyYXlPcGVuIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTQ6IlRva2VuQXJyYXlPcGVuIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZG9jQmxvY2siO047czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAdmFsdWUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjE6IjAiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmaW5hbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AG1ldGFkYXRhIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABhdHRyaWJ1dGVzIjthOjA6e319czozNDoiXEpQT1BIUFxUb2tlblR5cGU6OlRva2VuQXJyYXlDbG9zZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudCI6OTp7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjMwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozMDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM0OiJcSlBPUEhQXFRva2VuVHlwZTo6VG9rZW5BcnJheUNsb3NlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6IlRva2VuQXJyYXlDbG9zZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGRvY0Jsb2NrIjtOO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AHZhbHVlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24iOjI6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AZXhwcmVzc2lvbiI7czoxOiIxIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAHBhcnRzIjthOjA6e319czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZmluYWwiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABtZXRhZGF0YSI7YTowOnt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAYXR0cmlidXRlcyI7YTowOnt9fXM6MzQ6IlxKUE9QSFBcVG9rZW5UeXBlOjpUb2tlbk9iamVjdE9wZW4iO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQiOjk6e3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozMjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozNDoiXEpQT1BIUFxUb2tlblR5cGU6OlRva2VuT2JqZWN0T3BlbiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJUb2tlbk9iamVjdE9wZW4iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2YWx1ZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uIjoyOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAGV4cHJlc3Npb24iO3M6MToiMiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBwYXJ0cyI7YTowOnt9fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGZpbmFsIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbWV0YWRhdGEiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjM1OiJcSlBPUEhQXFRva2VuVHlwZTo6VG9rZW5PYmplY3RDbG9zZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudCI6OTp7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM1OiJcSlBPUEhQXFRva2VuVHlwZTo6VG9rZW5PYmplY3RDbG9zZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE2OiJUb2tlbk9iamVjdENsb3NlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZG9jQmxvY2siO047czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAdmFsdWUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjE6IjMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmaW5hbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AG1ldGFkYXRhIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABhdHRyaWJ1dGVzIjthOjA6e319czozMDoiXEpQT1BIUFxUb2tlblR5cGU6OlRva2VuU3RyaW5nIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50Ijo5OntzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzA6IlxKUE9QSFBcVG9rZW5UeXBlOjpUb2tlblN0cmluZyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJUb2tlblN0cmluZyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGRvY0Jsb2NrIjtOO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AHZhbHVlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24iOjI6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AZXhwcmVzc2lvbiI7czoxOiI0IjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAHBhcnRzIjthOjA6e319czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZmluYWwiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABtZXRhZGF0YSI7YTowOnt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAYXR0cmlidXRlcyI7YTowOnt9fXM6MzA6IlxKUE9QSFBcVG9rZW5UeXBlOjpUb2tlbk51bWJlciI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudCI6OTp7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjMwOiJcSlBPUEhQXFRva2VuVHlwZTo6VG9rZW5OdW1iZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMToiVG9rZW5OdW1iZXIiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2YWx1ZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uIjoyOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAGV4cHJlc3Npb24iO3M6MToiNSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBwYXJ0cyI7YTowOnt9fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGZpbmFsIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbWV0YWRhdGEiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjI5OiJcSlBPUEhQXFRva2VuVHlwZTo6VG9rZW5TcGxpdCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudCI6OTp7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI5OiJcSlBPUEhQXFRva2VuVHlwZTo6VG9rZW5TcGxpdCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEwOiJUb2tlblNwbGl0Ijt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZG9jQmxvY2siO047czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAdmFsdWUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjE6IjYiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmaW5hbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AG1ldGFkYXRhIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABhdHRyaWJ1dGVzIjthOjA6e319czoyODoiXEpQT1BIUFxUb2tlblR5cGU6OlRva2VuUGFpciI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudCI6OTp7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0MjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI4OiJcSlBPUEhQXFRva2VuVHlwZTo6VG9rZW5QYWlyIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiVG9rZW5QYWlyIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZG9jQmxvY2siO047czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAdmFsdWUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjE6IjciO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmaW5hbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AG1ldGFkYXRhIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABhdHRyaWJ1dGVzIjthOjA6e319czoyODoiXEpQT1BIUFxUb2tlblR5cGU6OlRva2VuTnVsbCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudCI6OTp7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI4OiJcSlBPUEhQXFRva2VuVHlwZTo6VG9rZW5OdWxsIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiVG9rZW5OdWxsIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZG9jQmxvY2siO047czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAdmFsdWUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjE6IjgiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmaW5hbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AG1ldGFkYXRhIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABhdHRyaWJ1dGVzIjthOjA6e319czoyODoiXEpQT1BIUFxUb2tlblR5cGU6OlRva2VuQm9vbCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudCI6OTp7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI4OiJcSlBPUEhQXFRva2VuVHlwZTo6VG9rZW5Cb29sIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToiVG9rZW5Cb29sIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAZG9jQmxvY2siO047czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ29uc3RhbnQAdmFsdWUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjE6IjkiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABmaW5hbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENvbnN0YW50AG1ldGFkYXRhIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDb25zdGFudABhdHRyaWJ1dGVzIjthOjA6e319fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBwcm9wZXJ0aWVzIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AbWV0aG9kcyI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHVzZWRUcmFpdHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoxNzoiXEpQT1BIUFxUb2tlblR5cGUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo5OiJUb2tlblR5cGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZG9jQmxvY2siO047czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHBhcmVudCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AYWJzdHJhY3QiO2I6MTtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZmluYWwiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AcmVhZE9ubHkiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBhdHRyaWJ1dGVzIjthOjA6e319czoxMjoiXEpQT1BIUFxKc29uIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXyI6MTU6e3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBpbXBsZW1lbnRzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AY29uc3RhbnRzIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AcHJvcGVydGllcyI7YTo0OntzOjIwOiJcSlBPUEhQXEpzb246OiR0b2tlbiI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTQ6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjA6IlxKUE9QSFBcSnNvbjo6JHRva2VuIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NToidG9rZW4iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mzg6IlB1YmxpYyB2YXJpYWJsZSBmb3Igd2hvbGUgb2YgdGhlIGNsYXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjY6IkpQT1BIUCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjQ6Im51bGwiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAaG9va3MiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpcnR1YWwiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAYXR0cmlidXRlcyI7YTowOnt9fXM6MjE6IlxKUE9QSFBcSnNvbjo6JGxlbmd0aCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTQ6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjE6IlxKUE9QSFBcSnNvbjo6JGxlbmd0aCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjY6Imxlbmd0aCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtOO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjE6IjAiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAaG9va3MiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpcnR1YWwiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAYXR0cmlidXRlcyI7YTowOnt9fXM6MjA6IlxKUE9QSFBcSnNvbjo6JGlucHV0IjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxNDp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NjE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMDoiXEpQT1BIUFxKc29uOjokaW5wdXQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo1OiJpbnB1dCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtOO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjI6IiIiIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAHBhcnRzIjthOjA6e319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGhvb2tzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXJ0dWFsIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjIwOiJcSlBPUEhQXEpzb246OiRpbmRleCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTQ6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NjM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjA6IlxKUE9QSFBcSnNvbjo6JGluZGV4IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NToiaW5kZXgiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24iOjI6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AZXhwcmVzc2lvbiI7czoxOiIwIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAHBhcnRzIjthOjA6e319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGhvb2tzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXJ0dWFsIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGF0dHJpYnV0ZXMiO2E6MDp7fX19czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGhvZHMiO2E6MTA6e3M6MjU6IlxKUE9QSFBcSnNvbjo6dHlwZVRva2VuKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToidG9rZW4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjcwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE1MDE7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTE0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjI3NDc7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjU6IlxKUE9QSFBcSnNvbjo6dHlwZVRva2VuKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo5OiJ0eXBlVG9rZW4iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czo4OiJmdW5jdGlvbiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NTE6InR5cGVUb2tlbigkdG9rZW4pCmFyZ3VtZW50OiAkdG9rZW4KcmV0dXJuIDogQHN0cmluZyI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MzI1O3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjI5OiJcSlBPUEhQXEpzb246OmlzQXNzb2NpYXRpdmUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6ImFycmF5IjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMjU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MjkyOTt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMzA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MzEwNjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyOToiXEpQT1BIUFxKc29uOjppc0Fzc29jaWF0aXZlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMzoiaXNBc3NvY2lhdGl2ZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjA6IiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjg6ImZ1bmN0aW9uIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo1OToiaXNBc3NvY2lhdGl2ZSgkYXJyYXkpCmFyZ3VtZW50OiBhcnJheSAkYXJyYXkKcmV0dXJuIDogQGJvb2wiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjMyNTtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czoyMjoiXEpQT1BIUFxKc29uOjplbmNvZGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJhcnJheSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTU4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjM4Mjk7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjA5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjU3MjQ7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjI6IlxKUE9QSFBcSnNvbjo6ZW5jb2RlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo2OiJlbmNvZGUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czo4OiJmdW5jdGlvbiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NTQ6ImVuY29kZSgkYXJyYXkpCmFyZ3VtZW50OiBhcnJheSAkYXJyYXkKcmV0dXJuIDogQHN0cmluZyI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MzI1O3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjIzOiJcSlBPUEhQXEpzb246Om5leHRzSWYoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMToiY2hhcmFjdGVySWYiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo2MDc2O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI0MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo2NzQ5O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjIzOiJcSlBPUEhQXEpzb246Om5leHRzSWYoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6Im5leHRzSWYiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czo4OiJmdW5jdGlvbiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NjQ6Im5leHRzSWYoJGNoYXJhY3RlcklmKQphcmd1bWVudDogY2hhciAkY2hhcmFjdGVySWYKcmV0dXJuIDogQHZvaWQiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjMyNTtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czoyMjoiXEpQT1BIUFxKc29uOjpuZXh0SWYoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMToiY2hhcmFjdGVySWYiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI0ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo2ODY3O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI3MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo3NTk3O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjIyOiJcSlBPUEhQXEpzb246Om5leHRJZigpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NjoibmV4dElmIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MDoiIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xHZW5lcmljIjoyOntzOjc6IgAqAG5hbWUiO3M6ODoiZnVuY3Rpb24iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjYzOiJuZXh0SWYoJGNoYXJhY3RlcklmKQphcmd1bWVudDogY2hhciAkY2hhcmFjdGVySWYKcmV0dXJuIDogQHZvaWQiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjMyNTtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czoyMDoiXEpQT1BIUFxKc29uOjpza2lwKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToidG9rZW4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czozOiJ0b2siO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI3NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo3NzI2O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI4NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo3OTY5O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjIwOiJcSlBPUEhQXEpzb246OnNraXAoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjQ6InNraXAiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czo4OiJmdW5jdGlvbiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NzQ6Im5leHRzSWYoJHRva2VuLHRvaykKYXJndW1lbnQ6IHRva2VuICR0b2tlbiwgdG9rZW50eXBlICR0b2sKcmV0dXJuIDogQHRva2VuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozMjU7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6MjE6IlxKUE9QSFBcSnNvbjo6c2tpcHMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJ0b2tlbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjM6InRvayI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjkzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjgwOTY7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzAyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjgzNDM7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjE6IlxKUE9QSFBcSnNvbjo6c2tpcHMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjU6InNraXBzIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MDoiIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xHZW5lcmljIjoyOntzOjc6IgAqAG5hbWUiO3M6ODoiZnVuY3Rpb24iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjcyOiJza2lwcygkdG9rZW4sdG9rKQphcmd1bWVudDogdG9rZW4gJHRva2VuLCB0b2tlbnR5cGUgJHRvawpyZXR1cm4gOiBAdG9rZW4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjMyNTtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czoyNToiXEpQT1BIUFxKc29uOjpuZXh0VG9rZW4oKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjMwOTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo4NDQwO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjY2MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToyMzQ2Nzt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyNToiXEpQT1BIUFxKc29uOjpuZXh0VG9rZW4oKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjk6Im5leHRUb2tlbiI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjA6IiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjg6ImZ1bmN0aW9uIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo0MjoibmV4dFRva2VuKCkKYXJndW1lbnQ6IHZvaWQKcmV0dXJuIDogQHRva2VuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozMjU7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6MjM6IlxKUE9QSFBcSnNvbjo6aXNWYWx1ZSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTM6e3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6InRva2VuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2Njg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MjM2MDQ7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzI1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjI1NTYyO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjIzOiJcSlBPUEhQXEpzb246OmlzVmFsdWUoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6ImlzVmFsdWUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czo4OiJmdW5jdGlvbiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6ODI6ImlzVmFsdWUodG9rZW4pCmFyZ3VtZW50OiB0b2tlbiAkdG9rZW4KcmV0dXJuIDogYXJyYXlbYm9vbCAkc3RhdHVzLCBzdHJpbmcgJHJlc3VsdF0iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjMyNTtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czoyMjoiXEpQT1BIUFxKc29uOjpkZWNvZGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJpbnB1dCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6ImluaXQiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbiI6Mjp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBleHByZXNzaW9uIjtzOjQ0OiJ7eyBQSFBET0NiMzI2YjUwNjJiMmYwZTY5MDQ2ODEwNzE3NTM0Y2IwOSB9fSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRXhwcmVzc2lvbgBwYXJ0cyI7YToxOntzOjQ0OiJ7eyBQSFBET0NiMzI2YjUwNjJiMmYwZTY5MDQ2ODEwNzE3NTM0Y2IwOSB9fSI7Tzo0MjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBzZXVkb1R5cGVzXFRydWVfIjowOnt9fX1zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzMyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjI1Njk1O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjg2NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTozMTI3OTt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMjoiXEpQT1BIUFxKc29uOjpkZWNvZGUoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjY6ImRlY29kZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjA6IiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjg6ImZ1bmN0aW9uIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo3ODoiZGVjb2RlKGlucHV0LGluaXQ9dHJ1ZSkKYXJndW1lbnQ6IHN0cmluZyAkaW5wdXQsIGJvb2wgaW5pdApyZXR1cm4gOiBhcnJheVsuLi5dIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozMjU7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fX1zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AdXNlZFRyYWl0cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0OTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjg2NTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoxMjoiXEpQT1BIUFxKc29uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoiSnNvbiI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBkb2NCbG9jayI7TjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AcGFyZW50IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBmaW5hbCI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwByZWFkT25seSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGF0dHJpYnV0ZXMiO2E6MDp7fX19czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbnRlcmZhY2VzIjthOjA6e31zOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHRyYWl0cyI7YTowOnt9czo0MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBlbnVtcyI7YTowOnt9czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBoYXNoIjtzOjMyOiIyOTgzZGNjYTQ3Y2JjZWUyMzU3YTk1NTY2YWNkMzQ0MyI7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBwYXRoIjtzOjU5OiJ2ZW5kb3IvcGFyc2ljYS1waHAvcGFyc2ljYS9iZW5jaG1hcmtzL0pQT1BIUC9Kc29uUGFyc2VyLnBocCI7czo0MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBzb3VyY2UiO3M6MzEyODM6Ijw/cGhwCi8qKgogKgogKiBATmFtZSA6IEpzb25QYXJzZXIKICogQFZlcnNpb24gOiAyLjIuMQogKiBAUHJvZ3JhbW1lciA6IE1heAogKiBARGF0ZSA6IDIwMTgtMDYtMjYsIDIwMTgtMDYtMjcsIDIwMTktMDMtMjMsIDIwMTktMDMtMjQsIDIwMTktMDMtMjYsIDIwMTktMDMtMjcsIDIwMTktMDQtMDQKICogQFJlbGVhc2VkIHVuZGVyIDogaHR0cHM6Ly9naXRodWIuY29tL0Jhc2VNYXgvSnNvblBhcnNlci9ibG9iL21hc3Rlci9MSUNFTlNFCiAqIEBSZXBvc2l0b3J5IDogaHR0cHM6Ly9naXRodWIuY29tL0Jhc2VNYXgvSnNvblBhcnNlcgogKgogKiovCgpuYW1lc3BhY2UgSlBPUEhQOwoKYWJzdHJhY3QgY2xhc3MgSnNvblR5cGUKewogICAgLy8gW10KICAgIGNvbnN0IEpzb25BcnJheSA9IDA7CiAgICAvLyB7fQogICAgY29uc3QgSnNvbk9iamVjdCA9IDE7Cn0KCmFic3RyYWN0IGNsYXNzIFRva2VuVHlwZQp7CiAgICAvLyBlbmQgb2YgZmlsZSwgZW5kIG9mIGNvbW1hbmQsIGVuZCBvZiBpbnB1dCBzdHJpbmcKICAgIGNvbnN0IFRva2VuRU9GID0gLTE7CiAgICAvLyB7CiAgICBjb25zdCBUb2tlbkFycmF5T3BlbiA9IDA7CiAgICAvLyB9CiAgICBjb25zdCBUb2tlbkFycmF5Q2xvc2UgPSAxOwogICAgLy8gWwogICAgY29uc3QgVG9rZW5PYmplY3RPcGVuID0gMjsKICAgIC8vIF0KICAgIGNvbnN0IFRva2VuT2JqZWN0Q2xvc2UgPSAzOwogICAgLy8gIi4uLiIsICcuLi4nCiAgICBjb25zdCBUb2tlblN0cmluZyA9IDQ7CiAgICAvLyA8aW50PiwgPGZsb2F0PiwgLTxpbnQ+LCAtPGZsb2F0PiwgLi4uCiAgICBjb25zdCBUb2tlbk51bWJlciA9IDU7CiAgICAvLyAsCiAgICBjb25zdCBUb2tlblNwbGl0ID0gNjsKICAgIC8vIDoKICAgIGNvbnN0IFRva2VuUGFpciA9IDc7CiAgICAvLyBudWxsCiAgICBjb25zdCBUb2tlbk51bGwgPSA4OwogICAgLy8gdHJ1ZSwgZmFsc2UKICAgIGNvbnN0IFRva2VuQm9vbCA9IDk7Cn0KCmNsYXNzIEpzb24KewogICAgLyoqCiAgICAgKgogICAgICogUHVibGljIHZhcmlhYmxlIGZvciB3aG9sZSBvZiB0aGUgY2xhc3MKICAgICAqCiAgICAgKi8KICAgIC8vIHRva2VuIHR5cGUgb2YgY3VycmVudCBzdGF0ZSBpbiBkZWNvZGUoKQogICAgcHVibGljICR0b2tlbiA9IG51bGw7CiAgICAvLyBsZW5ndGggYW5kIGxhc3QgaW5kZXggb2YgdGhlIGlucHV0LCBpdCB1cGRhdGUgdXNpbmcgZGVjb2RlKCkKICAgIHB1YmxpYyBpbnQgJGxlbmd0aCA9IDA7CiAgICAvLyBpbnB1dCBzdHJpbmcsIGl0IHVwZGF0ZXMgdXNpbmcgZGVjb2RlKCkKICAgIHB1YmxpYyBzdHJpbmcgJGlucHV0ID0gIiI7CiAgICAvLyBjdXJyZW50IHN0YXRlIGFuZCBpbmRleCBvZiBwb2ludGVyIGF0IHRoZSBpbnB1dCBzdHJpbmcKICAgIHB1YmxpYyBpbnQgJGluZGV4ID0gMDsKCiAgICAvKioKICAgICAqIEBmdW5jdGlvbiB0eXBlVG9rZW4oJHRva2VuKQogICAgICogYXJndW1lbnQ6ICR0b2tlbgogICAgICogcmV0dXJuIDogQHN0cmluZwogICAgICovCiAgICBmdW5jdGlvbiB0eXBlVG9rZW4oJHRva2VuKQogICAgewogICAgICAgIHN3aXRjaCAoJHRva2VuWzBdKSB7CiAgICAgICAgICAgIC8vIEVPRgogICAgICAgICAgICBjYXNlIFRva2VuVHlwZTo6VG9rZW5FT0Y6CiAgICAgICAgICAgICAgICByZXR1cm4gIkVPRiI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgLy8gWwogICAgICAgICAgICBjYXNlIFRva2VuVHlwZTo6VG9rZW5BcnJheU9wZW46CiAgICAgICAgICAgICAgICByZXR1cm4gIkFycmF5T3BlbiI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgLy8gXQogICAgICAgICAgICBjYXNlIFRva2VuVHlwZTo6VG9rZW5BcnJheUNsb3NlOgogICAgICAgICAgICAgICAgcmV0dXJuICJBcnJheUNsb3NlIjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAvLyB7CiAgICAgICAgICAgIGNhc2UgVG9rZW5UeXBlOjpUb2tlbk9iamVjdE9wZW46CiAgICAgICAgICAgICAgICByZXR1cm4gIk9iamVjdE9wZW4iOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIC8vIH0KICAgICAgICAgICAgY2FzZSBUb2tlblR5cGU6OlRva2VuT2JqZWN0Q2xvc2U6CiAgICAgICAgICAgICAgICByZXR1cm4gIk9iamVjdENsb3NlIjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAvLyAiLi4uIiwgJy4uLicKICAgICAgICAgICAgY2FzZSBUb2tlblR5cGU6OlRva2VuU3RyaW5nOgogICAgICAgICAgICAgICAgcmV0dXJuICJTdHJpbmciOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIC8vIG51bWJlcgogICAgICAgICAgICBjYXNlIFRva2VuVHlwZTo6VG9rZW5OdW1iZXI6CiAgICAgICAgICAgICAgICByZXR1cm4gIk51bWJlciI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgLy8gLAogICAgICAgICAgICBjYXNlIFRva2VuVHlwZTo6VG9rZW5TcGxpdDoKICAgICAgICAgICAgICAgIHJldHVybiAiU3BsaXQiOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIC8vIDoKICAgICAgICAgICAgY2FzZSBUb2tlblR5cGU6OlRva2VuUGFpcjoKICAgICAgICAgICAgICAgIHJldHVybiAiUGFpciI7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgLy8gdW5rbm93bSwgb3RoZXIhCiAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICByZXR1cm4gIk5vbmUiOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgfQoKICAgIC8qKgogICAgICogQGZ1bmN0aW9uIGlzQXNzb2NpYXRpdmUoJGFycmF5KQogICAgICogYXJndW1lbnQ6IGFycmF5ICRhcnJheQogICAgICogcmV0dXJuIDogQGJvb2wKICAgICAqLwogICAgLyoKICAgICAqIEFycmF5cyBhcmUgOgogICAgICogYXNzb2NpYXRpdmUgb3Igc2VxdWVudGlhbAogICAgICovCiAgICBmdW5jdGlvbiBpc0Fzc29jaWF0aXZlKGFycmF5ICRhcnJheSkKICAgIHsKICAgICAgICAvLyBpZihhcnJheSgpID09PSAkYXJyYXkpCiAgICAgICAgLy8gICAgIHJldHVybiBmYWxzZTsKICAgICAgICByZXR1cm4gYXJyYXlfa2V5cygkYXJyYXkpICE9PSByYW5nZSgwLCBjb3VudCgkYXJyYXkpIC0gMSk7CiAgICB9CgogICAgLy8gZnVuY3Rpb24gZW5jb2RlVmFsdWUoJHZhbHVlKSB7CiAgICAvLyAgICAgaWYoJHZhbHVlID09PSB0cnVlIHx8ICR2YWx1ZSA9PT0gZmFsc2UpIHsvL2Jvb2wKICAgIC8vICAgICAgICAgcmV0dXJuICR2YWx1ZTsKICAgIC8vICAgICB9CiAgICAvLyAgICAgZWxzZSBpZigkdmFsdWUgPT09IG51bGwpIHsvL251bGwKICAgIC8vICAgICAgICAgcmV0dXJuICR2YWx1ZTsKICAgIC8vICAgICB9CiAgICAvLyAgICAgZWxzZSBpZihpc19udW1lcmljKCR2YWx1ZSkgPT09IHRydWUpIHsvL251bWJlcgogICAgLy8gICAgICAgICByZXR1cm4gJHZhbHVlOwogICAgLy8gICAgIH0KICAgIC8vICAgICBlbHNlIGlmKGlzX3N0cmluZygkdmFsdWUpID09PSB0cnVlKSB7Ly9zdHJpbmcKICAgIC8vICAgICAgICAgcmV0dXJuICJcIiIuJHZhbHVlLiJcIiI7CiAgICAvLyAgICAgfQogICAgLy8gICAgIGVsc2UgaWYoaXNfYXJyYXkoJHZhbHVlKSA9PT0gdHJ1ZSkgey8vYXJyYXkKICAgIC8vICAgICAgICAgcmV0dXJuIGVuY29kZSgkdmFsdWUpOwogICAgLy8gICAgIH0KICAgIC8vICAgICBlbHNlIHsKICAgIC8vICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgLy8gICAgIH0KICAgIC8vIH0KCiAgICAvKioKICAgICAqIEBmdW5jdGlvbiBlbmNvZGUoJGFycmF5KQogICAgICogYXJndW1lbnQ6IGFycmF5ICRhcnJheQogICAgICogcmV0dXJuIDogQHN0cmluZwogICAgICovCiAgICBmdW5jdGlvbiBlbmNvZGUoJGFycmF5KQogICAgewogICAgICAgICRyZXNwb25zZSA9ICIiOwogICAgICAgIGlmIChbXSAhPT0gJGFycmF5KSB7CiAgICAgICAgICAgICRhcnJheV90eXBlID0gJHRoaXMtPmlzQXNzb2NpYXRpdmUoJGFycmF5KSA/ICJhc3NvY2lhdGl2ZSIgOiAic2VxdWVudGlhbCI7CiAgICAgICAgICAgIGlmICgkYXJyYXlfdHlwZSA9PSAiYXNzb2NpYXRpdmUiKSB7Ly9vYmplY3QKICAgICAgICAgICAgICAgICRyZXNwb25zZSAuPSAieyI7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAkcmVzcG9uc2UgLj0gIlsiOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRjb3VudCA9IGNvdW50KCRhcnJheSk7CiAgICAgICAgICAgICRpbmRleCA9IDA7CiAgICAgICAgICAgIGZvcmVhY2ggKCRhcnJheSBhcyAka2V5ID0+ICR2YWx1ZSkgewogICAgICAgICAgICAgICAgaWYgKCRhcnJheV90eXBlID09ICJhc3NvY2lhdGl2ZSIpIHsvL29iamVjdAogICAgICAgICAgICAgICAgICAgICRyZXNwb25zZSAuPSAiXCIiOwogICAgICAgICAgICAgICAgICAgICRyZXNwb25zZSAuPSAka2V5OwogICAgICAgICAgICAgICAgICAgICRyZXNwb25zZSAuPSAiXCIiOwogICAgICAgICAgICAgICAgICAgICRyZXNwb25zZSAuPSAiOiI7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoJHZhbHVlID09PSB0cnVlIHx8ICR2YWx1ZSA9PT0gZmFsc2UpIHsvL2Jvb2wKICAgICAgICAgICAgICAgICAgICAkcmVzcG9uc2UgLj0gJHZhbHVlOwogICAgICAgICAgICAgICAgfSBlbHNlaWYgKCR2YWx1ZSA9PT0gbnVsbCkgey8vbnVsbAogICAgICAgICAgICAgICAgICAgICRyZXNwb25zZSAuPSAkdmFsdWU7CiAgICAgICAgICAgICAgICB9IGVsc2VpZiAoaXNfbnVtZXJpYygkdmFsdWUpID09PSB0cnVlKSB7Ly9udW1iZXIKICAgICAgICAgICAgICAgICAgICAkcmVzcG9uc2UgLj0gJHZhbHVlOwogICAgICAgICAgICAgICAgfSBlbHNlaWYgKGlzX3N0cmluZygkdmFsdWUpID09PSB0cnVlKSB7Ly9zdHJpbmcKICAgICAgICAgICAgICAgICAgICAkcmVzcG9uc2UgLj0gIlwiIiAuICR2YWx1ZSAuICJcIiI7CiAgICAgICAgICAgICAgICB9IGVsc2VpZiAoaXNfYXJyYXkoJHZhbHVlKSA9PT0gdHJ1ZSkgey8vYXJyYXkKICAgICAgICAgICAgICAgICAgICAkcmVzcG9uc2UgLj0gJHRoaXMtPmVuY29kZSgkdmFsdWUpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBwcmludCAiRXJyb3I6IFVua25vd20gdHlwZSFcbiI7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAvLyBpZihpc19hcnJheSgkdmFsdWUpKSB7CiAgICAgICAgICAgICAgICAvLyAgICAgJHJlc3BvbnNlLj10aGlzLT5lbmNvZGUoJHZhbHVlKTsKICAgICAgICAgICAgICAgIC8vIH0KICAgICAgICAgICAgICAgIC8vIGVsc2UgewogICAgICAgICAgICAgICAgLy8gICAgICRyZXNwb25zZS49ZW5jb2RlVmFsdWUoJHZhbHVlKTsKICAgICAgICAgICAgICAgIC8vIH0KICAgICAgICAgICAgICAgIGlmICgrKyRpbmRleCAhPT0gJGNvdW50KSB7CiAgICAgICAgICAgICAgICAgICAgJHJlc3BvbnNlIC49ICIsIjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoJGFycmF5X3R5cGUgPT0gImFzc29jaWF0aXZlIikgey8vb2JqZWN0CiAgICAgICAgICAgICAgICAkcmVzcG9uc2UgLj0gIn0iOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgJHJlc3BvbnNlIC49ICJdIjsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAvLyAkcmVzcG9uc2UuPSJcbiI7CiAgICAgICAgcmV0dXJuICRyZXNwb25zZTsKICAgIH0KCiAgICAvLyBmdW5jdGlvbiBuZXh0c0lmV2l0aFNraXBzKCRjaGFyYWN0ZXJJZiwkdG9rZW4sJHRvaykKICAgIC8vIGZ1bmN0aW9uIG5leHRzSWZXaXRoU2tpcCgkY2hhcmFjdGVySWYsJHRva2VuLCR0b2spCiAgICAvLyBmdW5jdGlvbiBuZXh0SWZXaXRoU2tpcHMoJGNoYXJhY3RlcklmLCR0b2tlbiwkdG9rKQogICAgLy8gZnVuY3Rpb24gbmV4dElmV2l0aFNraXAoJGNoYXJhY3RlcklmLCR0b2tlbiwkdG9rKQoKICAgIC8qKgogICAgICogQGZ1bmN0aW9uIG5leHRzSWYoJGNoYXJhY3RlcklmKQogICAgICogYXJndW1lbnQ6IGNoYXIgJGNoYXJhY3RlcklmCiAgICAgKiByZXR1cm4gOiBAdm9pZAogICAgICovCiAgICBmdW5jdGlvbiBuZXh0c0lmKCRjaGFyYWN0ZXJJZikKICAgIHsKICAgICAgICAkY2hhcmFjdGVyID0gJHRoaXMtPmlucHV0WyR0aGlzLT5pbmRleF07CiAgICAgICAgaWYgKGlzX2FycmF5KCRjaGFyYWN0ZXJJZikpIHsKICAgICAgICAgICAgd2hpbGUgKGluX2FycmF5KCRjaGFyYWN0ZXIsICRjaGFyYWN0ZXJJZikpIHsKICAgICAgICAgICAgICAgIGlmICgkdGhpcy0+aW5kZXggKyAxID09PSAkdGhpcy0+bGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAkdGhpcy0+aW5kZXgrKzsKICAgICAgICAgICAgICAgICRjaGFyYWN0ZXIgPSAkdGhpcy0+aW5wdXRbJHRoaXMtPmluZGV4XTsKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHdoaWxlICgkY2hhcmFjdGVyID09ICRjaGFyYWN0ZXJJZikgewogICAgICAgICAgICAgICAgaWYgKCR0aGlzLT5pbmRleCArIDEgPT09ICR0aGlzLT5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9ICR0aGlzLT5pbnB1dFskdGhpcy0+aW5kZXhdOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIC8qKgogICAgICogQGZ1bmN0aW9uIG5leHRJZigkY2hhcmFjdGVySWYpCiAgICAgKiBhcmd1bWVudDogY2hhciAkY2hhcmFjdGVySWYKICAgICAqIHJldHVybiA6IEB2b2lkCiAgICAgKi8KICAgIGZ1bmN0aW9uIG5leHRJZigkY2hhcmFjdGVySWYpCiAgICB7CiAgICAgICAgJGNoYXJhY3RlciA9ICR0aGlzLT5pbnB1dFskdGhpcy0+aW5kZXhdOwogICAgICAgIGlmIChpc19hcnJheSgkY2hhcmFjdGVySWYpKSB7CiAgICAgICAgICAgIGlmIChpbl9hcnJheSgkY2hhcmFjdGVyLCAkY2hhcmFjdGVySWYpKSB7CiAgICAgICAgICAgICAgICBpZiAoJHRoaXMtPmluZGV4ICsgMSA9PT0gJHRoaXMtPmxlbmd0aCkgewogICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICAgICAvLyBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgLy8gJGNoYXJhY3Rlcj0kdGhpcy0+aW5wdXRbJHRoaXMtPmluZGV4XTsKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlmICgkY2hhcmFjdGVyID09ICRjaGFyYWN0ZXJJZikgewogICAgICAgICAgICAgICAgaWYgKCR0aGlzLT5pbmRleCArIDEgPT09ICR0aGlzLT5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgICAgLy8gYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAkdGhpcy0+aW5kZXgrKzsKICAgICAgICAgICAgICAgIC8vICRjaGFyYWN0ZXI9JHRoaXMtPmlucHV0WyR0aGlzLT5pbmRleF07CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgLyoqCiAgICAgKiBAZnVuY3Rpb24gbmV4dHNJZigkdG9rZW4sdG9rKQogICAgICogYXJndW1lbnQ6IHRva2VuICR0b2tlbiwgdG9rZW50eXBlICR0b2sKICAgICAqIHJldHVybiA6IEB0b2tlbgogICAgICovCiAgICBmdW5jdGlvbiBza2lwKCR0b2tlbiwgJHRvaykKICAgIHsKICAgICAgICAvLyBwcmludCAiLS0tc3RhcnRcbiI7CiAgICAgICAgaWYgKCR0b2tlblswXSA9PT0gJHRvaykgewogICAgICAgICAgICAkdG9rZW4gPSAkdGhpcy0+bmV4dFRva2VuKCk7CiAgICAgICAgICAgIC8vIHByaW50ICItLS1uZXh0XG4iOwogICAgICAgIH0KICAgICAgICAvLyBwcmludCAiLS0tZmluaXNoXG4iOwogICAgICAgIHJldHVybiAkdG9rZW47CiAgICB9CgogICAgLyoqCiAgICAgKiBAZnVuY3Rpb24gc2tpcHMoJHRva2VuLHRvaykKICAgICAqIGFyZ3VtZW50OiB0b2tlbiAkdG9rZW4sIHRva2VudHlwZSAkdG9rCiAgICAgKiByZXR1cm4gOiBAdG9rZW4KICAgICAqLwogICAgZnVuY3Rpb24gc2tpcHMoJHRva2VuLCAkdG9rKQogICAgewogICAgICAgIC8vIHByaW50ICItLS1zdGFydFxuIjsKICAgICAgICB3aGlsZSAoJHRva2VuWzBdID09PSAkdG9rKSB7CiAgICAgICAgICAgICR0b2tlbiA9ICR0aGlzLT5uZXh0VG9rZW4oKTsKICAgICAgICAgICAgLy8gcHJpbnQgIi0tLW5leHRcbiI7CiAgICAgICAgfQogICAgICAgIC8vIHByaW50ICItLS1maW5pc2hcbiI7CiAgICAgICAgcmV0dXJuICR0b2tlbjsKICAgIH0KCiAgICAvKioKICAgICAqIEBmdW5jdGlvbiBuZXh0VG9rZW4oKQogICAgICogYXJndW1lbnQ6IHZvaWQKICAgICAqIHJldHVybiA6IEB0b2tlbgogICAgICovCiAgICBmdW5jdGlvbiBuZXh0VG9rZW4oKQogICAgewogICAgICAgIGlmICgkdGhpcy0+aW5kZXggKyAxID4gJHRoaXMtPmxlbmd0aCkgewogICAgICAgICAgICByZXR1cm4gW1Rva2VuVHlwZTo6VG9rZW5FT0YsIG51bGxdOwogICAgICAgIH0KICAgICAgICAkY2hhcmFjdGVyID0gJHRoaXMtPmlucHV0WyR0aGlzLT5pbmRleF07CiAgICAgICAgd2hpbGUgKCRjaGFyYWN0ZXIgPT0gJyAnIHx8ICRjaGFyYWN0ZXIgPT0gJwknIHx8ICRjaGFyYWN0ZXIgPT0gIlxuIikgewogICAgICAgICAgICBpZiAoJHRoaXMtPmluZGV4ICsgMSA9PT0gJHRoaXMtPmxlbmd0aCkgewogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICRjaGFyYWN0ZXIgPSAkdGhpcy0+aW5wdXRbJHRoaXMtPmluZGV4XTsKICAgICAgICB9CiAgICAgICAgaWYgKCRjaGFyYWN0ZXIgPT0gJ3snKSB7CiAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICByZXR1cm4gW1Rva2VuVHlwZTo6VG9rZW5PYmplY3RPcGVuLCBudWxsXTsKICAgICAgICB9IGVsc2VpZiAoJGNoYXJhY3RlciA9PSAnfScpIHsKICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgIHJldHVybiBbVG9rZW5UeXBlOjpUb2tlbk9iamVjdENsb3NlLCBudWxsXTsKICAgICAgICB9IGVsc2VpZiAoJGNoYXJhY3RlciA9PSAnWycpIHsKICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgIHJldHVybiBbVG9rZW5UeXBlOjpUb2tlbkFycmF5T3BlbiwgbnVsbF07CiAgICAgICAgfSBlbHNlaWYgKCRjaGFyYWN0ZXIgPT0gJ10nKSB7CiAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICByZXR1cm4gW1Rva2VuVHlwZTo6VG9rZW5BcnJheUNsb3NlLCBudWxsXTsKICAgICAgICB9IGVsc2VpZiAoJGNoYXJhY3RlciA9PSAnLCcpIHsKICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgIHJldHVybiBbVG9rZW5UeXBlOjpUb2tlblNwbGl0LCBudWxsXTsKICAgICAgICB9IGVsc2VpZiAoJGNoYXJhY3RlciA9PSAnOicpIHsKICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgIHJldHVybiBbVG9rZW5UeXBlOjpUb2tlblBhaXIsIG51bGxdOwogICAgICAgIH0gLy8gbiwgTgogICAgICAgIGVsc2VpZiAoJGNoYXJhY3RlciA9PT0gJ24nIHx8ICRjaGFyYWN0ZXIgPT09ICdOJykgewogICAgICAgICAgICAkaSA9IDA7CiAgICAgICAgICAgICRpKys7CiAgICAgICAgICAgICRjaGFyYWN0ZXIgPSAkdGhpcy0+aW5wdXRbJHRoaXMtPmluZGV4ICsgJGldOwogICAgICAgICAgICAvLyB1LCBVCiAgICAgICAgICAgIGlmICgkY2hhcmFjdGVyID09PSAndScgfHwgJGNoYXJhY3RlciA9PT0gJ1UnKSB7CiAgICAgICAgICAgICAgICAkaSsrOwogICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9ICR0aGlzLT5pbnB1dFskdGhpcy0+aW5kZXggKyAkaV07CiAgICAgICAgICAgICAgICAvLyBsLCBMCiAgICAgICAgICAgICAgICBpZiAoJGNoYXJhY3RlciA9PT0gJ2wnIHx8ICRjaGFyYWN0ZXIgPT09ICdMJykgewogICAgICAgICAgICAgICAgICAgICRpKys7CiAgICAgICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9ICR0aGlzLT5pbnB1dFskdGhpcy0+aW5kZXggKyAkaV07CiAgICAgICAgICAgICAgICAgICAgLy8gbCwgTAogICAgICAgICAgICAgICAgICAgIGlmICgkY2hhcmFjdGVyID09PSAnbCcgfHwgJGNoYXJhY3RlciA9PT0gJ0wnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+aW5kZXgrKzsKICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwoKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtUb2tlblR5cGU6OlRva2VuTnVsbCwgbnVsbF07CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSAvLyB0LCBUCiAgICAgICAgZWxzZWlmICgkY2hhcmFjdGVyID09PSAndCcgfHwgJGNoYXJhY3RlciA9PT0gJ1QnKSB7CiAgICAgICAgICAgICRpID0gMDsKICAgICAgICAgICAgJGkrKzsKICAgICAgICAgICAgJGNoYXJhY3RlciA9ICR0aGlzLT5pbnB1dFskdGhpcy0+aW5kZXggKyAkaV07CiAgICAgICAgICAgIC8vIHIsIFIKICAgICAgICAgICAgaWYgKCRjaGFyYWN0ZXIgPT09ICdyJyB8fCAkY2hhcmFjdGVyID09PSAnUicpIHsKICAgICAgICAgICAgICAgICRpKys7CiAgICAgICAgICAgICAgICAkY2hhcmFjdGVyID0gJHRoaXMtPmlucHV0WyR0aGlzLT5pbmRleCArICRpXTsKICAgICAgICAgICAgICAgIC8vIHUsIFUKICAgICAgICAgICAgICAgIGlmICgkY2hhcmFjdGVyID09PSAndScgfHwgJGNoYXJhY3RlciA9PT0gJ1UnKSB7CiAgICAgICAgICAgICAgICAgICAgJGkrKzsKICAgICAgICAgICAgICAgICAgICAkY2hhcmFjdGVyID0gJHRoaXMtPmlucHV0WyR0aGlzLT5pbmRleCArICRpXTsKICAgICAgICAgICAgICAgICAgICAvLyBlLCBFCiAgICAgICAgICAgICAgICAgICAgaWYgKCRjaGFyYWN0ZXIgPT09ICdlJyB8fCAkY2hhcmFjdGVyID09PSAnRScpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+aW5kZXgrKzsKICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBbVG9rZW5UeXBlOjpUb2tlbkJvb2wsIHRydWVdOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0gLy8gZiwgRgogICAgICAgIGVsc2VpZiAoJGNoYXJhY3RlciA9PT0gJ2YnIHx8ICRjaGFyYWN0ZXIgPT09ICdGJykgewogICAgICAgICAgICAkaSA9IDA7CiAgICAgICAgICAgICRpKys7CiAgICAgICAgICAgICRjaGFyYWN0ZXIgPSAkdGhpcy0+aW5wdXRbJHRoaXMtPmluZGV4ICsgJGldOwogICAgICAgICAgICAvLyBhLCBBCiAgICAgICAgICAgIGlmICgkY2hhcmFjdGVyID09PSAnYScgfHwgJGNoYXJhY3RlciA9PT0gJ0EnKSB7CiAgICAgICAgICAgICAgICAkaSsrOwogICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9ICR0aGlzLT5pbnB1dFskdGhpcy0+aW5kZXggKyAkaV07CiAgICAgICAgICAgICAgICAvLyBsLCBMCiAgICAgICAgICAgICAgICBpZiAoJGNoYXJhY3RlciA9PT0gJ2wnIHx8ICRjaGFyYWN0ZXIgPT09ICdMJykgewogICAgICAgICAgICAgICAgICAgICRpKys7CiAgICAgICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9ICR0aGlzLT5pbnB1dFskdGhpcy0+aW5kZXggKyAkaV07CiAgICAgICAgICAgICAgICAgICAgLy8gcywgUwogICAgICAgICAgICAgICAgICAgIGlmICgkY2hhcmFjdGVyID09PSAncycgfHwgJGNoYXJhY3RlciA9PT0gJ1MnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRpKys7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXIgPSAkdGhpcy0+aW5wdXRbJHRoaXMtPmluZGV4ICsgJGldOwogICAgICAgICAgICAgICAgICAgICAgICAvLyBlLCBFCiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkY2hhcmFjdGVyID09PSAnZScgfHwgJGNoYXJhY3RlciA9PT0gJ0UnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+aW5kZXgrKzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+aW5kZXgrKzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtUb2tlblR5cGU6OlRva2VuQm9vbCwgZmFsc2VdOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSBlbHNlaWYgKCRjaGFyYWN0ZXIgPT09ICciJyB8fCAkY2hhcmFjdGVyID09PSAnXCcnKSB7CiAgICAgICAgICAgICRzdHlwZSA9IG51bGw7CiAgICAgICAgICAgIGlmICgkY2hhcmFjdGVyID09PSAnIicpIHsKICAgICAgICAgICAgICAgICRzdHlwZSA9IDE7CiAgICAgICAgICAgIH0gZWxzZWlmICgkY2hhcmFjdGVyID09PSAnXCcnKSB7CiAgICAgICAgICAgICAgICAkc3R5cGUgPSAyOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRyZXN1bHQgPSAiIjsKICAgICAgICAgICAgJGNoYXJhY3RlclByZXYgPSAiIjsKICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICRjaGFyYWN0ZXIgPSAkdGhpcy0+aW5wdXRbJHRoaXMtPmluZGV4XTsKICAgICAgICAgICAgJGNoYXJhY3Rlck5leHQgPSBudWxsOwogICAgICAgICAgICB3aGlsZSAoCiAgICAgICAgICAgICAgICAoJHN0eXBlID09PSAxICYmICRjaGFyYWN0ZXJOZXh0ICE9PSAnIicpIHx8CiAgICAgICAgICAgICAgICAoJHN0eXBlID09PSAyICYmICRjaGFyYWN0ZXJOZXh0ICE9PSAnXCcnKQogICAgICAgICAgICApIHsKICAgICAgICAgICAgICAgIGlmICgkdGhpcy0+aW5kZXggPT0gJHRoaXMtPmxlbmd0aCkgewogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9ICR0aGlzLT5pbnB1dFskdGhpcy0+aW5kZXhdOwogICAgICAgICAgICAgICAgaWYgKCR0aGlzLT5pbmRleCArIDEgPCAkdGhpcy0+bGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgJGNoYXJhY3Rlck5leHQgPSAkdGhpcy0+aW5wdXRbJHRoaXMtPmluZGV4ICsgMV07CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gbnVsbDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIC8vIEl0IGFkZGVkIGJ5IG1lLCBub3QgaW4gdGhlIHN0YW5kYXJkIEpTT04hCiAgICAgICAgICAgICAgICBpZiAoJGNoYXJhY3RlciA9PT0gJ1xcJyAmJiAkY2hhcmFjdGVyTmV4dCA9PT0gJ1wnJykgewogICAgICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgICAgIC8vICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXIgPSAkY2hhcmFjdGVyTmV4dDsKICAgICAgICAgICAgICAgICAgICBpZiAoJHRoaXMtPmluZGV4ICsgMSA8ICR0aGlzLT5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJGNoYXJhY3Rlck5leHQgPSAkdGhpcy0+aW5wdXRbJHRoaXMtPmluZGV4ICsgMV07CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgJGNoYXJhY3Rlck5leHQgPSBudWxsOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gLyoqCiAgICAgICAgICAgICAgICAgKgogICAgICAgICAgICAgICAgICogQE5hbWUgOiBVbmljb2RlIFN1cHBvcnQKICAgICAgICAgICAgICAgICAqIEBEZXNjcmlwdGlvbiA6IFRoaXMgZmVhdHVyZSBpcyByZXF1ZXN0ZWQgYnkgRnJlZGVyaWNrIEJlaHJlbmRzLgogICAgICAgICAgICAgICAgICogQFVybCwgQElzc3VlIDogaHR0cHM6Ly9naXRodWIuY29tL0Jhc2VNYXgvSnNvblBhcnNlci9pc3N1ZXMvMQogICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICBlbHNlaWYgKCRjaGFyYWN0ZXIgPT09ICdcXCcgJiYgJGNoYXJhY3Rlck5leHQgPT09ICd1JykgewogICAgICAgICAgICAgICAgICAgICR1bmljb2RlID0gJyc7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgJHBlcmZvcm0gPSB0cnVlOwogICAgICAgICAgICAgICAgICAgICRpID0gMTsgLy8gV2UgcmVxdWlyZSBpdCBhZnRlciB0aGUgbG9vcCEKICAgICAgICAgICAgICAgICAgICBmb3IgKDsgJGkgPD0gNDsgJGkrKykgewogICAgICAgICAgICAgICAgICAgICAgICAvLyBwcmludCAiLi4uXG4iOwogICAgICAgICAgICAgICAgICAgICAgICAvLyBpZigkcGVyZm9ybSA9PT0gZmFsc2UpIHsKICAgICAgICAgICAgICAgICAgICAgICAgLy8gCWJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAvLyB9CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICgkdGhpcy0+aW5kZXggKyAxIDwgJHRoaXMtPmxlbmd0aCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGNoYXJhY3Rlck5leHQgPSAkdGhpcy0+aW5wdXRbJHRoaXMtPmluZGV4XTsgLy8gQXMgdGVtcCB2YXJpYWJsZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBlcmZvcm0gPSB0cnVlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID49ICcwJyAmJiAkY2hhcmFjdGVyTmV4dCA8PSAnOScgfHwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY2hhcmFjdGVyTmV4dCA+PSAnQScgJiYgJGNoYXJhY3Rlck5leHQgPD0gJ0YnCiAgICAgICAgICAgICAgICAgICAgICAgICAgICApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY2hhcmFjdGVyID0gJGNoYXJhY3Rlck5leHQ7Ly8gSXQgd2lsbCB1c2Ugd2hlbiBsb29wIGJyZWFrISAoJHBlcmZvcm09ZmFsc2UpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHVuaWNvZGUgLj0gJGNoYXJhY3RlcjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+aW5kZXgrKzsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7IC8vIE1heSBiZSAiIGNoYXJhY3RlciEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBwcmludCAiQSBzdGFnZVxuIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBwcmludCAkdW5pY29kZS4iXG4iOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHByaW50ICRjaGFyYWN0ZXIuIlxuIjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcGVyZm9ybSA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gcHJpbnQgIkIgc3RhZ2VcbiI7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcGVyZm9ybSA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYgKCRwZXJmb3JtID09PSB0cnVlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleC0tOyAvLyBSZXF1aXJlZC4uLgogICAgICAgICAgICAgICAgICAgICAgICAvLyBwcmludCAiQyBTdGFnZVxuIjsKICAgICAgICAgICAgICAgICAgICAgICAgLy8gcHJpbnQgJHVuaWNvZGUuIlxuIjsKICAgICAgICAgICAgICAgICAgICAgICAgJHVuaWNvZGUgPSAiJXUiIC4gJHVuaWNvZGU7CiAgICAgICAgICAgICAgICAgICAgICAgICMgJHVuaWNvZGUgPSBwcmVnX3JlcGxhY2UoJy8ldShbMC05QS1GXSl7NH0vJywgJyYjeCQxOycsICR1bmljb2RlKTsKICAgICAgICAgICAgICAgICAgICAgICAgJHVuaWNvZGUgPSBwcmVnX3JlcGxhY2UoJy8ldShbMC05QS1GXSspLycsICcmI3gkMTsnLCAkdW5pY29kZSk7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEVOVF9DT01QQVQgOiBXaWxsIGNvbnZlcnQgZG91YmxlLXF1b3RlcyBhbmQgbGVhdmUgc2luZ2xlLXF1b3RlcyBhbG9uZS4KICAgICAgICAgICAgICAgICAgICAgICAgLy8gaHR0cHM6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vZnVuY3Rpb24uaHRtbGVudGl0aWVzLnBocAogICAgICAgICAgICAgICAgICAgICAgICAvLyBwcmludCAkdW5pY29kZS4iXG4iOwogICAgICAgICAgICAgICAgICAgICAgICAkY2hhcmFjdGVyID0gaHRtbF9lbnRpdHlfZGVjb2RlKCR1bmljb2RlLCBFTlRfQ09NUEFULCAnVVRGLTgnKTsKICAgICAgICAgICAgICAgICAgICAgICAgLy8gcHJpbnQgJGNoYXJhY3Rlci4iXG4iOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vIExhc3QgaW5kZXggaXMgJGkKICAgICAgICAgICAgICAgICAgICAgICAgLy8gV2UgKCRpLTEpIHRpbWUgcnViIHRoZSAkaW5kZXgrKwogICAgICAgICAgICAgICAgICAgICAgICAvLyBwcmludCAkaS4iXG4iOwogICAgICAgICAgICAgICAgICAgICAgICAvLyBmb3IoJGlpPTE7JGlpPCRpLTE7JGlpKyspIHsKICAgICAgICAgICAgICAgICAgICAgICAgLy8gCSR0aGlzLT5pbmRleC0tOwogICAgICAgICAgICAgICAgICAgICAgICAvLyB9CiAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleC0tOwogICAgICAgICAgICAgICAgICAgICAgICAkY2hhcmFjdGVyID0gIlxcdSIgLiAkdW5pY29kZTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYgKCR0aGlzLT5pbmRleCArIDEgPCAkdGhpcy0+bGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gJHRoaXMtPmlucHV0WyR0aGlzLT5pbmRleCArIDFdOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gbnVsbDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGVsc2VpZiAoJGNoYXJhY3RlciA9PT0gJ1xcJyAmJiAkY2hhcmFjdGVyTmV4dCA9PT0gJ24nKSB7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgLy8gJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9ICJcbiI7CiAgICAgICAgICAgICAgICAgICAgaWYgKCR0aGlzLT5pbmRleCArIDEgPCAkdGhpcy0+bGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gJHRoaXMtPmlucHV0WyR0aGlzLT5pbmRleCArIDFdOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gbnVsbDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGVsc2VpZiAoJGNoYXJhY3RlciA9PT0gJ1xcJyAmJiAkY2hhcmFjdGVyTmV4dCA9PT0gJ1xcJykgewogICAgICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgICAgIC8vICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXIgPSAiXFwiOwogICAgICAgICAgICAgICAgICAgIGlmICgkdGhpcy0+aW5kZXggKyAxIDwgJHRoaXMtPmxlbmd0aCkgewogICAgICAgICAgICAgICAgICAgICAgICAkY2hhcmFjdGVyTmV4dCA9ICR0aGlzLT5pbnB1dFskdGhpcy0+aW5kZXggKyAxXTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAkY2hhcmFjdGVyTmV4dCA9IG51bGw7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBlbHNlaWYgKCRjaGFyYWN0ZXIgPT09ICdcXCcgJiYgJGNoYXJhY3Rlck5leHQgPT09ICcvJykgewogICAgICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgICAgIC8vICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXIgPSAiLyI7CiAgICAgICAgICAgICAgICAgICAgaWYgKCR0aGlzLT5pbmRleCArIDEgPCAkdGhpcy0+bGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gJHRoaXMtPmlucHV0WyR0aGlzLT5pbmRleCArIDFdOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gbnVsbDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGVsc2VpZiAoJGNoYXJhY3RlciA9PT0gJ1xcJyAmJiAkY2hhcmFjdGVyTmV4dCA9PT0gJ3QnKSB7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgLy8gJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9ICJcdCI7CiAgICAgICAgICAgICAgICAgICAgaWYgKCR0aGlzLT5pbmRleCArIDEgPCAkdGhpcy0+bGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gJHRoaXMtPmlucHV0WyR0aGlzLT5pbmRleCArIDFdOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gbnVsbDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGVsc2VpZiAoJGNoYXJhY3RlciA9PT0gJ1xcJyAmJiAkY2hhcmFjdGVyTmV4dCA9PT0gJ3InKSB7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgLy8gJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9ICJcciI7CiAgICAgICAgICAgICAgICAgICAgaWYgKCR0aGlzLT5pbmRleCArIDEgPCAkdGhpcy0+bGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gJHRoaXMtPmlucHV0WyR0aGlzLT5pbmRleCArIDFdOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gbnVsbDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGVsc2VpZiAoJGNoYXJhY3RlciA9PT0gJ1xcJyAmJiAkY2hhcmFjdGVyTmV4dCA9PT0gJ2InKSB7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgLy8gJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9ICJcYiI7CiAgICAgICAgICAgICAgICAgICAgaWYgKCR0aGlzLT5pbmRleCArIDEgPCAkdGhpcy0+bGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gJHRoaXMtPmlucHV0WyR0aGlzLT5pbmRleCArIDFdOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRjaGFyYWN0ZXJOZXh0ID0gbnVsbDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGVsc2VpZiAoJGNoYXJhY3RlciA9PT0gJ1xcJyAmJiAkY2hhcmFjdGVyTmV4dCA9PT0gJyInKSB7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgLy8gJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9ICRjaGFyYWN0ZXJOZXh0OwogICAgICAgICAgICAgICAgICAgIC8vIEZpeDogImhpXCIhIgogICAgICAgICAgICAgICAgICAgIGlmICgkdGhpcy0+aW5kZXggKyAxIDwgJHRoaXMtPmxlbmd0aCkgewogICAgICAgICAgICAgICAgICAgICAgICAkY2hhcmFjdGVyTmV4dCA9ICR0aGlzLT5pbnB1dFskdGhpcy0+aW5kZXggKyAxXTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAkY2hhcmFjdGVyTmV4dCA9IG51bGw7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgLy8gZWxzZSB7CiAgICAgICAgICAgICAgICAvLyAJJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgICAgICAvLyB9CgogICAgICAgICAgICAgICAgLy8gZWxzZSBpZigkY2hhcmFjdGVyID09ICciJykgewogICAgICAgICAgICAgICAgLy8gCS8vICR0aGlzLT5pbmRleC0tOwogICAgICAgICAgICAgICAgLy8gCS8vICR0aGlzLT5pbmRleC0tOwogICAgICAgICAgICAgICAgLy8gCS8vICRjaGFyYWN0ZXI9JyInOwogICAgICAgICAgICAgICAgLy8gCWJyZWFrOwogICAgICAgICAgICAgICAgLy8gCWNvbnRpbnVlOwogICAgICAgICAgICAgICAgLy8gfQogICAgICAgICAgICAgICAgJHJlc3VsdCAuPSAkY2hhcmFjdGVyOwogICAgICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgIHJldHVybiBbVG9rZW5UeXBlOjpUb2tlblN0cmluZywgJHJlc3VsdF07CiAgICAgICAgfQogICAgICAgIC8vIDxpbnQ+KDAgLi4gOSksIC0sIC4KICAgICAgICAvLyBBbGxvdyA6IC45LCAuMDQKICAgICAgICAvLyBBbGxvdyA6IC01CiAgICAgICAgLy8gQWxsb3cgOiAtNS4wNDgKICAgICAgICBlbHNlaWYgKCgkY2hhcmFjdGVyID49ICcwJyAmJiAkY2hhcmFjdGVyIDw9ICc5JykgfHwgJGNoYXJhY3RlciA9PSAnLScgfHwgJGNoYXJhY3RlciA9PSAnLicpIHsKICAgICAgICAgICAgJHJlc3VsdCA9IDA7CiAgICAgICAgICAgICRiaXRmbGFnID0gZmFsc2U7CiAgICAgICAgICAgICRiaXRmbG9hdCA9IGZhbHNlOwogICAgICAgICAgICAkYml0ZmxvYXRpbmRleCA9IDA7CiAgICAgICAgICAgIC8vIHdoaWxlKCRjaGFyYWN0ZXIgPj0nMCcgJiYgJGNoYXJhY3RlciA8PSc5JykgewogICAgICAgICAgICB3aGlsZSAoCiAgICAgICAgICAgICAgICAoJGNoYXJhY3RlciA+PSAnMCcgJiYgJGNoYXJhY3RlciA8PSAnOScpIHx8CiAgICAgICAgICAgICAgICAkY2hhcmFjdGVyID09ICctJyB8fAogICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9PSAnLicKICAgICAgICAgICAgKSB7CiAgICAgICAgICAgICAgICBpZiAoJHRoaXMtPmluZGV4ID09ICR0aGlzLT5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIC8vICRyZXN1bHQqPTEwKyhpbnQpJGNoYXJhY3RlcjsKICAgICAgICAgICAgICAgIGlmICgkYml0ZmxhZyA9PT0gZmFsc2UgJiYgJGNoYXJhY3RlciA9PT0gJy0nKSB7CiAgICAgICAgICAgICAgICAgICAgJGJpdGZsYWcgPSB0cnVlOwogICAgICAgICAgICAgICAgfSBlbHNlaWYgKCRiaXRmbGFnID09PSB0cnVlICYmICRjaGFyYWN0ZXIgPT09ICctJykgewogICAgICAgICAgICAgICAgICAgIC8vIEVycm9yCiAgICAgICAgICAgICAgICAgICAgZXhpdCgiQWxlYWR5IGV4cHJlc3Npb24gaGFzIGEgbWludXMhXG4iKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCRiaXRmbG9hdCA9PT0gZmFsc2UgJiYgJGNoYXJhY3RlciA9PSAnLicpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJGJpdGZsb2F0ID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICAgICAgLy8gJGJpdGZsb2F0aW5kZXg9MDsKICAgICAgICAgICAgICAgICAgICB9IGVsc2VpZiAoJGJpdGZsYWcgPT09IHRydWUgJiYgJGNoYXJhY3RlciA9PSAnLicpIHsKICAgICAgICAgICAgICAgICAgICAgICAgLy8gRXJyb3IKICAgICAgICAgICAgICAgICAgICAgICAgZXhpdCgiQWxlYWR5IGV4cHJlc3Npb24gd2FzIGEgZmxvYXQgdHlwZSFcbiIpOwogICAgICAgICAgICAgICAgICAgIH0gLy8gZWxzZSBpZigkYml0ZmxhZyA9PT0gdHJ1ZSAmJiAoJGNoYXJhY3RlciA9PSAnZScgfHwgJGNoYXJhY3RlciA9PSAnRScpKSB7CiAgICAgICAgICAgICAgICAgICAgZWxzZWlmICgkY2hhcmFjdGVyID09ICdlJyB8fCAkY2hhcmFjdGVyID09ICdFJykgewogICAgICAgICAgICAgICAgICAgICAgICAvL3Nvb24KICAgICAgICAgICAgICAgICAgICAgICAgZXhpdCgiU29vbiwgRSs1IGxpa2VseSBleHByZXNzaW9uIHdpbGwgZGV2ZWxvcGUuLi4uIVxuIik7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlaWYgKCRiaXRmbG9hdCA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAkYml0ZmxvYXRpbmRleCsrOwogICAgICAgICAgICAgICAgICAgICAgICAkZmxvYXRjdXJyZW50ID0gcG93KDEwLCAkYml0ZmxvYXRpbmRleCk7CiAgICAgICAgICAgICAgICAgICAgICAgICRyZXN1bHQgPSAkcmVzdWx0ICsgKChpbnQpJGNoYXJhY3RlciAvICRmbG9hdGN1cnJlbnQpOwogICAgICAgICAgICAgICAgICAgIH0gLy8gZWxzZSBpZigkYml0ZmxvYXQgPT09IGZhbHNlKSB7CiAgICAgICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRyZXN1bHQgPSAkcmVzdWx0ICogMTA7CiAgICAgICAgICAgICAgICAgICAgICAgICRyZXN1bHQgPSAkcmVzdWx0ICsgKGludCkkY2hhcmFjdGVyOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICR0aGlzLT5pbmRleCsrOwogICAgICAgICAgICAgICAgaWYgKCR0aGlzLT5pbmRleCArIDEgPCAkdGhpcy0+bGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgJGNoYXJhY3RlciA9ICR0aGlzLT5pbnB1dFskdGhpcy0+aW5kZXhdOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAkY2hhcmFjdGVyID0gbnVsbDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoJGJpdGZsYWcgPT09IHRydWUpIHsKICAgICAgICAgICAgICAgICRyZXN1bHQgKj0gLTE7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLy8gJHRoaXMtPmluZGV4Kys7CiAgICAgICAgICAgIHJldHVybiBbVG9rZW5UeXBlOjpUb2tlbk51bWJlciwgJHJlc3VsdF07CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgJHRoaXMtPmluZGV4Kys7CiAgICAgICAgfQogICAgICAgIHJldHVybiBbVG9rZW5UeXBlOjpUb2tlbkVPRiwgbnVsbF07CiAgICB9CgogICAgLyoqCiAgICAgKiBAZnVuY3Rpb24gaXNWYWx1ZSh0b2tlbikKICAgICAqIGFyZ3VtZW50OiB0b2tlbiAkdG9rZW4KICAgICAqIHJldHVybiA6IGFycmF5W2Jvb2wgJHN0YXR1cywgc3RyaW5nICRyZXN1bHRdCiAgICAgKi8KICAgIGZ1bmN0aW9uIGlzVmFsdWUoJHRva2VuKQogICAgewogICAgICAgIC8qKgogICAgICAgICAqIFZhbHVlczoKICAgICAgICAgKiAgICAgICAgICAgIDxpbnQ+LCA8ZmxvYXQ+LCAtIDxpbnQ+LCAtIDxmbG9hdD4sIC08aW50PihlfEUpKCt8LSk8aW50PiwgPGludD4oZXxFKSgrfC0pPGludD4sIC08ZmxvYXQ+KGV8RSkoK3wtKTxpbnQ+LCA8ZmxvYXQ+KGV8RSkoK3wtKTxpbnQ+CiAgICAgICAgICoKICAgICAgICAgKiAgICAgICAgICAgIDxib29sPiAodHJ1ZSwgZmFsc2UpCiAgICAgICAgICoKICAgICAgICAgKiAgICAgICAgICAgIDxudWxsPiAobnVsbCkKICAgICAgICAgKgogICAgICAgICAqICAgICAgICAgICAgPHN0cmluZz4gKCIuLi4iLCAnLi4uJykKICAgICAgICAgKgogICAgICAgICAqICAgICAgICAgICAgPG9iamVjdD4gey4uLn0KICAgICAgICAgKgogICAgICAgICAqICAgICAgICAgICAgPGFycmF5PiBbLi4uXQogICAgICAgICAqLwogICAgICAgIGlmICgkdG9rZW5bMF0gPT09IFRva2VuVHlwZTo6VG9rZW5OdW1iZXIpIHsKICAgICAgICAgICAgcmV0dXJuIFt0cnVlLCAkdG9rZW5bMV1dOwogICAgICAgICAgICAvLyByZXR1cm4gW3RydWUsbnVsbF07CiAgICAgICAgICAgIC8vIHJldHVybiB0cnVlOwogICAgICAgIH0gZWxzZWlmICgkdG9rZW5bMF0gPT09IFRva2VuVHlwZTo6VG9rZW5TdHJpbmcpIHsKICAgICAgICAgICAgcmV0dXJuIFt0cnVlLCAkdG9rZW5bMV1dOwogICAgICAgICAgICAvLyByZXR1cm4gW3RydWUsbnVsbF07CiAgICAgICAgICAgIC8vIHJldHVybiB0cnVlOwogICAgICAgIH0gZWxzZWlmICgkdG9rZW5bMF0gPT09IFRva2VuVHlwZTo6VG9rZW5Cb29sKSB7CiAgICAgICAgICAgIHJldHVybiBbdHJ1ZSwgJHRva2VuWzFdXTsKICAgICAgICB9IGVsc2VpZiAoJHRva2VuWzBdID09PSBUb2tlblR5cGU6OlRva2VuTnVsbCkgewogICAgICAgICAgICByZXR1cm4gW3RydWUsIG51bGxdOwogICAgICAgIH0gZWxzZWlmICgkdG9rZW5bMF0gPT09IFRva2VuVHlwZTo6VG9rZW5PYmplY3RPcGVuKSB7CiAgICAgICAgICAgIC8vICR0cmVlPTA7CiAgICAgICAgICAgIC8vICRyZXN1bHQ9W107CiAgICAgICAgICAgICR0aGlzLT5pbmRleC0tOwogICAgICAgICAgICAvLyBwcmludCAiLi4uXG4iOwogICAgICAgICAgICAkcmVzdWx0ID0gJHRoaXMtPmRlY29kZShudWxsLCBmYWxzZSk7CiAgICAgICAgICAgIC8vIHdoaWxlKCR0b2tlblswXSAhPSBUb2tlblR5cGU6OlRva2VuT2JqZWN0Q2xvc2UpIHsKCiAgICAgICAgICAgIC8vIH0KICAgICAgICAgICAgLy8gcHJpbnRfcigkcmVzdWx0KTsKICAgICAgICAgICAgcmV0dXJuIFt0cnVlLCAkcmVzdWx0XTsKICAgICAgICAgICAgLy8gcmV0dXJuIHRydWU7CiAgICAgICAgfSBlbHNlaWYgKCR0b2tlblswXSA9PT0gVG9rZW5UeXBlOjpUb2tlbkFycmF5T3BlbikgewogICAgICAgICAgICAvLyAkdHJlZT0wOwogICAgICAgICAgICAvLyAkcmVzdWx0PVtdOwogICAgICAgICAgICAkdGhpcy0+aW5kZXgtLTsKICAgICAgICAgICAgLy8gcHJpbnQgIi4uLlxuIjsKICAgICAgICAgICAgLy8gcHJpbnQgJHRoaXMtPmlucHV0LiJcbiI7CiAgICAgICAgICAgIC8vIHByaW50ICR0aGlzLT5pbmRleC4iXG4iOwogICAgICAgICAgICAvLyBwcmludCAkdGhpcy0+aW5wdXRbJHRoaXMtPmluZGV4XS4iXG4iOwogICAgICAgICAgICAkcmVzdWx0ID0gJHRoaXMtPmRlY29kZShudWxsLCBmYWxzZSk7CiAgICAgICAgICAgIC8vIHdoaWxlKCR0b2tlblswXSAhPSBUb2tlblR5cGU6OlRva2VuT2JqZWN0Q2xvc2UpIHsKICAgICAgICAgICAgLy8KICAgICAgICAgICAgLy8gfQogICAgICAgICAgICByZXR1cm4gW3RydWUsICRyZXN1bHRdOwogICAgICAgICAgICAvLyByZXR1cm4gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIFtmYWxzZSwgbnVsbF07CiAgICAgICAgLy8gcmV0dXJuIGZhbHNlOwogICAgfQoKICAgIC8qKgogICAgICogQGZ1bmN0aW9uIGRlY29kZShpbnB1dCxpbml0PXRydWUpCiAgICAgKiBhcmd1bWVudDogc3RyaW5nICRpbnB1dCwgYm9vbCBpbml0CiAgICAgKiByZXR1cm4gOiBhcnJheVsuLi5dCiAgICAgKi8KICAgIGZ1bmN0aW9uIGRlY29kZSgkaW5wdXQsICRpbml0ID0gdHJ1ZSkKICAgIHsKICAgICAgICBpZiAoJGluaXQgPT09IHRydWUpIHsKICAgICAgICAgICAgLy8gJHRoaXMtPnRyZWU9W107CiAgICAgICAgICAgIC8vICR0aGlzLT50cmVlcz1bXTsKICAgICAgICAgICAgJHRoaXMtPmluZGV4ID0gMDsKICAgICAgICAgICAgJHRoaXMtPmlucHV0ID0gJGlucHV0OwogICAgICAgICAgICAkdGhpcy0+bGVuZ3RoID0gbWJfc3RybGVuKCRpbnB1dCk7CiAgICAgICAgICAgIC8vICR0aGlzLT50cmVlPW51bGw7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgLy8gJHRoaXMtPnRyZWU9MDsKICAgICAgICB9CiAgICAgICAgJHJlc3VsdCA9IFtdOwogICAgICAgICR0aGlzLT50b2tlbiA9ICR0aGlzLT5uZXh0VG9rZW4oKTsKICAgICAgICAvLyBwcmludF9yKCR0b2tlbik7CiAgICAgICAgLy8gJGFycmF5T3Blbj1mYWxzZTsKICAgICAgICAvLyAkb2JqZWN0T3Blbj1mYWxzZTsKICAgICAgICAvLyAvLyBza2lwIHNwYWNlcwogICAgICAgIC8vICR0aGlzLT5uZXh0c0lmKFsiICIsIlxuIiwiCSJdKTsKICAgICAgICBpZiAoCiAgICAgICAgICAgICR0aGlzLT50b2tlblswXSA9PT0gVG9rZW5UeXBlOjpUb2tlbkFycmF5T3BlbiB8fAogICAgICAgICAgICAkdGhpcy0+dG9rZW5bMF0gPT09IFRva2VuVHlwZTo6VG9rZW5PYmplY3RPcGVuCiAgICAgICAgKSB7CiAgICAgICAgICAgICR0eXBlID0gbnVsbDsKICAgICAgICAgICAgaWYgKCR0aGlzLT50b2tlblswXSA9PT0gVG9rZW5UeXBlOjpUb2tlbkFycmF5T3BlbikgewogICAgICAgICAgICAgICAgJHR5cGUgPSBKc29uVHlwZTo6SnNvbkFycmF5OwogICAgICAgICAgICB9IGVsc2VpZiAoJHRoaXMtPnRva2VuWzBdID09PSBUb2tlblR5cGU6OlRva2VuT2JqZWN0T3BlbikgewogICAgICAgICAgICAgICAgJHR5cGUgPSBKc29uVHlwZTo6SnNvbk9iamVjdDsKICAgICAgICAgICAgfQogICAgICAgICAgICAvLyAkdGhpcy0+dHJlZVtdPSR0aGlzLT50b2tlblswXTsKICAgICAgICAgICAgJHRoaXMtPnRva2VuID0gJHRoaXMtPm5leHRUb2tlbigpOwogICAgICAgICAgICAvLyAvLyBza2lwIHNwYWNlcwogICAgICAgICAgICAvLyAkdGhpcy0+bmV4dHNJZihbIiAiLCJcbiIsIgkiXSk7CiAgICAgICAgICAgIC8vIC8vIHNraXAgc3BsaXQKICAgICAgICAgICAgLy8gJHRoaXMtPnNraXBzKCR0b2tlbixUb2tlblR5cGU6OlRva2VuU3BsaXQpOwogICAgICAgICAgICAvLyAvLyBza2lwIHNwYWNlcwogICAgICAgICAgICAvLyAkdGhpcy0+bmV4dHNJZihbIiAiLCJcbiIsIgkiXSk7CiAgICAgICAgICAgIC8vIC8vIHNraXAgc3BhY2UocykgYW5kIHNwbGl0KHMpCiAgICAgICAgICAgIC8vICR0aGlzLT5uZXh0c0lmV2l0aFNraXBzKFsiICIsIlxuIiwiCSJdLCR0b2tlbixUb2tlblR5cGU6OlRva2VuU3BsaXQpOwogICAgICAgICAgICAvLyBza2lwIHNwbGl0CiAgICAgICAgICAgIC8vIHByaW50X3IoJHRva2VuKTsKICAgICAgICAgICAgJHRoaXMtPnRva2VuID0gJHRoaXMtPnNraXBzKCR0aGlzLT50b2tlbiwgVG9rZW5UeXBlOjpUb2tlblNwbGl0KTsKICAgICAgICAgICAgLy8gcHJpbnRfcigkdG9rZW4pOwogICAgICAgICAgICAvLyBleGl0OwogICAgICAgICAgICAvLyBwYXJzZSB1bnRpbCBhcnJheUNsb3NlCiAgICAgICAgICAgIHdoaWxlICgKICAgICAgICAgICAgICAgICgkdHlwZSA9PT0gSnNvblR5cGU6Okpzb25BcnJheSAmJiAkdGhpcy0+dG9rZW5bMF0gIT09IFRva2VuVHlwZTo6VG9rZW5BcnJheUNsb3NlKSB8fAogICAgICAgICAgICAgICAgKCR0eXBlID09PSBKc29uVHlwZTo6SnNvbk9iamVjdCAmJiAkdGhpcy0+dG9rZW5bMF0gIT09IFRva2VuVHlwZTo6VG9rZW5PYmplY3RDbG9zZSkKICAgICAgICAgICAgKSB7CiAgICAgICAgICAgICAgICAvLyBwcmludCAiPT0+Ii4kdGhpcy0+dHlwZVRva2VuKCR0aGlzLT50b2tlbikgLiJcbiI7CiAgICAgICAgICAgICAgICBpZiAoJHRoaXMtPnRva2VuWzBdID09PSBUb2tlblR5cGU6OlRva2VuRU9GKSB7CiAgICAgICAgICAgICAgICAgICAgZXhpdCgiQ29tbWFuZCBpcyBmaW5pc2gsIGJ1dCBhcnJheUNsb3NlIG5vdCBmb3VuZCFcbiIpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJGZpcnN0ID0gbnVsbDsKICAgICAgICAgICAgICAgICRzZWNvbmQgPSBudWxsOwogICAgICAgICAgICAgICAgJGZpcnN0ID0gJHRoaXMtPmlzVmFsdWUoJHRoaXMtPnRva2VuKTsKICAgICAgICAgICAgICAgIGlmICgkZmlyc3RbMF0gPT09IHRydWUpIHsKICAgICAgICAgICAgICAgICAgICAvLyBwcmludCAiLS0tLXllc1xuIjsKICAgICAgICAgICAgICAgICAgICAvLyAkZmlyc3Q9JHRva2VuOwogICAgICAgICAgICAgICAgICAgIC8vICRmaXJzdD0kdGhpcy0+dG9rZW47CiAgICAgICAgICAgICAgICAgICAgLy8gbmV4dCBtYXkgYmUgd2FzIHBhaXIgb3Igc3BsaXQgb3IgYXJyYXlDbG9zZSBvciBFT0YhCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPnRva2VuID0gJHRoaXMtPm5leHRUb2tlbigpOwogICAgICAgICAgICAgICAgICAgIC8vIHByaW50ICJcdD09PiIuJHRoaXMtPnR5cGVUb2tlbigkdG9rZW4pIC4iXG4iOwogICAgICAgICAgICAgICAgICAgIGlmICgkdHlwZSA9PT0gSnNvblR5cGU6Okpzb25PYmplY3QpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCR0aGlzLT50b2tlblswXSA9PT0gVG9rZW5UeXBlOjpUb2tlblBhaXIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc19zdHJpbmcoJGZpcnN0WzFdKSA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT50b2tlbiA9ICR0aGlzLT5uZXh0VG9rZW4oKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAkc2Vjb25kPSR0aGlzLT50b2tlbjsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkc2Vjb25kID0gJHRoaXMtPmlzVmFsdWUoJHRoaXMtPnRva2VuKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoJHNlY29uZFswXSA9PT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+dG9rZW4gPSAkdGhpcy0+bmV4dFRva2VuKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRXJyb3IhCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4aXQoIlVua25vd20gdG9rZW4sIHBhaXIgdmFsdWUgaXMgbm90IGEgdmFsdWUhXG4iKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEVycm9yIQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4aXQoIlVua25vd20gdG9rZW4sIGtleSBvZiBwYWlyIHZhbHVlIGlzIG5vdCBhIHN0cmluZyFcbiIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRXJyb3IhCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGl0KCJVbmtub3dtIHRva2VuLCBhbGwgaXRlbSBvZiBvYmplY3Qgc2hvdWxkIHdhcyBhIHBhaXIgdmFsdWUhXG4iKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAvLyBpdHMgYSBhcnJheSBKU09OCiAgICAgICAgICAgICAgICAgICAgaWYgKCRzZWNvbmQgPT09IG51bGwpIHsKICAgICAgICAgICAgICAgICAgICAgICAgLyoqCiAgICAgICAgICAgICAgICAgICAgICAgICAqIHJlc3VsdFtpbmRleF0KICAgICAgICAgICAgICAgICAgICAgICAgICogICAgPQogICAgICAgICAgICAgICAgICAgICAgICAgKiAgICA8dmFsdWU+IChmaXJzdCkKICAgICAgICAgICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgICAgICAgICAgICAgICRyZXN1bHRbXSA9ICRmaXJzdFsxXTsKICAgICAgICAgICAgICAgICAgICB9IC8vIGl0cyBhIG9iamVjdCBKU09OCiAgICAgICAgICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8qKgogICAgICAgICAgICAgICAgICAgICAgICAgKiByZXN1bHRbCiAgICAgICAgICAgICAgICAgICAgICAgICAqICAgICAgICA8dmFsdWU+IChmaXJzdCkKICAgICAgICAgICAgICAgICAgICAgICAgICogICAgICAgIF0KICAgICAgICAgICAgICAgICAgICAgICAgICogICAgPQogICAgICAgICAgICAgICAgICAgICAgICAgKiAgICA8dmFsdWU+IChzZWNvbmQpCiAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICAgICAgICAgICAgICAgICAgICAgICAkcmVzdWx0WyRmaXJzdFsxXV0gPSAkc2Vjb25kWzFdOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAvLyBwcmludF9yKCRyZXN1bHQpOwogICAgICAgICAgICAgICAgICAgICR0aGlzLT50b2tlbiA9ICR0aGlzLT5za2lwcygkdGhpcy0+dG9rZW4sIFRva2VuVHlwZTo6VG9rZW5TcGxpdCk7CiAgICAgICAgICAgICAgICAgICAgLy8gJHRoaXMtPnNraXBzKCR0b2tlbixUb2tlblR5cGU6OlRva2VuU3BsaXQpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAvLyBwcmludCAiLS0tLW5vXG4iOwogICAgICAgICAgICAgICAgICAgIC8vIHByaW50X3IoJHRva2VuKTsKICAgICAgICAgICAgICAgICAgICAvLyBwcmludCAkdGhpcy0+aW5wdXQuIlxuIjsKICAgICAgICAgICAgICAgICAgICAvLyBwcmludCAkdGhpcy0+aW5kZXguIlxuIjsKICAgICAgICAgICAgICAgICAgICAvLyBwcmludCAkdGhpcy0+aW5wdXRbJHRoaXMtPmluZGV4XS4iXG4iOwogICAgICAgICAgICAgICAgICAgICR0aGlzLT50b2tlbiA9ICR0aGlzLT5uZXh0VG9rZW4oKTsKICAgICAgICAgICAgICAgICAgICAvLyBwcmludF9yKCR0b2tlbik7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAvLyBwcmludCAiXHQ9PT4iLiR0aGlzLT50eXBlVG9rZW4oJHRva2VuKSAuIlxuIjsKICAgICAgICAgICAgICAgIC8vIHByaW50X3IoJHRva2VuKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAvLyBlbHNlIGlmKCR0aGlzLT50b2tlblswXSA9PT0gVG9rZW5UeXBlOjpUb2tlbk9iamVjdE9wZW4pIHsKICAgICAgICAvLyAJLy8gJHRoaXMtPnRyZWVbXT0kdGhpcy0+dG9rZW5bMF07CiAgICAgICAgLy8gfQogICAgICAgIGVsc2VpZiAoJHRoaXMtPnRva2VuWzBdID09PSBUb2tlblR5cGU6OlRva2VuRU9GKSB7CiAgICAgICAgICAgIC8vIDsKICAgICAgICAgICAgLy8gcmV0dXJuOwogICAgICAgICAgICAvLyBleGl0OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIC8vIEVycm9yIQogICAgICAgICAgICBleGl0KCJVbmtub3dtIHRva2VuIGF0IHRoZSBiZWdpbiBvZiBjb21tYW5kIVxuIik7CiAgICAgICAgfQogICAgICAgIC8vIHByaW50X3IoJHJlc3VsdCk7CiAgICAgICAgcmV0dXJuICRyZXN1bHQ7CiAgICB9Cn0KIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Njp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czo0OiJOYW1lIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxMjoiOiBKc29uUGFyc2VyIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19aToxO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czo3OiJWZXJzaW9uIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo3OiI6IDIuMi4xIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19aToyO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czoxMDoiUHJvZ3JhbW1lciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NToiOiBNYXgiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjM7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjQ6IkRhdGUiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjg0OiI6IDIwMTgtMDYtMjYsIDIwMTgtMDYtMjcsIDIwMTktMDMtMjMsIDIwMTktMDMtMjQsIDIwMTktMDMtMjYsIDIwMTktMDMtMjcsIDIwMTktMDQtMDQiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjQ7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjg6IlJlbGVhc2VkIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo2NToidW5kZXIgOiBodHRwczovL2dpdGh1Yi5jb20vQmFzZU1heC9Kc29uUGFyc2VyL2Jsb2IvbWFzdGVyL0xJQ0VOU0UiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjU7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjEwOiJSZXBvc2l0b3J5IjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozOToiOiBodHRwczovL2dpdGh1Yi5jb20vQmFzZU1heC9Kc29uUGFyc2VyIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBtZXRhZGF0YSI7YTowOnt9fQ==";