1789595940
c05b9b66eacc8e11cfd97f370d355f8b-phpdoc%3A07f7cf963dc5c4d9c0919cff64df0f18-57431255ee0e0866834057b3ccf0ea16
s:29176:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjIzOiJTZWd1cmlkYWRTZXNpb25UZXN0LnBocCI7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lc3BhY2VzIjthOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGluY2x1ZGVzIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGZ1bmN0aW9ucyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjb25zdGFudHMiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY2xhc3NlcyI7YToxOntzOjIwOiJcU2VndXJpZGFkU2VzaW9uVGVzdCI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18iOjE1OntzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AaW1wbGVtZW50cyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGNvbnN0YW50cyI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHByb3BlcnRpZXMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBtZXRob2RzIjthOjM6e3M6NjQ6IlxTZWd1cmlkYWRTZXNpb25UZXN0Ojp0ZXN0TG9naW5SZWdlbmVyYUVsSWRlbnRpZmljYWRvckRlU2VzaW9uKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo4ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTozMDUzO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwNztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTozODY1O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjQ6IlxTZWd1cmlkYWRTZXNpb25UZXN0Ojp0ZXN0TG9naW5SZWdlbmVyYUVsSWRlbnRpZmljYWRvckRlU2VzaW9uKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo0MDoidGVzdExvZ2luUmVnZW5lcmFFbElkZW50aWZpY2Fkb3JEZVNlc2lvbiI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjExNDoiRWwgaWRlbnRpZmljYWRvciBkZSBzZXNpw7NuIGRlYmUgcmVnZW5lcmFyc2UgdHJhcyB1biBsb2dpbiBjb3JyZWN0bywKcGFyYSBpbXBlZGlyIGF0YXF1ZXMgZGUgZmlqYWNpw7NuIGRlIHNlc2nDs24uIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjI6e2k6MDtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9fWk6MTtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xUaHJvd3MiOjM6e3M6NzoiACoAbmFtZSI7czo2OiJ0aHJvd3MiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzc6IlxHdXp6bGVIdHRwXEV4Y2VwdGlvblxHdXp6bGVFeGNlcHRpb24iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNToiR3V6emxlRXhjZXB0aW9uIjt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjI6e3M6MTU6Ikd1enpsZUV4Y2VwdGlvbiI7czozNjoiR3V6emxlSHR0cFxFeGNlcHRpb25cR3V6emxlRXhjZXB0aW9uIjtzOjU6Ikdyb3VwIjtzOjM0OiJQSFBVbml0XEZyYW1ld29ya1xBdHRyaWJ1dGVzXEdyb3VwIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjU4OiJcU2VndXJpZGFkU2VzaW9uVGVzdDo6dGVzdExvZ2luRmFsbGlkb05vQ3JlYVNlc2lvblZhbGlkYSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTM6e3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTE3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjQxNDM7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTMwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjQ2OTE7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1ODoiXFNlZ3VyaWRhZFNlc2lvblRlc3Q6OnRlc3RMb2dpbkZhbGxpZG9Ob0NyZWFTZXNpb25WYWxpZGEoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjM0OiJ0ZXN0TG9naW5GYWxsaWRvTm9DcmVhU2VzaW9uVmFsaWRhIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NTQ6IlVuIGxvZ2luIGZhbGxpZG8gbm8gZGViZSBkZWphciB1bmEgc2VzacOzbiB1dGlsaXphYmxlLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xWb2lkXyI6MDp7fX1pOjE7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVGhyb3dzIjozOntzOjc6IgAqAG5hbWUiO3M6NjoidGhyb3dzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM3OiJcR3V6emxlSHR0cFxFeGNlcHRpb25cR3V6emxlRXhjZXB0aW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6Ikd1enpsZUV4Y2VwdGlvbiI7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjo0ODtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo2NjoiXFNlZ3VyaWRhZFNlc2lvblRlc3Q6OnRlc3RSZXNwdWVzdGFEZUxvZ2luTm9EZXZ1ZWx2ZUxhQ29udHJhc2VuYSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTM6e3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTM5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjQ4OTY7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTYxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjU3MTc7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2NjoiXFNlZ3VyaWRhZFNlc2lvblRlc3Q6OnRlc3RSZXNwdWVzdGFEZUxvZ2luTm9EZXZ1ZWx2ZUxhQ29udHJhc2VuYSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDI6InRlc3RSZXNwdWVzdGFEZUxvZ2luTm9EZXZ1ZWx2ZUxhQ29udHJhc2VuYSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjEwOToiTGEgY29udHJhc2XDsWEgbnVuY2EgZGViZSBhcGFyZWNlciBlbiBsYSByZXNwdWVzdGEgZGVsIGxvZ2luLApuaSBzaXF1aWVyYSBlbiBsb3MgZGF0b3MgZGVsIHVzdWFyaW8gZGV2dWVsdG9zLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xWb2lkXyI6MDp7fX1pOjE7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVGhyb3dzIjozOntzOjc6IgAqAG5hbWUiO3M6NjoidGhyb3dzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM3OiJcR3V6emxlSHR0cFxFeGNlcHRpb25cR3V6emxlRXhjZXB0aW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6Ikd1enpsZUV4Y2VwdGlvbiI7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjo0ODtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwB1c2VkVHJhaXRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTYyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjIwOiJcU2VndXJpZGFkU2VzaW9uVGVzdCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE5OiJTZWd1cmlkYWRTZXNpb25UZXN0Ijt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxMzk6IlNlZ3VyaWRhZCBkZSBsYSBzZXNpw7NuOiBiaW5kaW5nIGNvbiBVc2VyLUFnZW50LCByZWdlbmVyYWNpw7NuIGRlbAppZGVudGlmaWNhZG9yIHRyYXMgZWwgbG9naW4geSBhdXNlbmNpYSBkZSBzZXNpw7NuIHRyYXMgdW4gbG9naW4gZmFsbGlkby4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6NDp7aTowO086NDI6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFNlZSI6Mzp7czo3OiIAKgBuYW1lIjtzOjM6InNlZSI7czoxNDoiACoAZGVzY3JpcHRpb24iO047czo5OiIAKgByZWZlcnMiO086NTQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJlZmVyZW5jZVxGcXNlbiI6MTp7czo2MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJlZmVyZW5jZVxGcXNlbgBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM3OiJcdHJhY2tpbmdcYmFja2VuZFxhcGk6OnJlcXVpcmVBdXRoQXBpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTQ6InJlcXVpcmVBdXRoQXBpIjt9fX1pOjE7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjc6InBhY2thZ2UiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjMwOiJ0cmFja2luZ1xiYWNrZW5kXHRlc3RzXGdlbmVyYWwiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjI7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjg6InJlcXVpcmVzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo1MzoiUEhQIDguMCBVc28gZGUgdGlwYWRvIGVzdHJpY3RvIHkgZnVuY2lvbmVzIGRlIHN0cmluZ3MiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjM7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjg6InJlcXVpcmVzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo4OiJQSFBVbml0LiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6NDg7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AcGFyZW50IjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MTI6IlxBcGlUZXN0Q2FzZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJBcGlUZXN0Q2FzZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBmaW5hbCI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwByZWFkT25seSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGF0dHJpYnV0ZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXR0cmlidXRlIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBdHRyaWJ1dGUAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozNToiXFBIUFVuaXRcRnJhbWV3b3JrXEF0dHJpYnV0ZXNcR3JvdXAiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo1OiJHcm91cCI7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEF0dHJpYnV0ZQBhcmd1bWVudHMiO2E6MTp7aTowO086NDE6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2FsbEFyZ3VtZW50IjoyOntzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDYWxsQXJndW1lbnQAdmFsdWUiO3M6OToiJ2dlbmVyYWwnIjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDYWxsQXJndW1lbnQAbmFtZSI7Tjt9fX1pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBdHRyaWJ1dGUiOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEF0dHJpYnV0ZQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM1OiJcUEhQVW5pdFxGcmFtZXdvcmtcQXR0cmlidXRlc1xHcm91cCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjU6Ikdyb3VwIjt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXR0cmlidXRlAGFyZ3VtZW50cyI7YToxOntpOjA7Tzo0MToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDYWxsQXJndW1lbnQiOjI6e3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENhbGxBcmd1bWVudAB2YWx1ZSI7czoxMToiJ3NlZ3VyaWRhZCciO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENhbGxBcmd1bWVudABuYW1lIjtOO319fX19fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW50ZXJmYWNlcyI7YTowOnt9czo0MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQB0cmFpdHMiO2E6MDp7fXM6NDA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZW51bXMiO2E6MDp7fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaGFzaCI7czozMjoiNTc0MzEyNTVlZTBlMDg2NjgzNDA1N2IzY2NmMGVhMTYiO3M6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAcGF0aCI7czo0NDoiYmFja2VuZC90ZXN0L2dlbmVyYWwvU2VndXJpZGFkU2VzaW9uVGVzdC5waHAiO3M6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAc291cmNlIjtzOjU3MjE6Ijw/cGhwCgpkZWNsYXJlKHN0cmljdF90eXBlcz0xKTsKCnVzZSBHdXp6bGVIdHRwXEV4Y2VwdGlvblxHdXp6bGVFeGNlcHRpb247CnVzZSBQSFBVbml0XEZyYW1ld29ya1xBdHRyaWJ1dGVzXEdyb3VwOwoKcmVxdWlyZV9vbmNlIF9fRElSX18gLiAnLy4uL0FwaVRlc3RDYXNlLnBocCc7CgovKioKICogU2VndXJpZGFkIGRlIGxhIHNlc2nDs246IGJpbmRpbmcgY29uIFVzZXItQWdlbnQsIHJlZ2VuZXJhY2nDs24gZGVsCiAqIGlkZW50aWZpY2Fkb3IgdHJhcyBlbCBsb2dpbiB5IGF1c2VuY2lhIGRlIHNlc2nDs24gdHJhcyB1biBsb2dpbiBmYWxsaWRvLgogKgogKiBAc2VlIHRyYWNraW5nXGJhY2tlbmRcYXBpOjpyZXF1aXJlQXV0aEFwaQogKgogKiBAcGFja2FnZSB0cmFja2luZ1xiYWNrZW5kXHRlc3RzXGdlbmVyYWwKICoKICogQHJlcXVpcmVzIFBIUCA4LjAgVXNvIGRlIHRpcGFkbyBlc3RyaWN0byB5IGZ1bmNpb25lcyBkZSBzdHJpbmdzCiAqIEByZXF1aXJlcyBQSFBVbml0LgogKi8KI1tHcm91cCgnZ2VuZXJhbCcpXQojW0dyb3VwKCdzZWd1cmlkYWQnKV0KY2xhc3MgU2VndXJpZGFkU2VzaW9uVGVzdCBleHRlbmRzIEFwaVRlc3RDYXNlCnsKICAgIC8vIOKAlOKAlCBCSU5ESU5HIERFIFNFU0lPTiDigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJQKCiAgICAvKioKICAgICAqIFJldXRpbGl6YXIgbGEgY29va2llIGRlIHNlc2nDs24gZGVzZGUgb3RybyBVc2VyLUFnZW50IGRlYmUgaW52YWxpZGFybGEuCiAgICAgKiBTaW11bGEgZWwgcm9ibyBkZSBjb29raWUgZGVzZGUgb3RybyBjbGllbnRlLgogICAgICoKICAgICAqIEByZXR1cm4gdm9pZAogICAgICogQHRocm93cyBHdXp6bGVFeGNlcHRpb24KICAgICAqIEBkZXByZWNhdGVkCiAgICAgKi8KLy8gICAgcHVibGljIGZ1bmN0aW9uIHRlc3RDYW1iaW9EZVVzZXJBZ2VudEludmFsaWRhU2VzaW9uKCk6IHZvaWQgewovLyAgICAgICAgJHRoaXMtPmluaWNpYXJTZXNpb24oKTsKLy8KLy8gICAgICAgIC8vIE1pc21vIGNvb2tpZUphciAobWlzbWEgc2VzacOzbiksIGRpc3RpbnRvIFVzZXItQWdlbnQuCi8vICAgICAgICAkb3Ryb0NsaWVudGUgPSAkdGhpcy0+bnVldm9DbGllbnRlKFsnVXNlci1BZ2VudCcgPT4gJ05hdmVnYWRvci1EaXN0aW50by85LjknXSk7Ci8vCi8vICAgICAgICAkdGhpcy0+dHJhY2UoJ0FVVEgnLCAnUmVpbnRlbnRhbmRvIGNoZWNrX3Nlc3Npb24gY29uIG90cm8gVXNlci1BZ2VudCcpOwovLwovLyAgICAgICAgJHJlc3BvbnNlID0gJG90cm9DbGllbnRlLT5wb3N0KCdhcGkucGhwJywgWwovLyAgICAgICAgICAgICdmb3JtX3BhcmFtcycgPT4gWydhY3Rpb24nID0+ICdjaGVja19zZXNzaW9uJ10KLy8gICAgICAgIF0pOwovLyAgICAgICAgJHN0YXR1cyA9ICRyZXNwb25zZS0+Z2V0U3RhdHVzQ29kZSgpOwovLyAgICAgICAgJGJvZHkgICA9IGpzb25fZGVjb2RlKChzdHJpbmcpJHJlc3BvbnNlLT5nZXRCb2R5KCksIHRydWUpID8/IFtdOwovLwovLyAgICAgICAgJHRoaXMtPnRyYWNlKCdSRVNQT05TRScsICJIVFRQIHskc3RhdHVzfSIsICRib2R5KTsKLy8KLy8gICAgICAgICR0aGlzLT5hc3NlcnRFcXVhbHMoNDAxLCAkc3RhdHVzLAovLyAgICAgICAgICAgICdFbCBiaW5kaW5nIGRlIFVzZXItQWdlbnQgZGViZXLDrWEgaW52YWxpZGFyIGxhIHNlc2nDs24gcm9iYWRhLicpOwovLyAgICAgICAgJHRoaXMtPmFzc2VydFJlc3B1ZXN0YUFwaSgkYm9keSwgJ2JpbmRpbmcgVUEnKTsKLy8gICAgICAgICR0aGlzLT5hc3NlcnRGYWxzZSgkYm9keVsnb2snXSk7Ci8vICAgIH0KCiAgICAvKioKICAgICAqIFRyYXMgaW52YWxpZGFyIGxhIHNlc2nDs24gcG9yIFVzZXItQWdlbnQsIHRhbXBvY28gZGViZSBzZXJ2aXIKICAgICAqIHZvbHZpZW5kbyBhbCBVc2VyLUFnZW50IG9yaWdpbmFsIChsYSBzZXNpw7NuIGhhIHNpZG8gZGVzdHJ1aWRhKS4KICAgICAqCiAgICAgKiBAcmV0dXJuIHZvaWQKICAgICAqIEB0aHJvd3MgR3V6emxlRXhjZXB0aW9uCiAgICAgKiBAZGVwcmVjYXRlZAogICAgICovCi8vICAgIHB1YmxpYyBmdW5jdGlvbiB0ZXN0U2VzaW9uSW52YWxpZGFkYU5vU2VSZWN1cGVyYUNvbkVsVXNlckFnZW50T3JpZ2luYWwoKTogdm9pZCB7Ci8vICAgICAgICAkdGhpcy0+aW5pY2lhclNlc2lvbigpOwovLwovLyAgICAgICAgJG90cm9DbGllbnRlID0gJHRoaXMtPm51ZXZvQ2xpZW50ZShbJ1VzZXItQWdlbnQnID0+ICdOYXZlZ2Fkb3ItRGlzdGludG8vOS45J10pOwovLyAgICAgICAgJG90cm9DbGllbnRlLT5wb3N0KCdhcGkucGhwJywgWydmb3JtX3BhcmFtcycgPT4gWydhY3Rpb24nID0+ICdjaGVja19zZXNzaW9uJ11dKTsKLy8KLy8gICAgICAgIC8vIFZvbHZlbW9zIGFsIGNsaWVudGUgb3JpZ2luYWwsIGNvbiBsYSBtaXNtYSBjb29raWUuCi8vICAgICAgICBbJHN0YXR1cywgJGJvZHldID0gJHRoaXMtPnBvc3QoJ2FwaS5waHAnLCBbJ2FjdGlvbicgPT4gJ2NoZWNrX3Nlc3Npb24nXSk7Ci8vCi8vICAgICAgICAkdGhpcy0+YXNzZXJ0RXF1YWxzKDQwMSwgJHN0YXR1cywKLy8gICAgICAgICAgICAnVW5hIHNlc2nDs24gZGVzdHJ1aWRhIG5vIGRlYmUgcmV2aXZpciBhbCByZXN0YXVyYXIgZWwgVXNlci1BZ2VudC4nKTsKLy8gICAgICAgICR0aGlzLT5hc3NlcnRGYWxzZSgkYm9keVsnb2snXSk7Ci8vICAgIH0KCiAgICAvLyDigJTigJQgRklKQUNJT04gREUgU0VTSU9OIOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlAoKICAgIC8qKgogICAgICogRWwgaWRlbnRpZmljYWRvciBkZSBzZXNpw7NuIGRlYmUgcmVnZW5lcmFyc2UgdHJhcyB1biBsb2dpbiBjb3JyZWN0bywKICAgICAqIHBhcmEgaW1wZWRpciBhdGFxdWVzIGRlIGZpamFjacOzbiBkZSBzZXNpw7NuLgogICAgICoKICAgICAqIEByZXR1cm4gdm9pZAogICAgICogQHRocm93cyBHdXp6bGVFeGNlcHRpb24KICAgICAqLwogICAgcHVibGljIGZ1bmN0aW9uIHRlc3RMb2dpblJlZ2VuZXJhRWxJZGVudGlmaWNhZG9yRGVTZXNpb24oKTogdm9pZCB7CiAgICAgICAgLy8gUGV0aWNpw7NuIHByZXZpYSBwYXJhIHF1ZSBlbCBzZXJ2aWRvciBlbWl0YSB1bmEgY29va2llIGRlIHNlc2nDs24uCiAgICAgICAgJHRoaXMtPnBvc3QoJ2FwaS5waHAnLCBbJ2FjdGlvbicgPT4gJ2NoZWNrX3Nlc3Npb24nXSk7CiAgICAgICAgJGlkQW50ZXMgPSAkdGhpcy0+aWRTZXNpb24oKTsKCiAgICAgICAgaWYgKCRpZEFudGVzID09PSBudWxsKSB7CiAgICAgICAgICAgICR0aGlzLT5tYXJrVGVzdFNraXBwZWQoJ0VsIHNlcnZpZG9yIG5vIGVtaXRlIGNvb2tpZSBkZSBzZXNpw7NuIGFudGVzIGRlbCBsb2dpbi4nKTsKICAgICAgICB9CgogICAgICAgICR0aGlzLT5pbmljaWFyU2VzaW9uKCk7CiAgICAgICAgJGlkRGVzcHVlcyA9ICR0aGlzLT5pZFNlc2lvbigpOwoKICAgICAgICAkdGhpcy0+dHJhY2UoJ0FVVEgnLCAnQ29tcGFyYW5kbyBpZGVudGlmaWNhZG9yZXMgZGUgc2VzacOzbicsIFsKICAgICAgICAgICAgJ2FudGVzJyAgID0+IHN1YnN0cigkaWRBbnRlcywgMCwgOCkgLiAn4oCmJywKICAgICAgICAgICAgJ2Rlc3B1ZXMnID0+IHN1YnN0cigoc3RyaW5nKSRpZERlc3B1ZXMsIDAsIDgpIC4gJ+KApicsCiAgICAgICAgXSk7CgogICAgICAgICR0aGlzLT5hc3NlcnROb3RTYW1lKCRpZEFudGVzLCAkaWREZXNwdWVzLAogICAgICAgICAgICAnRWwgaWQgZGUgc2VzacOzbiBkZWJlIHJlZ2VuZXJhcnNlIHRyYXMgZWwgbG9naW4gKHNlc3Npb25fcmVnZW5lcmF0ZV9pZCkuJyk7CiAgICB9CgogICAgLy8g4oCU4oCUIExPR0lOIEZBTExJRE8g4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCUCgogICAgLyoqCiAgICAgKiBVbiBsb2dpbiBmYWxsaWRvIG5vIGRlYmUgZGVqYXIgdW5hIHNlc2nDs24gdXRpbGl6YWJsZS4KICAgICAqCiAgICAgKiBAcmV0dXJuIHZvaWQKICAgICAqIEB0aHJvd3MgR3V6emxlRXhjZXB0aW9uCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiB0ZXN0TG9naW5GYWxsaWRvTm9DcmVhU2VzaW9uVmFsaWRhKCk6IHZvaWQgewogICAgICAgIFskc3RhdHVzTG9naW5dID0gJHRoaXMtPnBvc3QoJ2FwaS5waHAnLCBbCiAgICAgICAgICAgICdhY3Rpb24nICAgPT4gJ2xvZ2luJywKICAgICAgICAgICAgJ2xvZ2luJyAgICA9PiAndXN1YXJpb1F1ZU5vRXhpc3RlJyAuIHRpbWUoKSwKICAgICAgICAgICAgJ3Bhc3N3b3JkJyA9PiAncGFzc3dvcmRfaW5jb3JyZWN0YScsCiAgICAgICAgXSk7CiAgICAgICAgJHRoaXMtPmFzc2VydEVxdWFscyg0MDEsICRzdGF0dXNMb2dpbik7CgogICAgICAgIFskc3RhdHVzLCAkYm9keV0gPSAkdGhpcy0+cG9zdCgnYXBpLnBocCcsIFsnYWN0aW9uJyA9PiAnY2hlY2tfc2Vzc2lvbiddKTsKCiAgICAgICAgJHRoaXMtPmFzc2VydEVxdWFscyg0MDEsICRzdGF0dXMsCiAgICAgICAgICAgICdVbiBsb2dpbiBmYWxsaWRvIG5vIGRlYmUgZGVqYXIgc2VzacOzbiBpbmljaWFkYS4nKTsKICAgICAgICAkdGhpcy0+YXNzZXJ0RmFsc2UoJGJvZHlbJ29rJ10pOwogICAgfQoKICAgIC8qKgogICAgICogTGEgY29udHJhc2XDsWEgbnVuY2EgZGViZSBhcGFyZWNlciBlbiBsYSByZXNwdWVzdGEgZGVsIGxvZ2luLAogICAgICogbmkgc2lxdWllcmEgZW4gbG9zIGRhdG9zIGRlbCB1c3VhcmlvIGRldnVlbHRvcy4KICAgICAqCiAgICAgKiBAcmV0dXJuIHZvaWQKICAgICAqIEB0aHJvd3MgR3V6emxlRXhjZXB0aW9uCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiB0ZXN0UmVzcHVlc3RhRGVMb2dpbk5vRGV2dWVsdmVMYUNvbnRyYXNlbmEoKTogdm9pZCB7CiAgICAgICAgWyRsb2dpbiwgJHBhc3N3b3JkXSA9ICR0aGlzLT5jcmVkZW5jaWFsZXMoKTsKCiAgICAgICAgaWYgKCRsb2dpbiA9PT0gJycgfHwgJHBhc3N3b3JkID09PSAnJykgewogICAgICAgICAgICAkdGhpcy0+bWFya1Rlc3RTa2lwcGVkKCdDcmVkZW5jaWFsZXMgbm8gY29uZmlndXJhZGFzIGVuIC5lbnYudGVzdGluZy4nKTsKICAgICAgICB9CgogICAgICAgIFssICRib2R5XSA9ICR0aGlzLT5wb3N0KCdhcGkucGhwJywgWwogICAgICAgICAgICAnYWN0aW9uJyAgID0+ICdsb2dpbicsCiAgICAgICAgICAgICdsb2dpbicgICAgPT4gJGxvZ2luLAogICAgICAgICAgICAncGFzc3dvcmQnID0+ICRwYXNzd29yZCwKICAgICAgICBdKTsKCiAgICAgICAgJGpzb24gPSBqc29uX2VuY29kZSgkYm9keSk7CgogICAgICAgICR0aGlzLT5hc3NlcnRTdHJpbmdOb3RDb250YWluc1N0cmluZygkcGFzc3dvcmQsICRqc29uLAogICAgICAgICAgICAnTGEgcmVzcHVlc3RhIGRlbCBsb2dpbiBubyBkZWJlIGluY2x1aXIgbGEgY29udHJhc2XDsWEuJyk7CgogICAgICAgIGZvcmVhY2ggKFsncGFzc3dvcmQnLCAncGFzcycsICdjbGF2ZScsICdoYXNoJ10gYXMgJGNsYXZlKSB7CiAgICAgICAgICAgICR0aGlzLT5hc3NlcnRBcnJheU5vdEhhc0tleSgkY2xhdmUsICRib2R5LAogICAgICAgICAgICAgICAgIkxhIHJlc3B1ZXN0YSBkZWwgbG9naW4gbm8gZGViZSBpbmNsdWlyIGxhIGNsYXZlICd7JGNsYXZlfScuIik7CiAgICAgICAgfQogICAgfQp9CiI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG1ldGFkYXRhIjthOjA6e319";