1778692632
441d63ebbc39eba359c9061ece8482bd-phpdoc%3A293fb73b998058a071d90b14603dbc86-34e70aca0a8b244c6753908339c89805
s:41904:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjE0OiJNZXRob2RUZXN0LnBocCI7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lc3BhY2VzIjthOjE6e3M6Mzc6IlxwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZhY3RvcnkiO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozNzoiXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmFjdG9yeSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6IkZhY3RvcnkiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbmNsdWRlcyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBmdW5jdGlvbnMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY29uc3RhbnRzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNsYXNzZXMiO2E6MTp7czo0ODoiXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmFjdG9yeVxNZXRob2RUZXN0IjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXyI6MTU6e3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBpbXBsZW1lbnRzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AY29uc3RhbnRzIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AcHJvcGVydGllcyI7YToxOntzOjY2OiJccGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGYWN0b3J5XE1ldGhvZFRlc3Q6OiRkb2NCbG9ja0ZhY3RvcnkiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjE0OntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2NjoiXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmFjdG9yeVxNZXRob2RUZXN0OjokZG9jQmxvY2tGYWN0b3J5IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6ImRvY0Jsb2NrRmFjdG9yeSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtOO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjMzOiJcUHJvcGhlY3lcUHJvcGhlY3lcT2JqZWN0UHJvcGhlY3kiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNDoiT2JqZWN0UHJvcGhlY3kiO319czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBob29rcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlydHVhbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBhdHRyaWJ1dGVzIjthOjA6e319fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBtZXRob2RzIjthOjc6e3M6NTc6IlxwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZhY3RvcnlcTWV0aG9kVGVzdDo6c2V0VXAoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjUyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE1MzI7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MTczMTt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xWb2lkXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU3OiJccGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGYWN0b3J5XE1ldGhvZFRlc3Q6OnNldFVwKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo1OiJzZXRVcCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo5OiJwcm90ZWN0ZWQiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjYzOiJccGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGYWN0b3J5XE1ldGhvZFRlc3Q6OnRlc3RNYXRjaGVzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxNzM4O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjE5ODg7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2MzoiXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmFjdG9yeVxNZXRob2RUZXN0Ojp0ZXN0TWF0Y2hlcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTE6InRlc3RNYXRjaGVzIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6Nzk6IlxwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZhY3RvcnlcTWV0aG9kVGVzdDo6dGVzdENyZWF0ZVdpdGhvdXRQYXJhbWV0ZXJzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aToxOTk1O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjgzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjMwNTY7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcVm9pZF8iOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo3OToiXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmFjdG9yeVxNZXRob2RUZXN0Ojp0ZXN0Q3JlYXRlV2l0aG91dFBhcmFtZXRlcnMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI3OiJ0ZXN0Q3JlYXRlV2l0aG91dFBhcmFtZXRlcnMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo3NzoiXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmFjdG9yeVxNZXRob2RUZXN0Ojp0ZXN0Q3JlYXRlUHJvdGVjdGVkTWV0aG9kKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo4NTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTozMDYzO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo0MTI0O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Nzc6IlxwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZhY3RvcnlcTWV0aG9kVGVzdDo6dGVzdENyZWF0ZVByb3RlY3RlZE1ldGhvZCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjU6InRlc3RDcmVhdGVQcm90ZWN0ZWRNZXRob2QiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319czo3NDoiXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmFjdG9yeVxNZXRob2RUZXN0Ojp0ZXN0Q3JlYXRlV2l0aERvY0Jsb2NrKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMzp7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMDY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6NDEzMTt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMjY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6NTE5Nzt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xWb2lkXyI6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjc0OiJccGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGYWN0b3J5XE1ldGhvZFRlc3Q6OnRlc3RDcmVhdGVXaXRoRG9jQmxvY2soKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIyOiJ0ZXN0Q3JlYXRlV2l0aERvY0Jsb2NrIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXR0cmlidXRlcyI7YTowOnt9fXM6NzI6IlxwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZhY3RvcnlcTWV0aG9kVGVzdDo6YnVpbGRDbGFzc01ldGhvZE1vY2soKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEyOTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo1MjQ5O31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE0NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo2MTc1O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjIyOiJcTW9ja2VyeVxNb2NrSW50ZXJmYWNlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6Ik1vY2tJbnRlcmZhY2UiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzI6IlxwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZhY3RvcnlcTWV0aG9kVGVzdDo6YnVpbGRDbGFzc01ldGhvZE1vY2soKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIwOiJidWlsZENsYXNzTWV0aG9kTW9jayI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czowOiIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMjoiXE1vY2tlcnlcTW9ja0ludGVyZmFjZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEzOiJNb2NrSW50ZXJmYWNlIjt9fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzI6IlxQaHBQYXJzZXJcTm9kZVxTdG10XENsYXNzTWV0aG9kIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTE6IkNsYXNzTWV0aG9kIjt9fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MzY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmFjdG9yeSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MjE6e3M6MToibSI7czo3OiJNb2NrZXJ5IjtzOjEzOiJNb2NrSW50ZXJmYWNlIjtzOjIxOiJNb2NrZXJ5XE1vY2tJbnRlcmZhY2UiO3M6MTg6IkRvY0Jsb2NrRGVzY3JpcHRvciI7czozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjtzOjI0OiJEb2NCbG9ja0ZhY3RvcnlJbnRlcmZhY2UiO3M6NDk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja0ZhY3RvcnlJbnRlcmZhY2UiO3M6NToiRnFzZW4iO3M6MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI7czoxMjoiQ2xhc3NFbGVtZW50IjtzOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXyI7czoxNjoiTWV0aG9kRGVzY3JpcHRvciI7czozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiO3M6MjI6IlByb2plY3RGYWN0b3J5U3RyYXRlZ3kiO3M6NTE6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvamVjdEZhY3RvcnlTdHJhdGVneSI7czoxNzoiU3RyYXRlZ3lDb250YWluZXIiO3M6NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcU3RyYXRlZ3lDb250YWluZXIiO3M6MzoiRG9jIjtzOjIxOiJQaHBQYXJzZXJcQ29tbWVudFxEb2MiO3M6ODoiRnVuY0NhbGwiO3M6Mjg6IlBocFBhcnNlclxOb2RlXEV4cHJcRnVuY0NhbGwiO3M6MTA6IklkZW50aWZpZXIiO3M6MjU6IlBocFBhcnNlclxOb2RlXElkZW50aWZpZXIiO3M6NDoiTmFtZSI7czoxOToiUGhwUGFyc2VyXE5vZGVcTmFtZSI7czoxMToiQ2xhc3NNZXRob2QiO3M6MzE6IlBocFBhcnNlclxOb2RlXFN0bXRcQ2xhc3NNZXRob2QiO3M6MTA6IkV4cHJlc3Npb24iO3M6MzA6IlBocFBhcnNlclxOb2RlXFN0bXRcRXhwcmVzc2lvbiI7czoxMToiQ292ZXJzQ2xhc3MiO3M6NDA6IlBIUFVuaXRcRnJhbWV3b3JrXEF0dHJpYnV0ZXNcQ292ZXJzQ2xhc3MiO3M6OToiVXNlc0NsYXNzIjtzOjM4OiJQSFBVbml0XEZyYW1ld29ya1xBdHRyaWJ1dGVzXFVzZXNDbGFzcyI7czo4OiJBcmd1bWVudCI7czoxNzoiUHJvcGhlY3lcQXJndW1lbnQiO3M6MTM6IlByb3BoZWN5VHJhaXQiO3M6MzA6IlByb3BoZWN5XFBocFVuaXRcUHJvcGhlY3lUcmFpdCI7czoxNDoiT2JqZWN0UHJvcGhlY3kiO3M6MzI6IlByb3BoZWN5XFByb3BoZWN5XE9iamVjdFByb3BoZWN5IjtzOjg6InN0ZENsYXNzIjtzOjg6InN0ZENsYXNzIjt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjc0OiJccGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGYWN0b3J5XE1ldGhvZFRlc3Q6OnRlc3RJdGVyYXRlc1N0YXRlbWVudHMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEzOntzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE0OTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo2MTgyO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE2NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTo3MDk3O31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFZvaWRfIjowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzQ6IlxwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZhY3RvcnlcTWV0aG9kVGVzdDo6dGVzdEl0ZXJhdGVzU3RhdGVtZW50cygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjI6InRlc3RJdGVyYXRlc1N0YXRlbWVudHMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhdHRyaWJ1dGVzIjthOjA6e319fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwB1c2VkVHJhaXRzIjthOjE6e3M6MzE6IlxQcm9waGVjeVxQaHBVbml0XFByb3BoZWN5VHJhaXQiO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozMToiXFByb3BoZWN5XFBocFVuaXRcUHJvcGhlY3lUcmFpdCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEzOiJQcm9waGVjeVRyYWl0Ijt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNjg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDg6IlxwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZhY3RvcnlcTWV0aG9kVGVzdCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEwOiJNZXRob2RUZXN0Ijt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGRvY0Jsb2NrIjtOO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBwYXJlbnQiO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NjoiXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmFjdG9yeVxUZXN0Q2FzZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6IlRlc3RDYXNlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGZpbmFsIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHJlYWRPbmx5IjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AYXR0cmlidXRlcyI7YTo2OntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBdHRyaWJ1dGUiOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEF0dHJpYnV0ZQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQxOiJcUEhQVW5pdFxGcmFtZXdvcmtcQXR0cmlidXRlc1xDb3ZlcnNDbGFzcyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJDb3ZlcnNDbGFzcyI7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEF0dHJpYnV0ZQBhcmd1bWVudHMiO2E6MTp7aTowO086NDE6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2FsbEFyZ3VtZW50IjoyOntzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDYWxsQXJndW1lbnQAdmFsdWUiO3M6NTE6IlxwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZhY3RvcnlcTWV0aG9kOjpjbGFzcyI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2FsbEFyZ3VtZW50AG5hbWUiO047fX19aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXR0cmlidXRlIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBdHRyaWJ1dGUAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MToiXFBIUFVuaXRcRnJhbWV3b3JrXEF0dHJpYnV0ZXNcQ292ZXJzQ2xhc3MiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMToiQ292ZXJzQ2xhc3MiO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBdHRyaWJ1dGUAYXJndW1lbnRzIjthOjE6e2k6MDtPOjQxOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENhbGxBcmd1bWVudCI6Mjp7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2FsbEFyZ3VtZW50AHZhbHVlIjtzOjYwOiJccGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGYWN0b3J5XEFic3RyYWN0RmFjdG9yeTo6Y2xhc3MiO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENhbGxBcmd1bWVudABuYW1lIjtOO319fWk6MjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEF0dHJpYnV0ZSI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXR0cmlidXRlAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzk6IlxQSFBVbml0XEZyYW1ld29ya1xBdHRyaWJ1dGVzXFVzZXNDbGFzcyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjk6IlVzZXNDbGFzcyI7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEF0dHJpYnV0ZQBhcmd1bWVudHMiO2E6MTp7aTowO086NDE6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2FsbEFyZ3VtZW50IjoyOntzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDYWxsQXJndW1lbnQAdmFsdWUiO3M6Mzg6IidccGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QnIjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDYWxsQXJndW1lbnQAbmFtZSI7Tjt9fX1pOjM7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBdHRyaWJ1dGUiOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEF0dHJpYnV0ZQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM5OiJcUEhQVW5pdFxGcmFtZXdvcmtcQXR0cmlidXRlc1xVc2VzQ2xhc3MiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo5OiJVc2VzQ2xhc3MiO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBdHRyaWJ1dGUAYXJndW1lbnRzIjthOjE6e2k6MDtPOjQxOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENhbGxBcmd1bWVudCI6Mjp7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2FsbEFyZ3VtZW50AHZhbHVlIjtzOjQwOiInXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQnIjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDYWxsQXJndW1lbnQAbmFtZSI7Tjt9fX1pOjQ7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBdHRyaWJ1dGUiOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEF0dHJpYnV0ZQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM5OiJcUEhQVW5pdFxGcmFtZXdvcmtcQXR0cmlidXRlc1xVc2VzQ2xhc3MiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo5OiJVc2VzQ2xhc3MiO31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBdHRyaWJ1dGUAYXJndW1lbnRzIjthOjE6e2k6MDtPOjQxOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENhbGxBcmd1bWVudCI6Mjp7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2FsbEFyZ3VtZW50AHZhbHVlIjtzOjQyOiInXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSciO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENhbGxBcmd1bWVudABuYW1lIjtOO319fWk6NTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEF0dHJpYnV0ZSI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXR0cmlidXRlAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzk6IlxQSFBVbml0XEZyYW1ld29ya1xBdHRyaWJ1dGVzXFVzZXNDbGFzcyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjk6IlVzZXNDbGFzcyI7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEF0dHJpYnV0ZQBhcmd1bWVudHMiO2E6MTp7aTowO086NDE6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2FsbEFyZ3VtZW50IjoyOntzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDYWxsQXJndW1lbnQAdmFsdWUiO3M6NDQ6IidccGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGYWN0b3J5XFR5cGUnIjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDYWxsQXJndW1lbnQAbmFtZSI7Tjt9fX19fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGludGVyZmFjZXMiO2E6MDp7fXM6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAdHJhaXRzIjthOjA6e31zOjQwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGVudW1zIjthOjA6e31zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGhhc2giO3M6MzI6IjM0ZTcwYWNhMGE4YjI0NGM2NzUzOTA4MzM5Yzg5ODA1IjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHBhdGgiO3M6OTQ6InZlbmRvci9waHBkb2N1bWVudG9yL3JlZmxlY3Rpb24vdGVzdHMvdW5pdC9waHBEb2N1bWVudG9yL1JlZmxlY3Rpb24vUGhwL0ZhY3RvcnkvTWV0aG9kVGVzdC5waHAiO3M6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAc291cmNlIjtzOjcxMDE6Ijw/cGhwCgpkZWNsYXJlKHN0cmljdF90eXBlcz0xKTsKCi8qKgogKiBUaGlzIGZpbGUgaXMgcGFydCBvZiBwaHBEb2N1bWVudG9yLgogKgogKiBGb3IgdGhlIGZ1bGwgY29weXJpZ2h0IGFuZCBsaWNlbnNlIGluZm9ybWF0aW9uLCBwbGVhc2UgdmlldyB0aGUgTElDRU5TRQogKiBmaWxlIHRoYXQgd2FzIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb3VyY2UgY29kZS4KICoKICogQGxpbmsgaHR0cDovL3BocGRvYy5vcmcKICovCgpuYW1lc3BhY2UgcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGYWN0b3J5OwoKdXNlIE1vY2tlcnkgYXMgbTsKdXNlIE1vY2tlcnlcTW9ja0ludGVyZmFjZTsKdXNlIHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayBhcyBEb2NCbG9ja0Rlc2NyaXB0b3I7CnVzZSBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tGYWN0b3J5SW50ZXJmYWNlOwp1c2UgcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuOwp1c2UgcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18gYXMgQ2xhc3NFbGVtZW50Owp1c2UgcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QgYXMgTWV0aG9kRGVzY3JpcHRvcjsKdXNlIHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvamVjdEZhY3RvcnlTdHJhdGVneTsKdXNlIHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcU3RyYXRlZ3lDb250YWluZXI7CnVzZSBQaHBQYXJzZXJcQ29tbWVudFxEb2M7CnVzZSBQaHBQYXJzZXJcTm9kZVxFeHByXEZ1bmNDYWxsOwp1c2UgUGhwUGFyc2VyXE5vZGVcSWRlbnRpZmllcjsKdXNlIFBocFBhcnNlclxOb2RlXE5hbWU7CnVzZSBQaHBQYXJzZXJcTm9kZVxTdG10XENsYXNzTWV0aG9kOwp1c2UgUGhwUGFyc2VyXE5vZGVcU3RtdFxFeHByZXNzaW9uOwp1c2UgUEhQVW5pdFxGcmFtZXdvcmtcQXR0cmlidXRlc1xDb3ZlcnNDbGFzczsKdXNlIFBIUFVuaXRcRnJhbWV3b3JrXEF0dHJpYnV0ZXNcVXNlc0NsYXNzOwp1c2UgUHJvcGhlY3lcQXJndW1lbnQ7CnVzZSBQcm9waGVjeVxQaHBVbml0XFByb3BoZWN5VHJhaXQ7CnVzZSBQcm9waGVjeVxQcm9waGVjeVxPYmplY3RQcm9waGVjeTsKdXNlIHN0ZENsYXNzOwoKdXNlIGZ1bmN0aW9uIGN1cnJlbnQ7CgojW0NvdmVyc0NsYXNzKE1ldGhvZDo6Y2xhc3MpXQojW0NvdmVyc0NsYXNzKEFic3RyYWN0RmFjdG9yeTo6Y2xhc3MpXQojW1VzZXNDbGFzcygnXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kJyldCiNbVXNlc0NsYXNzKCdccGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCcpXQojW1VzZXNDbGFzcygnXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eScpXQojW1VzZXNDbGFzcygnXHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmFjdG9yeVxUeXBlJyldCmNsYXNzIE1ldGhvZFRlc3QgZXh0ZW5kcyBUZXN0Q2FzZQp7CiAgICB1c2UgUHJvcGhlY3lUcmFpdDsKCiAgICBwcml2YXRlIE9iamVjdFByb3BoZWN5ICRkb2NCbG9ja0ZhY3Rvcnk7CgogICAgcHJvdGVjdGVkIGZ1bmN0aW9uIHNldFVwKCk6IHZvaWQKICAgIHsKICAgICAgICAkdGhpcy0+ZG9jQmxvY2tGYWN0b3J5ID0gJHRoaXMtPnByb3BoZXNpemUoRG9jQmxvY2tGYWN0b3J5SW50ZXJmYWNlOjpjbGFzcyk7CiAgICAgICAgJHRoaXMtPmZpeHR1cmUgPSBuZXcgTWV0aG9kKCR0aGlzLT5kb2NCbG9ja0ZhY3RvcnktPnJldmVhbCgpKTsKICAgIH0KCiAgICBwdWJsaWMgZnVuY3Rpb24gdGVzdE1hdGNoZXMoKTogdm9pZAogICAgewogICAgICAgICR0aGlzLT5hc3NlcnRGYWxzZSgkdGhpcy0+Zml4dHVyZS0+bWF0Y2hlcyhzZWxmOjpjcmVhdGVDb250ZXh0KG51bGwpLCBuZXcgc3RkQ2xhc3MoKSkpOwogICAgICAgICR0aGlzLT5hc3NlcnRUcnVlKCR0aGlzLT5maXh0dXJlLT5tYXRjaGVzKHNlbGY6OmNyZWF0ZUNvbnRleHQobnVsbCksIG06Om1vY2soQ2xhc3NNZXRob2Q6OmNsYXNzKSkpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiB0ZXN0Q3JlYXRlV2l0aG91dFBhcmFtZXRlcnMoKTogdm9pZAogICAgewogICAgICAgICRjbGFzc01ldGhvZE1vY2sgPSAkdGhpcy0+YnVpbGRDbGFzc01ldGhvZE1vY2soKTsKICAgICAgICAkY2xhc3NNZXRob2RNb2NrLT5wYXJhbXMgPSBbXTsKICAgICAgICAkY2xhc3NNZXRob2RNb2NrLT5zaG91bGRSZWNlaXZlKCdpc1ByaXZhdGUnKS0+b25jZSgpLT5hbmRSZXR1cm4oZmFsc2UpOwogICAgICAgICRjbGFzc01ldGhvZE1vY2stPnNob3VsZFJlY2VpdmUoJ2lzUHJvdGVjdGVkJyktPm9uY2UoKS0+YW5kUmV0dXJuKGZhbHNlKTsKICAgICAgICAkY2xhc3NNZXRob2RNb2NrLT5zaG91bGRSZWNlaXZlKCdnZXREb2NDb21tZW50JyktPm9uY2UoKS0+YW5kUmV0dXJuTnVsbCgpOwogICAgICAgICRjbGFzc01ldGhvZE1vY2stPnNob3VsZFJlY2VpdmUoJ2dldFJldHVyblR5cGUnKS0+b25jZSgpLT5hbmRSZXR1cm4obnVsbCk7CgogICAgICAgICRjb250YWluZXJNb2NrID0gbTo6bW9jayhTdHJhdGVneUNvbnRhaW5lcjo6Y2xhc3MpOwogICAgICAgICRjb250YWluZXJNb2NrLT5zaG91bGRSZWNlaXZlKCdmaW5kTWF0Y2hpbmcnKS0+bmV2ZXIoKTsKCiAgICAgICAgJGNsYXNzID0gbmV3IENsYXNzRWxlbWVudChuZXcgRnFzZW4oJ1xcTXlDbGFzcycpKTsKICAgICAgICAkdGhpcy0+Zml4dHVyZS0+Y3JlYXRlKHNlbGY6OmNyZWF0ZUNvbnRleHQobnVsbCktPnB1c2goJGNsYXNzKSwgJGNsYXNzTWV0aG9kTW9jaywgJGNvbnRhaW5lck1vY2spOwoKICAgICAgICAkbWV0aG9kID0gY3VycmVudCgkY2xhc3MtPmdldE1ldGhvZHMoKSk7CiAgICAgICAgJHRoaXMtPmFzc2VydEluc3RhbmNlT2YoTWV0aG9kRGVzY3JpcHRvcjo6Y2xhc3MsICRtZXRob2QpOwogICAgICAgICR0aGlzLT5hc3NlcnRFcXVhbHMoJ1xTb21lU3BhY2VcQ2xhc3M6OmZ1bmN0aW9uKCknLCAoc3RyaW5nKSAkbWV0aG9kLT5nZXRGcXNlbigpKTsKICAgICAgICAkdGhpcy0+YXNzZXJ0RXF1YWxzKCdwdWJsaWMnLCAoc3RyaW5nKSAkbWV0aG9kLT5nZXRWaXNpYmlsaXR5KCkpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiB0ZXN0Q3JlYXRlUHJvdGVjdGVkTWV0aG9kKCk6IHZvaWQKICAgIHsKICAgICAgICAkY2xhc3NNZXRob2RNb2NrID0gJHRoaXMtPmJ1aWxkQ2xhc3NNZXRob2RNb2NrKCk7CiAgICAgICAgJGNsYXNzTWV0aG9kTW9jay0+cGFyYW1zID0gW107CiAgICAgICAgJGNsYXNzTWV0aG9kTW9jay0+c2hvdWxkUmVjZWl2ZSgnaXNQcml2YXRlJyktPm9uY2UoKS0+YW5kUmV0dXJuKGZhbHNlKTsKICAgICAgICAkY2xhc3NNZXRob2RNb2NrLT5zaG91bGRSZWNlaXZlKCdpc1Byb3RlY3RlZCcpLT5vbmNlKCktPmFuZFJldHVybih0cnVlKTsKICAgICAgICAkY2xhc3NNZXRob2RNb2NrLT5zaG91bGRSZWNlaXZlKCdnZXREb2NDb21tZW50JyktPm9uY2UoKS0+YW5kUmV0dXJuTnVsbCgpOwogICAgICAgICRjbGFzc01ldGhvZE1vY2stPnNob3VsZFJlY2VpdmUoJ2dldFJldHVyblR5cGUnKS0+b25jZSgpLT5hbmRSZXR1cm4obnVsbCk7CgogICAgICAgICRjb250YWluZXJNb2NrID0gbTo6bW9jayhTdHJhdGVneUNvbnRhaW5lcjo6Y2xhc3MpOwogICAgICAgICRjb250YWluZXJNb2NrLT5zaG91bGRSZWNlaXZlKCdmaW5kTWF0Y2hpbmcnKS0+bmV2ZXIoKTsKCiAgICAgICAgJGNsYXNzID0gbmV3IENsYXNzRWxlbWVudChuZXcgRnFzZW4oJ1xcTXlDbGFzcycpKTsKICAgICAgICAkdGhpcy0+Zml4dHVyZS0+Y3JlYXRlKHNlbGY6OmNyZWF0ZUNvbnRleHQobnVsbCktPnB1c2goJGNsYXNzKSwgJGNsYXNzTWV0aG9kTW9jaywgJGNvbnRhaW5lck1vY2spOwoKICAgICAgICAkbWV0aG9kID0gY3VycmVudCgkY2xhc3MtPmdldE1ldGhvZHMoKSk7CiAgICAgICAgJHRoaXMtPmFzc2VydEluc3RhbmNlT2YoTWV0aG9kRGVzY3JpcHRvcjo6Y2xhc3MsICRtZXRob2QpOwogICAgICAgICR0aGlzLT5hc3NlcnRFcXVhbHMoJ1xTb21lU3BhY2VcQ2xhc3M6OmZ1bmN0aW9uKCknLCAoc3RyaW5nKSAkbWV0aG9kLT5nZXRGcXNlbigpKTsKICAgICAgICAkdGhpcy0+YXNzZXJ0RXF1YWxzKCdwcm90ZWN0ZWQnLCAoc3RyaW5nKSAkbWV0aG9kLT5nZXRWaXNpYmlsaXR5KCkpOwogICAgfQoKICAgIHB1YmxpYyBmdW5jdGlvbiB0ZXN0Q3JlYXRlV2l0aERvY0Jsb2NrKCk6IHZvaWQKICAgIHsKICAgICAgICAkZG9jID0gbmV3IERvYygnVGV4dCcpOwogICAgICAgICRjbGFzc01ldGhvZE1vY2sgPSAkdGhpcy0+YnVpbGRDbGFzc01ldGhvZE1vY2soKTsKICAgICAgICAkY2xhc3NNZXRob2RNb2NrLT5wYXJhbXMgPSBbXTsKICAgICAgICAkY2xhc3NNZXRob2RNb2NrLT5zaG91bGRSZWNlaXZlKCdpc1ByaXZhdGUnKS0+b25jZSgpLT5hbmRSZXR1cm4odHJ1ZSk7CiAgICAgICAgJGNsYXNzTWV0aG9kTW9jay0+c2hvdWxkUmVjZWl2ZSgnZ2V0RG9jQ29tbWVudCcpLT5hbmRSZXR1cm4oJGRvYyk7CiAgICAgICAgJGNsYXNzTWV0aG9kTW9jay0+c2hvdWxkUmVjZWl2ZSgnZ2V0UmV0dXJuVHlwZScpLT5vbmNlKCktPmFuZFJldHVybihudWxsKTsKCiAgICAgICAgJGRvY0Jsb2NrID0gbmV3IERvY0Jsb2NrRGVzY3JpcHRvcignJyk7CiAgICAgICAgJHRoaXMtPmRvY0Jsb2NrRmFjdG9yeS0+Y3JlYXRlKCdUZXh0JywgbnVsbCktPndpbGxSZXR1cm4oJGRvY0Jsb2NrKTsKICAgICAgICAkY29udGFpbmVyTW9jayA9ICR0aGlzLT5wcm9waGVzaXplKFN0cmF0ZWd5Q29udGFpbmVyOjpjbGFzcyk7CgogICAgICAgICRjbGFzcyA9IG5ldyBDbGFzc0VsZW1lbnQobmV3IEZxc2VuKCdcXE15Q2xhc3MnKSk7CiAgICAgICAgJHRoaXMtPmZpeHR1cmUtPmNyZWF0ZShzZWxmOjpjcmVhdGVDb250ZXh0KG51bGwpLT5wdXNoKCRjbGFzcyksICRjbGFzc01ldGhvZE1vY2ssICRjb250YWluZXJNb2NrLT5yZXZlYWwoKSk7CgogICAgICAgICRtZXRob2QgPSBjdXJyZW50KCRjbGFzcy0+Z2V0TWV0aG9kcygpKTsKICAgICAgICAkdGhpcy0+YXNzZXJ0SW5zdGFuY2VPZihNZXRob2REZXNjcmlwdG9yOjpjbGFzcywgJG1ldGhvZCk7CiAgICAgICAgJHRoaXMtPmFzc2VydEVxdWFscygnXFNvbWVTcGFjZVxDbGFzczo6ZnVuY3Rpb24oKScsIChzdHJpbmcpICRtZXRob2QtPmdldEZxc2VuKCkpOwogICAgICAgICR0aGlzLT5hc3NlcnRTYW1lKCRkb2NCbG9jaywgJG1ldGhvZC0+Z2V0RG9jQmxvY2soKSk7CiAgICB9CgogICAgLyoqIEByZXR1cm4gTW9ja0ludGVyZmFjZXxDbGFzc01ldGhvZCAqLwogICAgcHJpdmF0ZSBmdW5jdGlvbiBidWlsZENsYXNzTWV0aG9kTW9jaygpOiBNb2NrSW50ZXJmYWNlCiAgICB7CiAgICAgICAgJG1ldGhvZE1vY2sgPSBtOjptb2NrKENsYXNzTWV0aG9kOjpjbGFzcyk7CiAgICAgICAgJG1ldGhvZE1vY2stPm5hbWUgPSBuZXcgSWRlbnRpZmllcignZnVuY3Rpb24nKTsKICAgICAgICAkbWV0aG9kTW9jay0+YnlSZWYgPSBmYWxzZTsKICAgICAgICAkbWV0aG9kTW9jay0+c3RtdHMgPSBbXTsKICAgICAgICAkbWV0aG9kTW9jay0+c2hvdWxkUmVjZWl2ZSgnZ2V0QXR0cmlidXRlJyktPmFuZFJldHVybihuZXcgRnFzZW4oJ1xTb21lU3BhY2VcQ2xhc3M6OmZ1bmN0aW9uKCknKSk7CiAgICAgICAgJG1ldGhvZE1vY2stPnBhcmFtcyA9IFtdOwoKICAgICAgICAkbWV0aG9kTW9jay0+c2hvdWxkUmVjZWl2ZSgnaXNTdGF0aWMnKS0+b25jZSgpLT5hbmRSZXR1cm4odHJ1ZSk7CiAgICAgICAgJG1ldGhvZE1vY2stPnNob3VsZFJlY2VpdmUoJ2lzRmluYWwnKS0+b25jZSgpLT5hbmRSZXR1cm4odHJ1ZSk7CiAgICAgICAgJG1ldGhvZE1vY2stPnNob3VsZFJlY2VpdmUoJ2lzQWJzdHJhY3QnKS0+b25jZSgpLT5hbmRSZXR1cm4odHJ1ZSk7CiAgICAgICAgJG1ldGhvZE1vY2stPnNob3VsZFJlY2VpdmUoJ2dldExpbmUnKS0+b25jZSgpLT5hbmRSZXR1cm4oMSk7CiAgICAgICAgJG1ldGhvZE1vY2stPnNob3VsZFJlY2VpdmUoJ2dldFN0YXJ0RmlsZVBvcycpLT5vbmNlKCktPmFuZFJldHVybigxMCk7CiAgICAgICAgJG1ldGhvZE1vY2stPnNob3VsZFJlY2VpdmUoJ2dldEVuZExpbmUnKS0+b25jZSgpLT5hbmRSZXR1cm4oMik7CiAgICAgICAgJG1ldGhvZE1vY2stPnNob3VsZFJlY2VpdmUoJ2dldEVuZEZpbGVQb3MnKS0+b25jZSgpLT5hbmRSZXR1cm4oMjApOwoKICAgICAgICByZXR1cm4gJG1ldGhvZE1vY2s7CiAgICB9CgogICAgcHVibGljIGZ1bmN0aW9uIHRlc3RJdGVyYXRlc1N0YXRlbWVudHMoKTogdm9pZAogICAgewogICAgICAgICRtZXRob2QxID0gJHRoaXMtPmJ1aWxkQ2xhc3NNZXRob2RNb2NrKCk7CiAgICAgICAgJG1ldGhvZDEtPnNob3VsZFJlY2VpdmUoJ2lzUHJpdmF0ZScpLT5vbmNlKCktPmFuZFJldHVybih0cnVlKTsKICAgICAgICAkbWV0aG9kMS0+c2hvdWxkUmVjZWl2ZSgnZ2V0RG9jQ29tbWVudCcpLT5hbmRSZXR1cm4obnVsbCk7CiAgICAgICAgJG1ldGhvZDEtPnNob3VsZFJlY2VpdmUoJ2dldFJldHVyblR5cGUnKS0+b25jZSgpLT5hbmRSZXR1cm4obnVsbCk7CiAgICAgICAgJG1ldGhvZDEtPnN0bXRzID0gW25ldyBFeHByZXNzaW9uKG5ldyBGdW5jQ2FsbChuZXcgTmFtZSgnaG9vaycpKSldOwoKICAgICAgICAkc3RyYXRlZ3lNb2NrID0gJHRoaXMtPnByb3BoZXNpemUoUHJvamVjdEZhY3RvcnlTdHJhdGVneTo6Y2xhc3MpOwoKICAgICAgICAkY29udGFpbmVyTW9jayA9ICR0aGlzLT5wcm9waGVzaXplKFN0cmF0ZWd5Q29udGFpbmVyOjpjbGFzcyk7CiAgICAgICAgJGNvbnRhaW5lck1vY2stPmZpbmRNYXRjaGluZygKICAgICAgICAgICAgQXJndW1lbnQ6OnR5cGUoQ29udGV4dFN0YWNrOjpjbGFzcyksCiAgICAgICAgICAgIEFyZ3VtZW50Ojp0eXBlKEV4cHJlc3Npb246OmNsYXNzKSwKICAgICAgICApLT53aWxsUmV0dXJuKCRzdHJhdGVneU1vY2stPnJldmVhbCgpKS0+c2hvdWxkQmVDYWxsZWRPbmNlKCk7CgogICAgICAgICRjbGFzcyA9IG5ldyBDbGFzc0VsZW1lbnQobmV3IEZxc2VuKCdcXE15Q2xhc3MnKSk7CiAgICAgICAgJHRoaXMtPmZpeHR1cmUtPmNyZWF0ZShzZWxmOjpjcmVhdGVDb250ZXh0KG51bGwpLT5wdXNoKCRjbGFzcyksICRtZXRob2QxLCAkY29udGFpbmVyTW9jay0+cmV2ZWFsKCkpOwogICAgfQp9CiI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MzU6IlRoaXMgZmlsZSBpcyBwYXJ0IG9mIHBocERvY3VtZW50b3IuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEyMDoiRm9yIHRoZSBmdWxsIGNvcHlyaWdodCBhbmQgbGljZW5zZSBpbmZvcm1hdGlvbiwgcGxlYXNlIHZpZXcgdGhlIExJQ0VOU0UKZmlsZSB0aGF0IHdhcyBkaXN0cmlidXRlZCB3aXRoIHRoaXMgc291cmNlIGNvZGUuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXExpbmsiOjM6e3M6NzoiACoAbmFtZSI7czo0OiJsaW5rIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7TjtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcTGluawBsaW5rIjtzOjE3OiJodHRwOi8vcGhwZG9jLm9yZyI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAbWV0YWRhdGEiO2E6MDp7fX0=";