1778987833
441d63ebbc39eba359c9061ece8482bd-phpdoc%3A5b16a547bbbeaddb8ddf40c4a071af56-ca450cdf7e68091e12e4d85ec408b110
s:31980:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjEwOiJMb2dnZXIucGhwIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWVzcGFjZXMiO2E6MTp7czo3OiJcQ29uZmlnIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzoiXENvbmZpZyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjY6IkNvbmZpZyI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGluY2x1ZGVzIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGZ1bmN0aW9ucyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjb25zdGFudHMiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY2xhc3NlcyI7YToxOntzOjE0OiJcQ29uZmlnXExvZ2dlciI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18iOjE1OntzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AaW1wbGVtZW50cyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGNvbnN0YW50cyI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHByb3BlcnRpZXMiO2E6Mzp7czoyNjoiXENvbmZpZ1xMb2dnZXI6OiR0aHJlc2hvbGQiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjE0OntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0MjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI2OiJcQ29uZmlnXExvZ2dlcjo6JHRocmVzaG9sZCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjk6InRocmVzaG9sZCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxNzM6Ii0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkVycm9yIExvZ2dpbmcgVGhyZXNob2xkCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEwMDc6IllvdSBjYW4gZW5hYmxlIGVycm9yIGxvZ2dpbmcgYnkgc2V0dGluZyBhIHRocmVzaG9sZCBvdmVyIHplcm8uIFRoZQp0aHJlc2hvbGQgZGV0ZXJtaW5lcyB3aGF0IGdldHMgbG9nZ2VkLiBBbnkgdmFsdWVzIGJlbG93IG9yIGVxdWFsIHRvIHRoZQp0aHJlc2hvbGQgd2lsbCBiZSBsb2dnZWQuCgpUaHJlc2hvbGQgb3B0aW9ucyBhcmU6CgotIDAgPSBEaXNhYmxlcyBsb2dnaW5nLCBFcnJvciBsb2dnaW5nIFRVUk5FRCBPRkYKLSAxID0gRW1lcmdlbmN5IE1lc3NhZ2VzIC0gU3lzdGVtIGlzIHVudXNhYmxlCi0gMiA9IEFsZXJ0IE1lc3NhZ2VzIC0gQWN0aW9uIE11c3QgQmUgVGFrZW4gSW1tZWRpYXRlbHkKLSAzID0gQ3JpdGljYWwgTWVzc2FnZXMgLSBBcHBsaWNhdGlvbiBjb21wb25lbnQgdW5hdmFpbGFibGUsIHVuZXhwZWN0ZWQgZXhjZXB0aW9uLgotIDQgPSBSdW50aW1lIEVycm9ycyAtIERvbid0IG5lZWQgaW1tZWRpYXRlIGFjdGlvbiwgYnV0IHNob3VsZCBiZSBtb25pdG9yZWQuCi0gNSA9IFdhcm5pbmdzIC0gRXhjZXB0aW9uYWwgb2NjdXJyZW5jZXMgdGhhdCBhcmUgbm90IGVycm9ycy4KLSA2ID0gTm90aWNlcyAtIE5vcm1hbCBidXQgc2lnbmlmaWNhbnQgZXZlbnRzLgotIDcgPSBJbmZvIC0gSW50ZXJlc3RpbmcgZXZlbnRzLCBsaWtlIHVzZXIgbG9nZ2luZyBpbiwgZXRjLgotIDggPSBEZWJ1ZyAtIERldGFpbGVkIGRlYnVnIGluZm9ybWF0aW9uLgotIDkgPSBBbGwgTWVzc2FnZXMKCllvdSBjYW4gYWxzbyBwYXNzIGFuIGFycmF5IHdpdGggdGhyZXNob2xkIGxldmVscyB0byBzaG93IGluZGl2aWR1YWwgZXJyb3IgdHlwZXMKCiAgICBhcnJheSgxLCAyLCAzLCA4KSA9IEVtZXJnZW5jeSwgQWxlcnQsIENyaXRpY2FsLCBhbmQgRGVidWcgbWVzc2FnZXMKCkZvciBhIGxpdmUgc2l0ZSB5b3UnbGwgdXN1YWxseSBlbmFibGUgQ3JpdGljYWwgb3IgaGlnaGVyICgzKSB0byBiZSBsb2dnZWQgb3RoZXJ3aXNlCnlvdXIgbG9nIGZpbGVzIHdpbGwgZmlsbCB1cCB2ZXJ5IGZhc3QuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9aToxO086NDI6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQc2V1ZG9UeXBlc1xMaXN0XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6NjoiQ29uZmlnIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTozOntzOjEwOiJCYXNlQ29uZmlnIjtzOjI5OiJDb2RlSWduaXRlclxDb25maWdcQmFzZUNvbmZpZyI7czoxMToiRmlsZUhhbmRsZXIiO3M6MzY6IkNvZGVJZ25pdGVyXExvZ1xIYW5kbGVyc1xGaWxlSGFuZGxlciI7czoxNjoiSGFuZGxlckludGVyZmFjZSI7czo0MToiQ29kZUlnbml0ZXJcTG9nXEhhbmRsZXJzXEhhbmRsZXJJbnRlcmZhY2UiO319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24iOjI6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AZXhwcmVzc2lvbiI7czozNjoiRU5WSVJPTk1FTlQgPT09ICdwcm9kdWN0aW9uJyA/IDQgOiA5IjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAHBhcnRzIjthOjA6e319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGhvb2tzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXJ0dWFsIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fXM6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGF0dHJpYnV0ZXMiO2E6MDp7fX1zOjI3OiJcQ29uZmlnXExvZ2dlcjo6JGRhdGVGb3JtYXQiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjE0OntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjUyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1MjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI3OiJcQ29uZmlnXExvZ2dlcjo6JGRhdGVGb3JtYXQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMDoiZGF0ZUZvcm1hdCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxNzA6Ii0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkRhdGUgRm9ybWF0IGZvciBMb2dzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEwNzoiRWFjaCBpdGVtIHRoYXQgaXMgbG9nZ2VkIGhhcyBhbiBhc3NvY2lhdGVkIGRhdGUuIFlvdSBjYW4gdXNlIFBIUCBkYXRlCmNvZGVzIHRvIHNldCB5b3VyIG93biBkYXRlIGZvcm1hdHRpbmciO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjUyO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uIjoyOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAGV4cHJlc3Npb24iO3M6MTM6IidZLW0tZCBIOmk6cyciO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AcGFydHMiO2E6MDp7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAaG9va3MiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpcnR1YWwiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAYXR0cmlidXRlcyI7YTowOnt9fXM6MjU6IlxDb25maWdcTG9nZ2VyOjokaGFuZGxlcnMiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjE0OntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjc5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNTA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyNToiXENvbmZpZ1xMb2dnZXI6OiRoYW5kbGVycyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjg6ImhhbmRsZXJzIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjE2MjoiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KTG9nIEhhbmRsZXJzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjg4OToiVGhlIGxvZ2dpbmcgc3lzdGVtIHN1cHBvcnRzIG11bHRpcGxlIGFjdGlvbnMgdG8gYmUgdGFrZW4gd2hlbiBzb21ldGhpbmcKaXMgbG9nZ2VkLiBUaGlzIGlzIGRvbmUgYnkgYWxsb3dpbmcgZm9yIG11bHRpcGxlIEhhbmRsZXJzLCBzcGVjaWFsIGNsYXNzZXMKZGVzaWduZWQgdG8gd3JpdGUgdGhlIGxvZyB0byB0aGVpciBjaG9zZW4gZGVzdGluYXRpb25zLCB3aGV0aGVyIHRoYXQgaXMKYSBmaWxlIG9uIHRoZSBnZXRTZXJ2ZXIsIGEgY2xvdWQtYmFzZWQgc2VydmljZSwgb3IgZXZlbiB0YWtpbmcgYWN0aW9ucyBzdWNoCmFzIGVtYWlsaW5nIHRoZSBkZXYgdGVhbS4KCkVhY2ggaGFuZGxlciBpcyBkZWZpbmVkIGJ5IHRoZSBjbGFzcyBuYW1lIHVzZWQgZm9yIHRoYXQgaGFuZGxlciwgYW5kIGl0Ck1VU1QgaW1wbGVtZW50IHRoZSBgQ29kZUlnbml0ZXJcTG9nXEhhbmRsZXJzXEhhbmRsZXJJbnRlcmZhY2VgIGludGVyZmFjZS4KClRoZSB2YWx1ZSBvZiBlYWNoIGtleSBpcyBhbiBhcnJheSBvZiBjb25maWd1cmF0aW9uIGl0ZW1zIHRoYXQgYXJlIHNlbnQKdG8gdGhlIGNvbnN0cnVjdG9yIG9mIGVhY2ggaGFuZGxlci4gVGhlIG9ubHkgcmVxdWlyZWQgY29uZmlndXJhdGlvbiBpdGVtCmlzIHRoZSAnaGFuZGxlcycgZWxlbWVudCwgd2hpY2ggbXVzdCBiZSBhbiBhcnJheSBvZiBpbnRlZ2VyIGxvZyBsZXZlbHMuClRoaXMgaXMgbW9zdCBlYXNpbHkgaGFuZGxlZCBieSB1c2luZyB0aGUgY29uc3RhbnRzIGRlZmluZWQgaW4gdGhlCmBQc3JcTG9nXExvZ0xldmVsYCBjbGFzcy4KCkhhbmRsZXJzIGFyZSBleGVjdXRlZCBpbiB0aGUgb3JkZXIgZGVmaW5lZCBpbiB0aGlzIGFycmF5LCBzdGFydGluZyB3aXRoCnRoZSBoYW5kbGVyIG9uIHRvcCBhbmQgY29udGludWluZyBkb3duLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YTozOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31pOjE7Tzo0MjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBzZXVkb1R5cGVzXExpc3RfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319aToyO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fXM6MTA6IgAqAGtleVR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6MTA6IgAqAGtleVR5cGUiO086NDI6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDbGFzc1N0cmluZyI6MTp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDbGFzc1N0cmluZwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQyOiJcQ29kZUlnbml0ZXJcTG9nXEhhbmRsZXJzXEhhbmRsZXJJbnRlcmZhY2UiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiSGFuZGxlckludGVyZmFjZSI7fX1zOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6NTI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24iOjI6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEV4cHJlc3Npb24AZXhwcmVzc2lvbiI7czoxMjU1OiJbCiAgICAvKgogICAgICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICAqIEZpbGUgSGFuZGxlcgogICAgICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAgICAqLwogICAgXENvZGVJZ25pdGVyXExvZ1xIYW5kbGVyc1xGaWxlSGFuZGxlcjo6Y2xhc3MgPT4gWwogICAgICAgIC8vIFRoZSBsb2cgbGV2ZWxzIHRoYXQgdGhpcyBoYW5kbGVyIHdpbGwgaGFuZGxlLgogICAgICAgICdoYW5kbGVzJyA9PiBbJ2NyaXRpY2FsJywgJ2FsZXJ0JywgJ2VtZXJnZW5jeScsICdkZWJ1ZycsICdlcnJvcicsICdpbmZvJywgJ25vdGljZScsICd3YXJuaW5nJ10sCiAgICAgICAgLyoKICAgICAgICAgKiBUaGUgZGVmYXVsdCBmaWxlbmFtZSBleHRlbnNpb24gZm9yIGxvZyBmaWxlcy4KICAgICAgICAgKiBBbiBleHRlbnNpb24gb2YgJ3BocCcgYWxsb3dzIGZvciBwcm90ZWN0aW5nIHRoZSBsb2cgZmlsZXMgdmlhIGJhc2ljCiAgICAgICAgICogc2NyaXB0aW5nLCB3aGVuIHRoZXkgYXJlIHRvIGJlIHN0b3JlZCB1bmRlciBhIHB1YmxpY2x5IGFjY2Vzc2libGUgZGlyZWN0b3J5LgogICAgICAgICAqCiAgICAgICAgICogTk9URTogTGVhdmluZyBpdCBibGFuayB3aWxsIGRlZmF1bHQgdG8gJ2xvZycuCiAgICAgICAgICovCiAgICAgICAgJ2ZpbGVFeHRlbnNpb24nID0+ICcnLAogICAgICAgIC8qCiAgICAgICAgICogVGhlIGZpbGUgc3lzdGVtIHBlcm1pc3Npb25zIHRvIGJlIGFwcGxpZWQgb24gbmV3bHkgY3JlYXRlZCBsb2cgZmlsZXMuCiAgICAgICAgICoKICAgICAgICAgKiBJTVBPUlRBTlQ6IFRoaXMgTVVTVCBiZSBhbiBpbnRlZ2VyIChubyBxdW90ZXMpIGFuZCB5b3UgTVVTVCB1c2Ugb2N0YWwKICAgICAgICAgKiBpbnRlZ2VyIG5vdGF0aW9uIChpLmUuIDA3MDAsIDA2NDQsIGV0Yy4pCiAgICAgICAgICovCiAgICAgICAgJ2ZpbGVQZXJtaXNzaW9ucycgPT4gMDY0NCwKICAgICAgICAvKgogICAgICAgICAqIExvZ2dpbmcgRGlyZWN0b3J5IFBhdGgKICAgICAgICAgKgogICAgICAgICAqIEJ5IGRlZmF1bHQsIGxvZ3MgYXJlIHdyaXR0ZW4gdG8gV1JJVEVQQVRIIC4gJ2xvZ3MvJwogICAgICAgICAqIFNwZWNpZnkgYSBkaWZmZXJlbnQgZGVzdGluYXRpb24gaGVyZSwgaWYgZGVzaXJlZC4KICAgICAgICAgKi8KICAgICAgICAncGF0aCcgPT4gJycsCiAgICBdLApdIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxFeHByZXNzaW9uAHBhcnRzIjthOjA6e319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBob29rcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlydHVhbCI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e31zOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBhdHRyaWJ1dGVzIjthOjA6e319fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBtZXRob2RzIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AdXNlZFRyYWl0cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTUxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjE0OiJcQ29uZmlnXExvZ2dlciI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjY6IkxvZ2dlciI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBkb2NCbG9jayI7TjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AcGFyZW50IjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzA6IlxDb2RlSWduaXRlclxDb25maWdcQmFzZUNvbmZpZyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEwOiJCYXNlQ29uZmlnIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGZpbmFsIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHJlYWRPbmx5IjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGFkYXRhIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AYXR0cmlidXRlcyI7YTowOnt9fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGludGVyZmFjZXMiO2E6MDp7fXM6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAdHJhaXRzIjthOjA6e31zOjQwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGVudW1zIjthOjA6e31zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGhhc2giO3M6MzI6ImNhNDUwY2RmN2U2ODA5MWUxMmU0ZDg1ZWM0MDhiMTEwIjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHBhdGgiO3M6MjE6ImFwcC9Db25maWcvTG9nZ2VyLnBocCI7czo0MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBzb3VyY2UiO3M6NjIxMToiPD9waHANCg0KbmFtZXNwYWNlIENvbmZpZzsNCg0KdXNlIENvZGVJZ25pdGVyXENvbmZpZ1xCYXNlQ29uZmlnOw0KdXNlIENvZGVJZ25pdGVyXExvZ1xIYW5kbGVyc1xGaWxlSGFuZGxlcjsNCnVzZSBDb2RlSWduaXRlclxMb2dcSGFuZGxlcnNcSGFuZGxlckludGVyZmFjZTsNCg0KY2xhc3MgTG9nZ2VyIGV4dGVuZHMgQmFzZUNvbmZpZw0Kew0KICAgIC8qKg0KICAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQogICAgICogRXJyb3IgTG9nZ2luZyBUaHJlc2hvbGQNCiAgICAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KICAgICAqDQogICAgICogWW91IGNhbiBlbmFibGUgZXJyb3IgbG9nZ2luZyBieSBzZXR0aW5nIGEgdGhyZXNob2xkIG92ZXIgemVyby4gVGhlDQogICAgICogdGhyZXNob2xkIGRldGVybWluZXMgd2hhdCBnZXRzIGxvZ2dlZC4gQW55IHZhbHVlcyBiZWxvdyBvciBlcXVhbCB0byB0aGUNCiAgICAgKiB0aHJlc2hvbGQgd2lsbCBiZSBsb2dnZWQuDQogICAgICoNCiAgICAgKiBUaHJlc2hvbGQgb3B0aW9ucyBhcmU6DQogICAgICoNCiAgICAgKiAtIDAgPSBEaXNhYmxlcyBsb2dnaW5nLCBFcnJvciBsb2dnaW5nIFRVUk5FRCBPRkYNCiAgICAgKiAtIDEgPSBFbWVyZ2VuY3kgTWVzc2FnZXMgLSBTeXN0ZW0gaXMgdW51c2FibGUNCiAgICAgKiAtIDIgPSBBbGVydCBNZXNzYWdlcyAtIEFjdGlvbiBNdXN0IEJlIFRha2VuIEltbWVkaWF0ZWx5DQogICAgICogLSAzID0gQ3JpdGljYWwgTWVzc2FnZXMgLSBBcHBsaWNhdGlvbiBjb21wb25lbnQgdW5hdmFpbGFibGUsIHVuZXhwZWN0ZWQgZXhjZXB0aW9uLg0KICAgICAqIC0gNCA9IFJ1bnRpbWUgRXJyb3JzIC0gRG9uJ3QgbmVlZCBpbW1lZGlhdGUgYWN0aW9uLCBidXQgc2hvdWxkIGJlIG1vbml0b3JlZC4NCiAgICAgKiAtIDUgPSBXYXJuaW5ncyAtIEV4Y2VwdGlvbmFsIG9jY3VycmVuY2VzIHRoYXQgYXJlIG5vdCBlcnJvcnMuDQogICAgICogLSA2ID0gTm90aWNlcyAtIE5vcm1hbCBidXQgc2lnbmlmaWNhbnQgZXZlbnRzLg0KICAgICAqIC0gNyA9IEluZm8gLSBJbnRlcmVzdGluZyBldmVudHMsIGxpa2UgdXNlciBsb2dnaW5nIGluLCBldGMuDQogICAgICogLSA4ID0gRGVidWcgLSBEZXRhaWxlZCBkZWJ1ZyBpbmZvcm1hdGlvbi4NCiAgICAgKiAtIDkgPSBBbGwgTWVzc2FnZXMNCiAgICAgKg0KICAgICAqIFlvdSBjYW4gYWxzbyBwYXNzIGFuIGFycmF5IHdpdGggdGhyZXNob2xkIGxldmVscyB0byBzaG93IGluZGl2aWR1YWwgZXJyb3IgdHlwZXMNCiAgICAgKg0KICAgICAqICAgICBhcnJheSgxLCAyLCAzLCA4KSA9IEVtZXJnZW5jeSwgQWxlcnQsIENyaXRpY2FsLCBhbmQgRGVidWcgbWVzc2FnZXMNCiAgICAgKg0KICAgICAqIEZvciBhIGxpdmUgc2l0ZSB5b3UnbGwgdXN1YWxseSBlbmFibGUgQ3JpdGljYWwgb3IgaGlnaGVyICgzKSB0byBiZSBsb2dnZWQgb3RoZXJ3aXNlDQogICAgICogeW91ciBsb2cgZmlsZXMgd2lsbCBmaWxsIHVwIHZlcnkgZmFzdC4NCiAgICAgKg0KICAgICAqIEB2YXIgaW50fGxpc3Q8aW50Pg0KICAgICAqLw0KICAgIHB1YmxpYyAkdGhyZXNob2xkID0gKEVOVklST05NRU5UID09PSAncHJvZHVjdGlvbicpID8gNCA6IDk7DQoNCiAgICAvKioNCiAgICAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KICAgICAqIERhdGUgRm9ybWF0IGZvciBMb2dzDQogICAgICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiAgICAgKg0KICAgICAqIEVhY2ggaXRlbSB0aGF0IGlzIGxvZ2dlZCBoYXMgYW4gYXNzb2NpYXRlZCBkYXRlLiBZb3UgY2FuIHVzZSBQSFAgZGF0ZQ0KICAgICAqIGNvZGVzIHRvIHNldCB5b3VyIG93biBkYXRlIGZvcm1hdHRpbmcNCiAgICAgKi8NCiAgICBwdWJsaWMgc3RyaW5nICRkYXRlRm9ybWF0ID0gJ1ktbS1kIEg6aTpzJzsNCg0KICAgIC8qKg0KICAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQogICAgICogTG9nIEhhbmRsZXJzDQogICAgICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiAgICAgKg0KICAgICAqIFRoZSBsb2dnaW5nIHN5c3RlbSBzdXBwb3J0cyBtdWx0aXBsZSBhY3Rpb25zIHRvIGJlIHRha2VuIHdoZW4gc29tZXRoaW5nDQogICAgICogaXMgbG9nZ2VkLiBUaGlzIGlzIGRvbmUgYnkgYWxsb3dpbmcgZm9yIG11bHRpcGxlIEhhbmRsZXJzLCBzcGVjaWFsIGNsYXNzZXMNCiAgICAgKiBkZXNpZ25lZCB0byB3cml0ZSB0aGUgbG9nIHRvIHRoZWlyIGNob3NlbiBkZXN0aW5hdGlvbnMsIHdoZXRoZXIgdGhhdCBpcw0KICAgICAqIGEgZmlsZSBvbiB0aGUgZ2V0U2VydmVyLCBhIGNsb3VkLWJhc2VkIHNlcnZpY2UsIG9yIGV2ZW4gdGFraW5nIGFjdGlvbnMgc3VjaA0KICAgICAqIGFzIGVtYWlsaW5nIHRoZSBkZXYgdGVhbS4NCiAgICAgKg0KICAgICAqIEVhY2ggaGFuZGxlciBpcyBkZWZpbmVkIGJ5IHRoZSBjbGFzcyBuYW1lIHVzZWQgZm9yIHRoYXQgaGFuZGxlciwgYW5kIGl0DQogICAgICogTVVTVCBpbXBsZW1lbnQgdGhlIGBDb2RlSWduaXRlclxMb2dcSGFuZGxlcnNcSGFuZGxlckludGVyZmFjZWAgaW50ZXJmYWNlLg0KICAgICAqDQogICAgICogVGhlIHZhbHVlIG9mIGVhY2gga2V5IGlzIGFuIGFycmF5IG9mIGNvbmZpZ3VyYXRpb24gaXRlbXMgdGhhdCBhcmUgc2VudA0KICAgICAqIHRvIHRoZSBjb25zdHJ1Y3RvciBvZiBlYWNoIGhhbmRsZXIuIFRoZSBvbmx5IHJlcXVpcmVkIGNvbmZpZ3VyYXRpb24gaXRlbQ0KICAgICAqIGlzIHRoZSAnaGFuZGxlcycgZWxlbWVudCwgd2hpY2ggbXVzdCBiZSBhbiBhcnJheSBvZiBpbnRlZ2VyIGxvZyBsZXZlbHMuDQogICAgICogVGhpcyBpcyBtb3N0IGVhc2lseSBoYW5kbGVkIGJ5IHVzaW5nIHRoZSBjb25zdGFudHMgZGVmaW5lZCBpbiB0aGUNCiAgICAgKiBgUHNyXExvZ1xMb2dMZXZlbGAgY2xhc3MuDQogICAgICoNCiAgICAgKiBIYW5kbGVycyBhcmUgZXhlY3V0ZWQgaW4gdGhlIG9yZGVyIGRlZmluZWQgaW4gdGhpcyBhcnJheSwgc3RhcnRpbmcgd2l0aA0KICAgICAqIHRoZSBoYW5kbGVyIG9uIHRvcCBhbmQgY29udGludWluZyBkb3duLg0KICAgICAqDQogICAgICogQHZhciBhcnJheTxjbGFzcy1zdHJpbmc8SGFuZGxlckludGVyZmFjZT4sIGFycmF5PHN0cmluZywgaW50fGxpc3Q8c3RyaW5nPnxzdHJpbmc+Pg0KICAgICAqLw0KICAgIHB1YmxpYyBhcnJheSAkaGFuZGxlcnMgPSBbDQogICAgICAgIC8qDQogICAgICAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQogICAgICAgICAqIEZpbGUgSGFuZGxlcg0KICAgICAgICAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KICAgICAgICAgKi8NCiAgICAgICAgRmlsZUhhbmRsZXI6OmNsYXNzID0+IFsNCiAgICAgICAgICAgIC8vIFRoZSBsb2cgbGV2ZWxzIHRoYXQgdGhpcyBoYW5kbGVyIHdpbGwgaGFuZGxlLg0KICAgICAgICAgICAgJ2hhbmRsZXMnID0+IFsNCiAgICAgICAgICAgICAgICAnY3JpdGljYWwnLA0KICAgICAgICAgICAgICAgICdhbGVydCcsDQogICAgICAgICAgICAgICAgJ2VtZXJnZW5jeScsDQogICAgICAgICAgICAgICAgJ2RlYnVnJywNCiAgICAgICAgICAgICAgICAnZXJyb3InLA0KICAgICAgICAgICAgICAgICdpbmZvJywNCiAgICAgICAgICAgICAgICAnbm90aWNlJywNCiAgICAgICAgICAgICAgICAnd2FybmluZycsDQogICAgICAgICAgICBdLA0KDQogICAgICAgICAgICAvKg0KICAgICAgICAgICAgICogVGhlIGRlZmF1bHQgZmlsZW5hbWUgZXh0ZW5zaW9uIGZvciBsb2cgZmlsZXMuDQogICAgICAgICAgICAgKiBBbiBleHRlbnNpb24gb2YgJ3BocCcgYWxsb3dzIGZvciBwcm90ZWN0aW5nIHRoZSBsb2cgZmlsZXMgdmlhIGJhc2ljDQogICAgICAgICAgICAgKiBzY3JpcHRpbmcsIHdoZW4gdGhleSBhcmUgdG8gYmUgc3RvcmVkIHVuZGVyIGEgcHVibGljbHkgYWNjZXNzaWJsZSBkaXJlY3RvcnkuDQogICAgICAgICAgICAgKg0KICAgICAgICAgICAgICogTk9URTogTGVhdmluZyBpdCBibGFuayB3aWxsIGRlZmF1bHQgdG8gJ2xvZycuDQogICAgICAgICAgICAgKi8NCiAgICAgICAgICAgICdmaWxlRXh0ZW5zaW9uJyA9PiAnJywNCg0KICAgICAgICAgICAgLyoNCiAgICAgICAgICAgICAqIFRoZSBmaWxlIHN5c3RlbSBwZXJtaXNzaW9ucyB0byBiZSBhcHBsaWVkIG9uIG5ld2x5IGNyZWF0ZWQgbG9nIGZpbGVzLg0KICAgICAgICAgICAgICoNCiAgICAgICAgICAgICAqIElNUE9SVEFOVDogVGhpcyBNVVNUIGJlIGFuIGludGVnZXIgKG5vIHF1b3RlcykgYW5kIHlvdSBNVVNUIHVzZSBvY3RhbA0KICAgICAgICAgICAgICogaW50ZWdlciBub3RhdGlvbiAoaS5lLiAwNzAwLCAwNjQ0LCBldGMuKQ0KICAgICAgICAgICAgICovDQogICAgICAgICAgICAnZmlsZVBlcm1pc3Npb25zJyA9PiAwNjQ0LA0KDQogICAgICAgICAgICAvKg0KICAgICAgICAgICAgICogTG9nZ2luZyBEaXJlY3RvcnkgUGF0aA0KICAgICAgICAgICAgICoNCiAgICAgICAgICAgICAqIEJ5IGRlZmF1bHQsIGxvZ3MgYXJlIHdyaXR0ZW4gdG8gV1JJVEVQQVRIIC4gJ2xvZ3MvJw0KICAgICAgICAgICAgICogU3BlY2lmeSBhIGRpZmZlcmVudCBkZXN0aW5hdGlvbiBoZXJlLCBpZiBkZXNpcmVkLg0KICAgICAgICAgICAgICovDQogICAgICAgICAgICAncGF0aCcgPT4gJycsDQogICAgICAgIF0sDQoNCiAgICAgICAgLyoNCiAgICAgICAgICogVGhlIENocm9tZUxvZ2dlckhhbmRsZXIgcmVxdWlyZXMgdGhlIHVzZSBvZiB0aGUgQ2hyb21lIHdlYiBicm93c2VyDQogICAgICAgICAqIGFuZCB0aGUgQ2hyb21lTG9nZ2VyIGV4dGVuc2lvbi4gVW5jb21tZW50IHRoaXMgYmxvY2sgdG8gdXNlIGl0Lg0KICAgICAgICAgKi8NCiAgICAgICAgLy8gJ0NvZGVJZ25pdGVyXExvZ1xIYW5kbGVyc1xDaHJvbWVMb2dnZXJIYW5kbGVyJyA9PiBbDQogICAgICAgIC8vICAgICAvKg0KICAgICAgICAvLyAgICAgICogVGhlIGxvZyBsZXZlbHMgdGhhdCB0aGlzIGhhbmRsZXIgd2lsbCBoYW5kbGUuDQogICAgICAgIC8vICAgICAgKi8NCiAgICAgICAgLy8gICAgICdoYW5kbGVzJyA9PiBbJ2NyaXRpY2FsJywgJ2FsZXJ0JywgJ2VtZXJnZW5jeScsICdkZWJ1ZycsDQogICAgICAgIC8vICAgICAgICAgICAgICAgICAgICdlcnJvcicsICdpbmZvJywgJ25vdGljZScsICd3YXJuaW5nJ10sDQogICAgICAgIC8vIF0sDQoNCiAgICAgICAgLyoNCiAgICAgICAgICogVGhlIEVycm9ybG9nSGFuZGxlciB3cml0ZXMgdGhlIGxvZ3MgdG8gUEhQJ3MgbmF0aXZlIGBlcnJvcl9sb2coKWAgZnVuY3Rpb24uDQogICAgICAgICAqIFVuY29tbWVudCB0aGlzIGJsb2NrIHRvIHVzZSBpdC4NCiAgICAgICAgICovDQogICAgICAgIC8vICdDb2RlSWduaXRlclxMb2dcSGFuZGxlcnNcRXJyb3Jsb2dIYW5kbGVyJyA9PiBbDQogICAgICAgIC8vICAgICAvKiBUaGUgbG9nIGxldmVscyB0aGlzIGhhbmRsZXIgY2FuIGhhbmRsZS4gKi8NCiAgICAgICAgLy8gICAgICdoYW5kbGVzJyA9PiBbJ2NyaXRpY2FsJywgJ2FsZXJ0JywgJ2VtZXJnZW5jeScsICdkZWJ1ZycsICdlcnJvcicsICdpbmZvJywgJ25vdGljZScsICd3YXJuaW5nJ10sDQogICAgICAgIC8vDQogICAgICAgIC8vICAgICAvKg0KICAgICAgICAvLyAgICAgKiBUaGUgbWVzc2FnZSB0eXBlIHdoZXJlIHRoZSBlcnJvciBzaG91bGQgZ28uIENhbiBiZSAwIG9yIDQsIG9yIHVzZSB0aGUNCiAgICAgICAgLy8gICAgICogY2xhc3MgY29uc3RhbnRzOiBgRXJyb3Jsb2dIYW5kbGVyOjpUWVBFX09TYCAoMCkgb3IgYEVycm9ybG9nSGFuZGxlcjo6VFlQRV9TQVBJYCAoNCkNCiAgICAgICAgLy8gICAgICovDQogICAgICAgIC8vICAgICAnbWVzc2FnZVR5cGUnID0+IDAsDQogICAgICAgIC8vIF0sDQogICAgXTsNCn0NCiI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG1ldGFkYXRhIjthOjA6e319";