1750330283
waR3U4bTeM%3Aa3d429d347a190e48f8b25b9e931be13-ca898070d81a162f6484709f6d120969
s:428988:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDA6IlB1bGwgZGF0YSBmcm9tIFNhbGVzZm9yY2UgaW50byBXb3JkUHJlc3MiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mjp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czo1OiJjbGFzcyI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzA6Ik9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbCI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xHZW5lcmljIjoyOntzOjc6IgAqAG5hbWUiO3M6NzoicGFja2FnZSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MjI6Ik9iamVjdF9TeW5jX1NhbGVzZm9yY2UiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGhhc2giO3M6MzI6ImNhODk4MDcwZDgxYTE2MmY2NDg0NzA5ZjZkMTIwOTY5IjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWUiO3M6NDA6ImNsYXNzLW9iamVjdC1zeW5jLXNmLXNhbGVzZm9yY2UtcHVsbC5waHAiO3M6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAcGF0aCI7czo0ODoiY2xhc3Nlcy9jbGFzcy1vYmplY3Qtc3luYy1zZi1zYWxlc2ZvcmNlLXB1bGwucGhwIjtzOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHNvdXJjZSI7czo5ODE3MjoiPD9waHAKLyoqCiAqIFB1bGwgZGF0YSBmcm9tIFNhbGVzZm9yY2UgaW50byBXb3JkUHJlc3MKICoKICogQGNsYXNzICAgT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsCiAqIEBwYWNrYWdlIE9iamVjdF9TeW5jX1NhbGVzZm9yY2UKICovCgpkZWZpbmVkKCAnQUJTUEFUSCcgKSB8fCBleGl0OwoKLyoqCiAqIE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbCBjbGFzcy4KICovCmNsYXNzIE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbCB7CgoJLyoqCgkgKiBDdXJyZW50IHZlcnNpb24gb2YgdGhlIHBsdWdpbgoJICoKCSAqIEB2YXIgc3RyaW5nCgkgKi8KCXB1YmxpYyAkdmVyc2lvbjsKCgkvKioKCSAqIFRoZSBtYWluIHBsdWdpbiBmaWxlCgkgKgoJICogQHZhciBzdHJpbmcKCSAqLwoJcHVibGljICRmaWxlOwoKCS8qKgoJICogR2xvYmFsIG9iamVjdCBvZiBgJHdwZGJgLCB0aGUgV29yZFByZXNzIGRhdGFiYXNlCgkgKgoJICogQHZhciBvYmplY3QKCSAqLwoJcHVibGljICR3cGRiOwoKCS8qKgoJICogVGhlIHBsdWdpbidzIHNsdWcgc28gd2UgY2FuIGluY2x1ZGUgaXQgd2hlbiBuZWNlc3NhcnkKCSAqCgkgKiBAdmFyIHN0cmluZwoJICovCglwdWJsaWMgJHNsdWc7CgoJLyoqCgkgKiBUaGUgcGx1Z2luJ3MgcHJlZml4IHdoZW4gc2F2aW5nIG9wdGlvbnMgdG8gdGhlIGRhdGFiYXNlCgkgKgoJICogQHZhciBzdHJpbmcKCSAqLwoJcHVibGljICRvcHRpb25fcHJlZml4OwoKCS8qKgoJICogTG9naW4gY3JlZGVudGlhbHMgZm9yIHRoZSBTYWxlc2ZvcmNlIEFQSTsgY29tZXMgZnJvbSB3cC1jb25maWcgb3IgZnJvbSB0aGUgcGx1Z2luIHNldHRpbmdzCgkgKgoJICogQHZhciBhcnJheQoJICovCglwdWJsaWMgJGxvZ2luX2NyZWRlbnRpYWxzOwoKCS8qKgoJICogQXJyYXkgb2Ygd2hhdCBjbGFzc2VzIGluIHRoZSBwbHVnaW4gY2FuIGJlIHNjaGVkdWxlZCB0byBvY2N1ciB3aXRoIGB3cF9jcm9uYCBldmVudHMKCSAqCgkgKiBAdmFyIGFycmF5CgkgKi8KCXB1YmxpYyAkc2NoZWR1bGFibGVfY2xhc3NlczsKCgkvKioKCSAqIE9iamVjdF9TeW5jX1NmX1F1ZXVlIGNsYXNzCgkgKgoJICogQHZhciBvYmplY3QKCSAqLwoJcHVibGljICRxdWV1ZTsKCgkvKioKCSAqIE9iamVjdF9TeW5jX1NmX0xvZ2dpbmcgY2xhc3MKCSAqCgkgKiBAdmFyIG9iamVjdAoJICovCglwdWJsaWMgJGxvZ2dpbmc7CgoJLyoqCgkgKiBPYmplY3RfU3luY19TZl9NYXBwaW5nIGNsYXNzCgkgKgoJICogQHZhciBvYmplY3QKCSAqLwoJcHVibGljICRtYXBwaW5nczsKCgkvKioKCSAqIE9iamVjdF9TeW5jX1NmX1dvcmRQcmVzcyBjbGFzcwoJICoKCSAqIEB2YXIgb2JqZWN0CgkgKi8KCXB1YmxpYyAkd29yZHByZXNzOwoKCS8qKgoJICogT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZSBjbGFzcwoJICogVGhpcyBjb250YWlucyBTYWxlc2ZvcmNlIEFQSSBtZXRob2RzCgkgKgoJICogQHZhciBhcnJheQoJICovCglwdWJsaWMgJHNhbGVzZm9yY2U7CgoJLyoqCgkgKiBPYmplY3RfU3luY19TZl9QdWxsX09wdGlvbnMgY2xhc3MKCSAqCgkgKiBAdmFyIG9iamVjdAoJICovCglwdWJsaWMgJHB1bGxfb3B0aW9uczsKCgkvKioKCSAqIE9iamVjdF9TeW5jX1NmX1N5bmNfVHJhbnNpZW50cyBjbGFzcwoJICoKCSAqIEB2YXIgb2JqZWN0CgkgKi8KCXB1YmxpYyAkc3luY190cmFuc2llbnRzOwoKCS8qKgoJICogVGhlIG5hbWUgb2YgdGhlIEFjdGlvblNjaGVkdWxlciBxdWV1ZQoJICoKCSAqIEB2YXIgc3RyaW5nCgkgKi8KCXB1YmxpYyAkc2NoZWR1bGVfbmFtZTsKCgkvKioKCSAqIFdoZXRoZXIgdG8gYmF0Y2ggU09RTCBxdWVyaWVzCgkgKgoJICogQHZhciBib29sCgkgKi8KCXByaXZhdGUgJGJhdGNoX3NvcWxfcXVlcmllczsKCgkvKioKCSAqIE1pbmltdW0gc2l6ZSBvZiBhIFNPUUwgYmF0Y2gKCSAqCgkgKiBAdmFyIGludAoJICovCglwcml2YXRlICRtaW5fc29xbF9iYXRjaF9zaXplOwoKCS8qKgoJICogTWF4aW11bSBzaXplIG9mIGEgU09RTCBiYXRjaAoJICoKCSAqIEB2YXIgaW50CgkgKi8KCXByaXZhdGUgJG1heF9zb3FsX3NpemU7CgoJLyoqCgkgKiBUeXBlcyBvZiBTYWxlc2ZvcmNlIHJlY29yZHMgdGhhdCBjYW4gYmUgbWVyZ2VkCgkgKgoJICogQHZhciBhcnJheQoJICovCglwdWJsaWMgJG1lcmdlYWJsZV9yZWNvcmRfdHlwZXM7CgoJLyoqCgkgKiBXaGV0aGVyIHRoZSBwbHVnaW4gaXMgaW4gZGVidWcgbW9kZQoJICoKCSAqIEB2YXIgYm9vbAoJICovCglwdWJsaWMgJGRlYnVnOwoKCS8qKgoJICogQ29uc3RydWN0b3IgZm9yIHB1bGwgY2xhc3MKCSAqLwoJcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkgewoJCSR0aGlzLT52ZXJzaW9uICAgICAgICAgICAgID0gb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2UoKS0+dmVyc2lvbjsKCQkkdGhpcy0+ZmlsZSAgICAgICAgICAgICAgICA9IG9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCktPmZpbGU7CgkJJHRoaXMtPndwZGIgICAgICAgICAgICAgICAgPSBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpLT53cGRiOwoJCSR0aGlzLT5zbHVnICAgICAgICAgICAgICAgID0gb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2UoKS0+c2x1ZzsKCQkkdGhpcy0+b3B0aW9uX3ByZWZpeCAgICAgICA9IG9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCktPm9wdGlvbl9wcmVmaXg7CgkJJHRoaXMtPmxvZ2luX2NyZWRlbnRpYWxzICAgPSBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpLT5sb2dpbl9jcmVkZW50aWFsczsKCQkkdGhpcy0+c2NoZWR1bGFibGVfY2xhc3NlcyA9IG9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCktPnNjaGVkdWxhYmxlX2NsYXNzZXM7CgoJCSR0aGlzLT5xdWV1ZSAgICAgID0gb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2UoKS0+cXVldWU7CgkJJHRoaXMtPmxvZ2dpbmcgICAgPSBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpLT5sb2dnaW5nOwoJCSR0aGlzLT5tYXBwaW5ncyAgID0gb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2UoKS0+bWFwcGluZ3M7CgkJJHRoaXMtPndvcmRwcmVzcyAgPSBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpLT53b3JkcHJlc3M7CgkJJHRoaXMtPnNhbGVzZm9yY2UgPSBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpLT5zYWxlc2ZvcmNlOwoKCQkkdGhpcy0+cHVsbF9vcHRpb25zICAgID0gbmV3IE9iamVjdF9TeW5jX1NmX1B1bGxfT3B0aW9ucygpOwoJCSR0aGlzLT5zeW5jX3RyYW5zaWVudHMgPSBuZXcgT2JqZWN0X1N5bmNfU2ZfU3luY19UcmFuc2llbnRzKCk7CgoJCSR0aGlzLT5zY2hlZHVsZV9uYW1lID0gJ3NhbGVzZm9yY2VfcHVsbCc7CgoJCS8vIFRvIGJlIGNsZWFyOiB3ZSBzaG91bGQgb25seSBldmVyIHNldCB0aGlzIHRvIHRydWUgaWYgU2FsZXNmb3JjZSBhY3R1YWxseSBzdGFydHMgdG8gcmVsaWFibHkgc3VwcG9ydCBpdCBpbnN0ZWFkIG9mIGdlbmVyYWxseSBpZ25vcmluZyBpdC4KCQkkdGhpcy0+YmF0Y2hfc29xbF9xdWVyaWVzID0gJHRoaXMtPmJhdGNoX3NvcWxfcXVlcmllcyggZmFsc2UgKTsKCgkJLy8gTWF4aW11bSBvZmZzZXQgc2l6ZSBmb3IgYSBTT1FMIHF1ZXJ5IHRvIFNhbGVzZm9yY2UKCQkvLyBTZWU6IGh0dHBzOi8vZGV2ZWxvcGVyLnNhbGVzZm9yY2UuY29tL2RvY3MvYXRsYXMuZW4tdXMuc29xbF9zb3NsLm1ldGEvc29xbF9zb3NsL3Nmb3JjZV9hcGlfY2FsbHNfc29xbF9zZWxlY3Rfb2Zmc2V0Lmh0bQoJCS8vIEZyb20gU2FsZXNmb3JjZTogIlRoZSBtYXhpbXVtIG9mZnNldCBpcyAyLDAwMCByb3dzLiBSZXF1ZXN0aW5nIGFuIG9mZnNldCBncmVhdGVyIHRoYW4gMiwwMDAgcmVzdWx0cyBpbiBhIE5VTUJFUl9PVVRTSURFX1ZBTElEX1JBTkdFIGVycm9yLiIuCgkJJHRoaXMtPm1pbl9zb3FsX2JhdGNoX3NpemUgPSAyMDA7IC8vIGJhdGNoZXMgY2Fubm90IGJlIHNtYWxsZXIgdGhhbiAyMDAgcmVjb3Jkcy4KCQkkdGhpcy0+bWF4X3NvcWxfc2l6ZSAgICAgICA9IDIwMDA7CgoJCSR0aGlzLT5tZXJnZWFibGVfcmVjb3JkX3R5cGVzID0gYXJyYXkoICdMZWFkJywgJ0NvbnRhY3QnLCAnQWNjb3VudCcgKTsKCgkJLy8gQ3JlYXRlIGFjdGlvbiBob29rcyBmb3IgV29yZFByZXNzIG9iamVjdHMuIFdlIHJ1biB0aGlzIGFmdGVyIHBsdWdpbnMgYXJlIGxvYWRlZCBpbiBjYXNlIHNvbWV0aGluZyBkZXBlbmRzIG9uIGFub3RoZXIgcGx1Z2luLgoJCWFkZF9hY3Rpb24oICdwbHVnaW5zX2xvYWRlZCcsIGFycmF5KCAkdGhpcywgJ2FkZF9hY3Rpb25zJyApICk7CgoJCS8vIGRlcHJlY2F0ZWQgYWN0aW9ucy4KCQkkdGhpcy0+ZGVwcmVjYXRlZF9hY3Rpb25zKCk7CgoJCS8vIHVzZSB0aGUgb3B0aW9uIHZhbHVlIGZvciB3aGV0aGVyIHdlJ3JlIGluIGRlYnVnIG1vZGUuCgkJJHRoaXMtPmRlYnVnID0gZmlsdGVyX3ZhciggZ2V0X29wdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAnZGVidWdfbW9kZScsIGZhbHNlICksIEZJTFRFUl9WQUxJREFURV9CT09MRUFOICk7CgoJfQoKCS8qKgoJICogV2hldGhlciB0byB1c2UgdGhlIGJhdGNoU2l6ZSBwYXJhbWV0ZXIgb24gU09RTCBxdWVyaWVzCgkgKgoJICogQHBhcmFtIGJvb2wgJGJhdGNoX3NvcWxfcXVlcmllcyB3aGV0aGVyIHRvIGJhdGNoIHRoZSBxdWVyaWVzLgoJICogQHJldHVybiBib29sICRiYXRjaF9zb3FsX3F1ZXJpZXMKCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBiYXRjaF9zb3FsX3F1ZXJpZXMoICRiYXRjaF9zb3FsX3F1ZXJpZXMgKSB7CgkJLy8gYXMgb2YgdmVyc2lvbiAzNC4wLCB0aGUgU2FsZXNmb3JjZSBSRVNUIEFQSSBhY2NlcHRzIGEgYmF0Y2hTaXplIG9wdGlvbiBvbiB0aGUgU2ZvcmNlLUNhbGwtT3B0aW9ucyBoZWFkZXIuCgkJaWYgKCB2ZXJzaW9uX2NvbXBhcmUoICR0aGlzLT5sb2dpbl9jcmVkZW50aWFsc1sncmVzdF9hcGlfdmVyc2lvbiddLCAnMzQuMCcsICc8JyApICkgewoJCQkkYmF0Y2hfc29xbF9xdWVyaWVzID0gZmFsc2U7CgkJfQoJCS8vIG90aGVyd2lzZSwgcmV0dXJuIHdoYXRldmVyIHRoZSBwbHVnaW4ncyBkZWZhdWx0IHZhbHVlIGlzLgoJCS8vIHRoaXMgYWxsb3dzIHVzIHRvIGRlY2lkZSB0byBzdXBwb3J0IHF1ZXJ5IGJhdGNoaW5nIGlmIGl0IGlzIGV2ZXIgbm90IGFic3VyZGx5IGJhZC4KCQlyZXR1cm4gJGJhdGNoX3NvcWxfcXVlcmllczsKCX0KCgkvKioKCSAqIENyZWF0ZSB0aGUgYWN0aW9uIGhvb2tzIGJhc2VkIG9uIHdoYXQgb2JqZWN0IG1hcHMgZXhpc3QgZnJvbSB0aGUgYWRtaW4gc2V0dGluZ3MKCSAqIHJvdXRlIGlzIGh0dHA6Ly9leGFtcGxlLmNvbS93cC1qc29uL3NhbGVzZm9yY2UtcmVzdC1hcGkvcHVsbC8gcGx1cyBwYXJhbXMgd2UgZGVjaWRlIHRvIGFjY2VwdC4KCSAqLwoJcHVibGljIGZ1bmN0aW9uIGFkZF9hY3Rpb25zKCkgewoKCQkvLyBhamF4IGhvb2suCgkJYWRkX2FjdGlvbiggJ3dwX2FqYXhfc2FsZXNmb3JjZV9wdWxsX3dlYmhvb2snLCBhcnJheSggJHRoaXMsICdzYWxlc2ZvcmNlX3B1bGxfd2ViaG9vaycgKSApOwoKCQkvLyBhY3Rpb24tc2NoZWR1bGVyIG5lZWRzIHR3byBob29rczogb25lIHRvIGNoZWNrIGZvciByZWNvcmRzLCBhbmQgb25lIHRvIHByb2Nlc3MgdGhlbS4KCQlhZGRfYWN0aW9uKCAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICdwdWxsX2NoZWNrX3JlY29yZHMnLCBhcnJheSggJHRoaXMsICdzYWxlc2ZvcmNlX3B1bGwnICksIDEwICk7CgkJYWRkX2FjdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAncHVsbF9wcm9jZXNzX3JlY29yZHMnLCBhcnJheSggJHRoaXMsICdzYWxlc2ZvcmNlX3B1bGxfcHJvY2Vzc19yZWNvcmRzJyApLCAxMCwgMyApOwoJfQoKCS8qKgoJICogRGVwcmVjYXRlZCBhY3Rpb25zCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBkZXByZWNhdGVkX2FjdGlvbnMoKSB7CgkJLy8gcHJldmlvdXMgb3B0aW9uIG5hbWVzLgoJCWFkZF9maWx0ZXIoICdvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZV9wdWxsX29wdGlvbl9sZWdhY3lfa2V5JywgYXJyYXkoICR0aGlzLCAnZGVwcmVjYXRlZF9wdWxsX29wdGlvbl9uYW1lcycgKSwgMTAsIDIgKTsKCX0KCgkvKioKCSAqIE1vZGlmeSBsZWdhY3kgbmFtZWQgaW5kaXZpZHVhbCBvcHRpb24gcmVjb3JkcyBmb3Igc3luYyBvcGVyYXRpb25zCgkgKgoJICogQHBhcmFtIHN0cmluZyAka2V5IHRoZSBwbHVnaW4ncyBzdWdnZXN0ZWQga2V5IG5hbWUuCgkgKiBAcGFyYW0gYXJyYXkgICRwYXJhbXMgdGhlIGFycmF5IG9mIHBhcmFtZXRlcnMgdG8gbWFrZSB0aGUga2V5LgoJICogQHJldHVybiBtaXhlZCAkdmFsdWUgdGhlIHZhbHVlIG9mIHRoZSBpdGVtLiBGYWxzZSBpZiBpdCdzIGVtcHR5LgoJICogQGRlcHJlY2F0ZWQgICB0aGlzIHdhcyBhZGRlZCBpbiAyLjEuMCB0byB1cGdyYWRlIG9sZCBvcHRpb24ga2V5cywgYnV0IHdpbGwgYmUgcmVtb3ZlZCBpbiBhIGZ1dHVyZSB2ZXJzaW9uLgoJICovCglwdWJsaWMgZnVuY3Rpb24gZGVwcmVjYXRlZF9wdWxsX29wdGlvbl9uYW1lcyggJGtleSwgJHBhcmFtcyApIHsKCQlpZiAoICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ3B1bGxfbGFzdF9pZCcgPT09ICRrZXkgKSB7CgkJCSRrZXkgPSAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICdsYXN0X3B1bGxfaWQnOwoJCX0KCQlpZiAoIGlzc2V0KCAkcGFyYW1zWydvYmplY3RfdHlwZSddICkgKSB7CgkJCWlmICggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAncHVsbF9jdXJyZW50X3F1ZXJ5XycgLiAkcGFyYW1zWydvYmplY3RfdHlwZSddID09PSAka2V5ICkgewoJCQkJJGtleSA9ICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ2N1cnJlbnRseV9wdWxsaW5nX3F1ZXJ5XycgLiAkcGFyYW1zWydvYmplY3RfdHlwZSddOwoJCQl9CgkJfQoJCXJldHVybiAka2V5OwoJfQoKCS8qKgoJICogUkVTVCBBUEkgY2FsbGJhY2sgZm9yIHNhbGVzZm9yY2UgcHVsbC4gUmV0dXJucyBzdGF0dXMgb2YgMjAwIGZvciBzdWNjZXNzZnVsCgkgKiBhdHRlbXB0IG9yIDQwMyBmb3IgYSBmYWlsZWQgcHVsbCBhdHRlbXB0IChTRiBub3QgYXV0aG9yaXplZCwgdGhyZXNoaG9sZAoJICogcmVhY2hlZCwgZXRjLgoJICoKCSAqIEBwYXJhbSBXUF9SRVNUX1JlcXVlc3QgJHJlcXVlc3QgVGhpcyBpcyBhIG1lcmdlZCBvYmplY3Qgb2YgYWxsIHRoZSBhcmd1bWVudHMgZnJvbSB0aGUgQVBJIHJlcXVlc3QuCgkgKiBAcmV0dXJuIGFycmF5CgkgKiBjb2RlOiAyMDEKCSAqIGRhdGE6CgkgKiAgIHN1Y2Nlc3MgOiB0cnVlCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBzYWxlc2ZvcmNlX3B1bGxfd2ViaG9vayggV1BfUkVTVF9SZXF1ZXN0ICRyZXF1ZXN0ICkgewoKCQkvLyBydW4gYSBwdWxsIHJlcXVlc3QgYW5kIHRoZW4gcnVuIHRoZSBzY2hlZHVsZSBpZiBhbnl0aGluZyBpcyBpbiB0aGVyZS4KCQkkZGF0YSA9ICR0aGlzLT5zYWxlc2ZvcmNlX3B1bGwoKTsKCgkJLy8gc2FsZXNmb3JjZV9wdWxsIGN1cnJlbnRseSByZXR1cm5zIHRydWUgaWYgaXQgcnVucyBzdWNjZXNzZnVsbHkuCgkJaWYgKCB0cnVlID09PSAkZGF0YSApIHsKCQkJJGNvZGUgPSAnMjAxJzsKCQkJLy8gY2hlY2sgdG8gc2VlIGlmIGFueXRoaW5nIGlzIGluIHRoZSBxdWV1ZSBhbmQgaGFuZGxlIGl0IGlmIGl0IGlzCgkJCS8vIHNpbmdsZSB0YXNrIGZvciBhY3Rpb24tc2NoZWR1bGVyIHRvIGNoZWNrIGZvciBkYXRhLgoJCQkkdGhpcy0+cXVldWUtPmFkZCgKCQkJCSR0aGlzLT5zY2hlZHVsYWJsZV9jbGFzc2VzWyAkdGhpcy0+c2NoZWR1bGVfbmFtZSBdWydpbml0aWFsaXplciddLAoJCQkJYXJyYXkoKSwKCQkJCSR0aGlzLT5zY2hlZHVsZV9uYW1lCgkJCSk7CgkJfSBlbHNlIHsKCQkJJGNvZGUgPSAnNDAzJzsKCQl9CgoJCSRyZXN1bHQgPSBhcnJheSgKCQkJJ2NvZGUnID0+ICRjb2RlLAoJCQknZGF0YScgPT4gYXJyYXkoCgkJCQknc3VjY2VzcycgPT4gJGRhdGEsCgkJCSksCgkJKTsKCgkJcmV0dXJuICRyZXN1bHQ7CgoJfQoKCS8qKgoJICogQ2FsbGJhY2sgZm9yIHRoZSBzdGFuZGFyZCBwdWxsIHByb2Nlc3MgdXNlZCBieSB3ZWJob29rcyBhbmQgY3Jvbi4KCSAqLwoJcHVibGljIGZ1bmN0aW9uIHNhbGVzZm9yY2VfcHVsbCgpIHsKCQkkc2ZhcGkgPSAkdGhpcy0+c2FsZXNmb3JjZVsnc2ZhcGknXTsKCgkJaWYgKCB0cnVlID09PSAkdGhpcy0+c2FsZXNmb3JjZVsnaXNfYXV0aG9yaXplZCddICYmIHRydWUgPT09ICR0aGlzLT5jaGVja190aHJvdHRsZSgpICkgewoKCQkJJHRoaXMtPmdldF91cGRhdGVkX3JlY29yZHMoKTsKCQkJJHRoaXMtPmdldF9tZXJnZWRfcmVjb3JkcygpOwoJCQkkdGhpcy0+Z2V0X2RlbGV0ZWRfcmVjb3JkcygpOwoKCQkJLy8gU3RvcmUgdGhpcyByZXF1ZXN0IHRpbWUgZm9yIHRoZSB0aHJvdHRsZSBjaGVjay4KCQkJJHRoaXMtPnB1bGxfb3B0aW9ucy0+c2V0KCAnbGFzdF9zeW5jJywgJycsICcnLCB0aW1lKCkgKTsKCQkJcmV0dXJuIHRydWU7CgoJCX0gZWxzZSB7CgkJCS8vIE5vIHB1bGwgaGFwcGVuZWQuCgkJCXJldHVybiBmYWxzZTsKCQl9Cgl9CgoJLyoqCgkgKiBEZXRlcm1pbmVzIGlmIHRoZSBTYWxlc2ZvcmNlIHB1bGwgc2hvdWxkIGJlIGFsbG93ZWQsIG9yIHRocm90dGxlZC4KCSAqIFByZXZlbnRzIHRvbyBtYW55IHB1bGwgcHJvY2Vzc2VzIGZyb20gcnVubmluZyBhdCBvbmNlLgoJICoKCSAqIEByZXR1cm4gYm9vbCBSZXR1cm5zIGZhbHNlIGlmIHRoZSB0aW1lIGVsYXBzZWQgYmV0d2VlbiByZWNlbnQgcHVsbHMgaXMgdG9vIHNob3J0LgoJICovCglwcml2YXRlIGZ1bmN0aW9uIGNoZWNrX3Rocm90dGxlKCkgewoJCSRwdWxsX3Rocm90dGxlID0gJHRoaXMtPnB1bGxfb3B0aW9ucy0+Z2V0KCAndGhyb3R0bGUnLCAnJywgJycsIDUgKTsKCQkkbGFzdF9zeW5jICAgICA9ICR0aGlzLT5wdWxsX29wdGlvbnMtPmdldCggJ2xhc3Rfc3luYycsICcnLCAnJywgMCApOwoKCQlpZiAoIHRpbWUoKSA+ICggJGxhc3Rfc3luYyArICRwdWxsX3Rocm90dGxlICkgKSB7CgkJCXJldHVybiB0cnVlOwoJCX0gZWxzZSB7CgkJCXJldHVybiBmYWxzZTsKCQl9Cgl9CgoJLyoqCgkgKiBQdWxsIHVwZGF0ZWQgcmVjb3JkcyBmcm9tIFNhbGVzZm9yY2UgYW5kIHBsYWNlIHRoZW0gaW4gdGhlIHF1ZXVlLgoJICogRXhlY3V0ZXMgYSBTT1FMIHF1ZXJ5IGJhc2VkIG9uIGRlZmluZWQgbWFwcGluZ3MsIGxvb3BzIHRocm91Z2ggdGhlIHJlc3VsdHMsCgkgKiBhbmQgcGxhY2VzIGVhY2ggdXBkYXRlZCBTRiBvYmplY3QgaW50byB0aGUgcXVldWUgZm9yIGxhdGVyIHByb2Nlc3NpbmcuCgkgKiBXZSBjb3B5IHRoZSBjb252ZW50aW9uIGZyb20gdGhlIERydXBhbCBtb2R1bGUgaGVyZSwgYW5kIHJ1biBhIHNlcGFyYXRlIFNPUUwgcXVlcnkgZm9yIGVhY2ggdHlwZSBvZiBvYmplY3QgaW4gU0YKCSAqIElmIHdlIHJldHVybiBzb21ldGhpbmcgaGVyZSwgaXQncyBiZWNhdXNlIHRoZXJlIGlzIGFuIGVycm9yLgoJICovCglwcml2YXRlIGZ1bmN0aW9uIGdldF91cGRhdGVkX3JlY29yZHMoKSB7CgkJJHNmYXBpID0gJHRoaXMtPnNhbGVzZm9yY2VbJ3NmYXBpJ107CgkJZm9yZWFjaCAoICR0aGlzLT5tYXBwaW5ncy0+Z2V0X2ZpZWxkbWFwcyggbnVsbCwgJHRoaXMtPm1hcHBpbmdzLT5hY3RpdmVfZmllbGRtYXBfY29uZGl0aW9ucyApIGFzICRzYWxlc2ZvcmNlX21hcHBpbmcgKSB7CgkJCSRtYXBfc3luY190cmlnZ2VycyA9IChhcnJheSkgJHNhbGVzZm9yY2VfbWFwcGluZ1snc3luY190cmlnZ2VycyddOyAvLyB0aGlzIHNldHMgd2hpY2ggU2FsZXNmb3JjZSB0cmlnZ2VycyBhcmUgYWxsb3dlZCBmb3IgdGhlIG1hcHBpbmcuCgkJCSR0eXBlICAgICAgICAgICAgICA9ICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3NhbGVzZm9yY2Vfb2JqZWN0J107IC8vIHRoaXMgc2V0cyB0aGUgU2FsZXNmb3JjZSBvYmplY3QgdHlwZSBmb3IgdGhlIFNPUUwgcXVlcnkuCgoJCQkkc29xbCA9ICR0aGlzLT5nZXRfcHVsbF9xdWVyeSggJHR5cGUsICRzYWxlc2ZvcmNlX21hcHBpbmcgKTsKCgkJCS8vIGdldF9wdWxsX3F1ZXJ5IHJldHVybnMgbnVsbCBpZiBpdCBoYXMgbm8gbWF0Y2hpbmcgZmllbGRzLgoJCQlpZiAoIG51bGwgPT09ICRzb3FsICkgewoJCQkJY29udGludWU7CgkJCX0KCgkJCS8vIHdlIGRvbid0IHdhbnQgdG8gY2FjaGUgdGhpcyBiZWNhdXNlIHRpbWVzdGFtcHMuCgkJCSRxdWVyeV9vcHRpb25zID0gYXJyYXkoCgkJCQknY2FjaGUnID0+IGZhbHNlLAoJCQkpOwoKCQkJLy8gaWYgd2UgYXJlIGJhdGNoaW5nIHNvcWwgcXVlcmllcywgbGV0J3MgZG8gaXQuCgkJCWlmICggdHJ1ZSA9PT0gJHRoaXMtPmJhdGNoX3NvcWxfcXVlcmllcyApIHsKCQkJCS8vIHB1bGwgcXVlcnkgYmF0Y2ggc2l6ZSBvcHRpb24gbmFtZS4KCQkJCSRwdWxsX3F1ZXJ5X2JhdGNoX3NpemUgPSAkdGhpcy0+cHVsbF9vcHRpb25zLT5nZXQoICdxdWVyeV9iYXRjaF9zaXplJywgJycsICcnLCAnJyApOwoJCQkJaWYgKCAnJyAhPT0gJHB1bGxfcXVlcnlfYmF0Y2hfc2l6ZSApIHsKCQkJCQkkYmF0Y2hfc2l6ZSA9IGZpbHRlcl92YXIoICR0aGlzLT5wdWxsX29wdGlvbnMtPmdldCggJ3F1ZXJ5X2JhdGNoX3NpemUnLCAnJywgJycsICR0aGlzLT5taW5fc29xbF9iYXRjaF9zaXplICksIEZJTFRFUl9WQUxJREFURV9JTlQgKTsKCQkJCX0gZWxzZSB7CgkJCQkJLy8gb2xkIGxpbWl0IHZhbHVlLgoJCQkJCS8vIERlcHJlY2F0ZWQgaW4gMi4wLjMuCgkJCQkJJGJhdGNoX3NpemUgPSBmaWx0ZXJfdmFyKCAkdGhpcy0+cHVsbF9vcHRpb25zLT5nZXQoICdxdWVyeV9saW1pdCcsICcnLCAnJywgJHRoaXMtPm1pbl9zb3FsX2JhdGNoX3NpemUgKSwgRklMVEVSX1ZBTElEQVRFX0lOVCApOwoJCQkJfQoJCQkJJGJhdGNoX3NpemUgPSBmaWx0ZXJfdmFyKAoJCQkJCSRiYXRjaF9zaXplLAoJCQkJCUZJTFRFUl9WQUxJREFURV9JTlQsCgkJCQkJYXJyYXkoCgkJCQkJCSdvcHRpb25zJyA9PiBhcnJheSgKCQkJCQkJCSdtaW5fcmFuZ2UnID0+ICR0aGlzLT5taW5fc29xbF9iYXRjaF9zaXplLAoJCQkJCQkJJ21heF9yYW5nZScgPT4gJHRoaXMtPm1heF9zb3FsX3NpemUsCgkJCQkJCSksCgkJCQkJKQoJCQkJKTsKCQkJCWlmICggZmFsc2UgIT09ICRiYXRjaF9zaXplICkgewoJCQkJCS8vIHRoZSBTZm9yY2UtUXVlcnktT3B0aW9ucyBoZWFkZXIgaXMgYSBjb21tYSBkZWxpbWl0ZWQgc3RyaW5nLgoJCQkJCSRxdWVyeV9vcHRpb25zWydoZWFkZXJzJ11bJ1Nmb3JjZS1RdWVyeS1PcHRpb25zJ10gPSAnYmF0Y2hTaXplPScgLiAkYmF0Y2hfc2l6ZTsKCQkJCX0KCQkJfQoKCQkJLy8gcnVuIHRoZSBfX3RvU3RyaW5nIG1ldGhvZCB0byBjb252ZXJ0IHRoZSBTT1FMIHF1ZXJ5IG9iamVjdCB0byBhIHN0cmluZy4KCQkJJHNvcWxfc3RyaW5nID0gKHN0cmluZykgJHNvcWw7CgoJCQkvLyBFeGVjdXRlIHF1ZXJ5LgoJCQkkcmVzdWx0cyA9ICRzZmFwaS0+cXVlcnkoCgkJCQkkc29xbF9zdHJpbmcsCgkJCQkkcXVlcnlfb3B0aW9ucwoJCQkpOwoKCQkJJHJlc3BvbnNlICAgICA9ICRyZXN1bHRzWydkYXRhJ107CgkJCSR2ZXJzaW9uX3BhdGggPSB3cF9wYXJzZV91cmwoICRzZmFwaS0+Z2V0X2FwaV9lbmRwb2ludCgpLCBQSFBfVVJMX1BBVEggKTsKCgkJCSRzZl9sYXN0X3N5bmMgPSAkdGhpcy0+cHVsbF9vcHRpb25zLT5nZXQoICdsYXN0X3N5bmMnLCAkdHlwZSwgJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSwgbnVsbCApOwoJCQkkbGFzdF9zeW5jICAgID0gZ21kYXRlKCAnWS1tLWRcVEg6aTpzXFonLCAkc2ZfbGFzdF9zeW5jICk7CgoJCQlpZiAoICEgaXNzZXQoICRyZXNwb25zZVsnZXJyb3JDb2RlJ10gKSAmJiAwIDwgY291bnQoICRyZXNwb25zZVsncmVjb3JkcyddICkgKSB7CgkJCQkvLyBXcml0ZSBpdGVtcyB0byB0aGUgcXVldWUuCgkJCQlmb3JlYWNoICggJHJlc3BvbnNlWydyZWNvcmRzJ10gYXMgJGtleSA9PiAkcmVzdWx0ICkgewoJCQkJCS8vIGlmIHdlJ3ZlIGFscmVhZHkgcHVsbGVkLCBvciB0cmllZCB0byBwdWxsLCB0aGUgY3VycmVudCBJRCwgZG9uJ3QgZG8gaXQgYWdhaW4uCgkJCQkJJGxhc3RfaWQgPSAkdGhpcy0+cHVsbF9vcHRpb25zLT5nZXQoICdsYXN0X2lkJywgJycsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10sICcnICk7CgkJCQkJaWYgKCAkbGFzdF9pZCA9PT0gJHJlc3VsdFsnSWQnXSApIHsKCQkJCQkJaWYgKCB0cnVlID09PSAkdGhpcy0+ZGVidWcgKSB7CgkJCQkJCQkvLyBjcmVhdGUgbG9nIGVudHJ5IGZvciBmYWlsZWQgcHVsbC4KCQkJCQkJCSRzdGF0dXMgPSAnZGVidWcnOwoJCQkJCQkJJHRpdGxlICA9IHNwcmludGYoCgkJCQkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBsb2cgc3RhdHVzLCAyKSB0aGUgU2FsZXNmb3JjZSBJRC4KCQkJCQkJCQllc2NfaHRtbF9fKCAnJTEkczogU2FsZXNmb3JjZSBJRCAlMiRzIGhhcyBhbHJlYWR5IGJlZW4gYXR0ZW1wdGVkLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCQl1Y2ZpcnN0KCBlc2NfYXR0ciggJHN0YXR1cyApICksCgkJCQkJCQkJZXNjX2F0dHIoICRyZXN1bHRbJ0lkJ10gKQoJCQkJCQkJKTsKCQkJCQkJCSRkZWJ1ZyA9IGFycmF5KAoJCQkJCQkJCSd0aXRsZScgICA9PiAkdGl0bGUsCgkJCQkJCQkJJ21lc3NhZ2UnID0+IGVzY19odG1sX18oICdUaGlzIElEIGhhcyBhbHJlYWR5IGJlZW4gYXR0ZW1wdGVkIHNvIGl0IHdhcyBub3QgcHVsbGVkIGFnYWluLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCQkndHJpZ2dlcicgPT4gMCwKCQkJCQkJCQkncGFyZW50JyAgPT4gJycsCgkJCQkJCQkJJ3N0YXR1cycgID0+ICRzdGF0dXMsCgkJCQkJCQkpOwoJCQkJCQkJJHRoaXMtPmxvZ2dpbmctPnNldHVwKCAkZGVidWcgKTsKCQkJCQkJfQoKCQkJCQkJY29udGludWU7CgkJCQkJfQoKCQkJCQkvLyBpZiB0aGlzIHJlY29yZCBpcyBuZXcgYXMgb2YgdGhlIGxhc3Qgc3luYywgdXNlIHRoZSBjcmVhdGUgdHJpZ2dlci4KCQkJCQlpZiAoIGlzc2V0KCAkcmVzdWx0WydDcmVhdGVkRGF0ZSddICkgJiYgJHJlc3VsdFsnQ3JlYXRlZERhdGUnXSA+ICRsYXN0X3N5bmMgKSB7CgkJCQkJCSRzZl9zeW5jX3RyaWdnZXIgPSAkdGhpcy0+bWFwcGluZ3MtPnN5bmNfc2ZfY3JlYXRlOwoJCQkJCX0gZWxzZSB7CgkJCQkJCSRzZl9zeW5jX3RyaWdnZXIgPSAkdGhpcy0+bWFwcGluZ3MtPnN5bmNfc2ZfdXBkYXRlOwoJCQkJCX0KCgkJCQkJLy8gT25seSBxdWV1ZSB3aGVuIHRoZSByZWNvcmQncyB0cmlnZ2VyIGlzIGNvbmZpZ3VyZWQgZm9yIHRoZSBtYXBwaW5nLgoJCQkJCWlmICggaXNzZXQoICRtYXBfc3luY190cmlnZ2VycyApICYmIGlzc2V0KCAkc2Zfc3luY190cmlnZ2VyICkgJiYgaW5fYXJyYXkoICRzZl9zeW5jX3RyaWdnZXIsICRtYXBfc3luY190cmlnZ2VycywgdHJ1ZSApICkgeyAvLyB3cCBvciBzZiBjcnVkIGV2ZW50LgoJCQkJCQkkZGF0YSA9IGFycmF5KAoJCQkJCQkJJ29iamVjdF90eXBlJyAgICAgPT4gJHR5cGUsCgkJCQkJCQknb2JqZWN0JyAgICAgICAgICA9PiAkcmVzdWx0LAoJCQkJCQkJJ21hcHBpbmcnICAgICAgICAgPT4gJHNhbGVzZm9yY2VfbWFwcGluZywKCQkJCQkJCSdzZl9zeW5jX3RyaWdnZXInID0+ICRzZl9zeW5jX3RyaWdnZXIsIC8vIHVzZSB0aGUgYXBwcm9wcmlhdGUgdHJpZ2dlciBiYXNlZCBvbiB3aGVuIHRoaXMgd2FzIGNyZWF0ZWQuCgkJCQkJCSk7CgoJCQkJCQkkcHVsbF9hbGxvd2VkID0gJHRoaXMtPmlzX3B1bGxfYWxsb3dlZCggJHR5cGUsICRyZXN1bHQsICRzZl9zeW5jX3RyaWdnZXIsICRzYWxlc2ZvcmNlX21hcHBpbmcsICRtYXBfc3luY190cmlnZ2VycyApOwoKCQkJCQkJaWYgKCBmYWxzZSA9PT0gJHB1bGxfYWxsb3dlZCApIHsKCQkJCQkJCS8vIHVwZGF0ZSB0aGUgY3VycmVudCBzdGF0ZSBzbyB3ZSBkb24ndCBlbmQgdXAgb24gdGhlIHNhbWUgcmVjb3JkIGFnYWluIGlmIHRoZSBsb29wIGZhaWxzLgoJCQkJCQkJJHRoaXMtPnB1bGxfb3B0aW9ucy0+c2V0KCAnbGFzdF9pZCcsICcnLCAkc2FsZXNmb3JjZV9tYXBwaW5nWydpZCddLCAkcmVzdWx0WydJZCddICk7CgkJCQkJCQlpZiAoIHRydWUgPT09ICR0aGlzLT5kZWJ1ZyApIHsKCQkJCQkJCQkvLyBjcmVhdGUgbG9nIGVudHJ5IGZvciBmYWlsZWQgcHVsbC4KCQkJCQkJCQkkc3RhdHVzID0gJ2RlYnVnJzsKCQkJCQkJCQkkdGl0bGUgID0gc3ByaW50ZigKCQkJCQkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBsb2cgc3RhdHVzLCAyKSB0aGUgU2FsZXNmb3JjZSBJRC4KCQkJCQkJCQkJZXNjX2h0bWxfXyggJyUxJHM6IFNhbGVzZm9yY2UgSUQgJTIkcyBpcyBub3QgYWxsb3dlZC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQkJCXVjZmlyc3QoIGVzY19hdHRyKCAkc3RhdHVzICkgKSwKCQkJCQkJCQkJZXNjX2F0dHIoICRyZXN1bHRbJ0lkJ10gKQoJCQkJCQkJCSk7CgkJCQkJCQkJJGRlYnVnID0gYXJyYXkoCgkJCQkJCQkJCSd0aXRsZScgICA9PiAkdGl0bGUsCgkJCQkJCQkJCSdtZXNzYWdlJyA9PiBlc2NfaHRtbF9fKCAnVGhpcyBJRCBpcyBub3QgcHVsbGFibGUgc28gaXQgd2FzIHNraXBwZWQuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQkJCQkndHJpZ2dlcicgPT4gJHNmX3N5bmNfdHJpZ2dlciwKCQkJCQkJCQkJJ3BhcmVudCcgID0+ICcnLAoJCQkJCQkJCQknc3RhdHVzJyAgPT4gJHN0YXR1cywKCQkJCQkJCQkpOwoJCQkJCQkJCSR0aGlzLT5sb2dnaW5nLT5zZXR1cCggJGRlYnVnICk7CgkJCQkJCQl9CgkJCQkJCQljb250aW51ZTsKCQkJCQkJfQoKCQkJCQkJaWYgKCB0cnVlID09PSAkdGhpcy0+ZGVidWcgKSB7CgkJCQkJCQkvLyBjcmVhdGUgbG9nIGVudHJ5IGZvciBxdWV1ZSBhZGRpdGlvbi4KCQkJCQkJCSRzdGF0dXMgPSAnZGVidWcnOwoJCQkJCQkJJHRpdGxlICA9IHNwcmludGYoCgkJCQkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBsb2cgc3RhdHVzLCAyKSB0aGUgU2FsZXNmb3JjZSBJRC4KCQkJCQkJCQllc2NfaHRtbF9fKCAnJTEkczogU3RhcnQgdG8gYWRkIFNhbGVzZm9yY2UgSUQgJTIkcyB0byB0aGUgcXVldWUnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQkJdWNmaXJzdCggZXNjX2F0dHIoICRzdGF0dXMgKSApLAoJCQkJCQkJCWVzY19hdHRyKCAkcmVzdWx0WydJZCddICkKCQkJCQkJCSk7CgkJCQkJCQkkbWVzc2FnZSA9IHNwcmludGYoCgkJCQkJCQkJLy8gdHJhbnNsYXRvcnM6IDEpIGlzIHRoZSBuYW1lIG9mIHRoZSBob29rIHRoYXQgd2FzIGNhbGxlZCwgMikgaXMgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0IHR5cGUsIDMpIGlzIHRoZSBJRCBmb3IgdGhlIG9iamVjdCBtYXAsIDQpIGlzIHRoZSBldmVudCB0cmlnZ2VyIHRoYXQgaXMgcnVubmluZywgYW5kIDUpIGlzIHRoZSBuYW1lIG9mIHRoZSBzY2hlZHVsZSB0aGF0IGlzIHJ1bm5pbmcuCgkJCQkJCQkJZXNjX2h0bWxfXyggJ1RoaXMgcmVjb3JkIGlzIGJlaW5nIHNlbnQgdG8gdGhlIHF1ZXVlLiBUaGUgaG9vayBuYW1lIGlzICUxJHMuIFRoZSBhcmd1bWVudHMgZm9yIHRoZSBob29rIGFyZTogb2JqZWN0IHR5cGUgJTIkcywgb2JqZWN0IG1hcCBJRCAlMyRzLCBzeW5jIHRyaWdnZXIgJTQkcy4gVGhlIHNjaGVkdWxlIG5hbWUgaXMgJTUkcy4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQkJZXNjX2F0dHIoICR0aGlzLT5zY2hlZHVsYWJsZV9jbGFzc2VzWyAkdGhpcy0+c2NoZWR1bGVfbmFtZSBdWydjYWxsYmFjayddICksCgkJCQkJCQkJZXNjX2F0dHIoICR0eXBlICksCgkJCQkJCQkJYWJzaW50KCAkc2FsZXNmb3JjZV9tYXBwaW5nWydpZCddICksCgkJCQkJCQkJJHNmX3N5bmNfdHJpZ2dlciwKCQkJCQkJCQkkdGhpcy0+c2NoZWR1bGVfbmFtZQoJCQkJCQkJKTsKCQkJCQkJCSRkZWJ1ZyA9IGFycmF5KAoJCQkJCQkJCSd0aXRsZScgICA9PiAkdGl0bGUsCgkJCQkJCQkJJ21lc3NhZ2UnID0+ICRtZXNzYWdlLAoJCQkJCQkJCSd0cmlnZ2VyJyA9PiAkc2Zfc3luY190cmlnZ2VyLAoJCQkJCQkJCSdwYXJlbnQnICA9PiAnJywKCQkJCQkJCQknc3RhdHVzJyAgPT4gJHN0YXR1cywKCQkJCQkJCSk7CgkJCQkJCQkkdGhpcy0+bG9nZ2luZy0+c2V0dXAoICRkZWJ1ZyApOwoJCQkJCQl9CgoJCQkJCQkvLyBhZGQgYSBxdWV1ZSBhY3Rpb24gdG8gc2F2ZSBkYXRhIGZyb20gc2FsZXNmb3JjZS4KCQkJCQkJJHRoaXMtPnF1ZXVlLT5hZGQoCgkJCQkJCQkkdGhpcy0+c2NoZWR1bGFibGVfY2xhc3Nlc1sgJHRoaXMtPnNjaGVkdWxlX25hbWUgXVsnY2FsbGJhY2snXSwKCQkJCQkJCWFycmF5KAoJCQkJCQkJCSdvYmplY3RfdHlwZScgICAgID0+ICR0eXBlLAoJCQkJCQkJCSdvYmplY3QnICAgICAgICAgID0+ICRyZXN1bHRbJ0lkJ10sCgkJCQkJCQkJJ3NmX3N5bmNfdHJpZ2dlcicgPT4gJHNmX3N5bmNfdHJpZ2dlciwKCQkJCQkJCSksCgkJCQkJCQkkdGhpcy0+c2NoZWR1bGVfbmFtZQoJCQkJCQkpOwoJCQkJCQkvLyB1cGRhdGUgdGhlIGN1cnJlbnQgc3RhdGUgc28gd2UgZG9uJ3QgZW5kIHVwIG9uIHRoZSBzYW1lIHJlY29yZCBhZ2FpbiBpZiB0aGUgbG9vcCBmYWlscy4KCQkJCQkJJHRoaXMtPnB1bGxfb3B0aW9ucy0+c2V0KCAnbGFzdF9pZCcsICcnLCAkc2FsZXNmb3JjZV9tYXBwaW5nWydpZCddLCAkcmVzdWx0WydJZCddICk7CgkJCQkJCWlmICggdHJ1ZSA9PT0gJHRoaXMtPmRlYnVnICkgewoJCQkJCQkJLy8gY3JlYXRlIGxvZyBlbnRyeSBmb3Igc3VjY2Vzc2Z1bCBwdWxsLgoJCQkJCQkJJHN0YXR1cyA9ICdkZWJ1Zyc7CgkJCQkJCQkkdGl0bGUgID0gc3ByaW50ZigKCQkJCQkJCQkvLyB0cmFuc2xhdG9yczogcGxhY2Vob2xkZXJzIGFyZTogMSkgdGhlIGxvZyBzdGF0dXMsIDIpIHRoZSBTYWxlc2ZvcmNlIElELgoJCQkJCQkJCWVzY19odG1sX18oICclMSRzOiBTYWxlc2ZvcmNlIElEICUyJHMgaGFzIGJlZW4gc3VjY2Vzc2Z1bGx5IHB1bGxlZCBpbnRvIHRoZSBxdWV1ZS4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQkJdWNmaXJzdCggZXNjX2F0dHIoICRzdGF0dXMgKSApLAoJCQkJCQkJCWVzY19hdHRyKCAkcmVzdWx0WydJZCddICkKCQkJCQkJCSk7CgkJCQkJCQkkZGVidWcgPSBhcnJheSgKCQkJCQkJCQkndGl0bGUnICAgPT4gJHRpdGxlLAoJCQkJCQkJCSdtZXNzYWdlJyA9PiBlc2NfaHRtbF9fKCAnVGhpcyBJRCBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgcHVsbGVkIGFuZCBhZGRlZCB0byB0aGUgcXVldWUgZm9yIHByb2Nlc3NpbmcuIEl0IGNhbm5vdCBiZSBwdWxsZWQgYWdhaW4gd2l0aG91dCBiZWluZyBtb2RpZmllZCBhZ2Fpbi4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQkJJ3RyaWdnZXInID0+ICRzZl9zeW5jX3RyaWdnZXIsCgkJCQkJCQkJJ3BhcmVudCcgID0+ICcnLAoJCQkJCQkJCSdzdGF0dXMnICA9PiAkc3RhdHVzLAoJCQkJCQkJKTsKCQkJCQkJCSR0aGlzLT5sb2dnaW5nLT5zZXR1cCggJGRlYnVnICk7CgkJCQkJCX0gLy8gZW5kIG9mIGRlYnVnCgkJCQkJfSAvLyBlbmQgaWYKCQkJCX0gLy8gZW5kIGZvcmVhY2gKCgkJCQkvLyB3ZSdyZSBkb25lIHdpdGggdGhlIGZvcmVhY2guIHN0b3JlIHRoZSBMYXN0TW9kaWZpZWREYXRlIG9mIHRoZSBsYXN0IGl0ZW0gcHJvY2Vzc2VkLCBvciB0aGUgY3VycmVudCB0aW1lIGlmIGl0IGlzbid0IHRoZXJlLgoJCQkJJGxhc3RfZGF0ZV9mb3JfcXVlcnkgPSBpc3NldCggJHJlc3VsdFsnTGFzdE1vZGlmaWVkRGF0ZSddICkgPyAkcmVzdWx0WydMYXN0TW9kaWZpZWREYXRlJ10gOiAnJzsKCQkJCSR0aGlzLT5pbmNyZW1lbnRfY3VycmVudF90eXBlX2RhdGV0aW1lKCAkdHlwZSwgJGxhc3RfZGF0ZV9mb3JfcXVlcnksICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10gKTsKCgkJCQlpZiAoIHRydWUgPT09ICR0aGlzLT5iYXRjaF9zb3FsX3F1ZXJpZXMgKSB7CgkJCQkJLy8gaWYgYXBwbGljYWJsZSwgcHJvY2VzcyB0aGUgbmV4dCBiYXRjaCBvZiByZWNvcmRzLgoJCQkJCSR0aGlzLT5nZXRfbmV4dF9yZWNvcmRfYmF0Y2goICRsYXN0X3N5bmMsICRzYWxlc2ZvcmNlX21hcHBpbmcsICRtYXBfc3luY190cmlnZ2VycywgJHR5cGUsICR2ZXJzaW9uX3BhdGgsICRxdWVyeV9vcHRpb25zLCAkcmVzcG9uc2UgKTsKCQkJCX0gZWxzZSB7CgkJCQkJLy8gSGVyZSwgd2UgY2hlY2sgYW5kIHNlZSBpZiB0aGUgcXVlcnkgaGFzIHJlc3VsdHMgd2l0aCBhbiBhZGRpdGlvbmFsIG9mZnNldC4KCQkJCQkvLyBJZiBpdCBkb2VzLCB3ZSByZWdlbmVyYXRlIHRoZSBxdWVyeSBzbyBpdCB3aWxsIGhhdmUgYW4gb2Zmc2V0IG5leHQgdGltZSBpdCBydW5zLgoJCQkJCS8vIElmIGl0IGRvZXMgbm90LCB3ZSBjbGVhciB0aGUgcXVlcnkgaWYgd2UndmUganVzdCBwcm9jZXNzZWQgdGhlIGxhc3Qgcm93LgoJCQkJCS8vIHRoaXMgYWxsb3dzIHVzIHRvIHJ1biBhbiBvZmZzZXQgb24gdGhlIHN0b3JlZCBxdWVyeSBpbnN0ZWFkIG9mIGNsZWFyaW5nIGl0LgoJCQkJCSRkb2VzX25leHRfb2Zmc2V0X2hhdmVfcmVzdWx0cyA9ICR0aGlzLT5jaGVja19vZmZzZXRfcXVlcnkoICR0eXBlLCAkc2FsZXNmb3JjZV9tYXBwaW5nLCAkcXVlcnlfb3B0aW9ucyApOwoJCQkJCWVuZCggJHJlc3BvbnNlWydyZWNvcmRzJ10gKTsKCQkJCQkkbGFzdF9yZWNvcmRfa2V5ID0ga2V5KCAkcmVzcG9uc2VbJ3JlY29yZHMnXSApOwoJCQkJCWlmICggdHJ1ZSA9PT0gJGRvZXNfbmV4dF9vZmZzZXRfaGF2ZV9yZXN1bHRzICkgewoJCQkJCQkvLyBpbmNyZW1lbnQgU09RTCBxdWVyeSB0byBydW4uCgkJCQkJCSRzb3FsID0gJHRoaXMtPmdldF9wdWxsX3F1ZXJ5KCAkdHlwZSwgJHNhbGVzZm9yY2VfbWFwcGluZyApOwoJCQkJCX0gZWxzZWlmICggJGxhc3RfcmVjb3JkX2tleSA9PT0gJGtleSApIHsKCQkJCQkJLy8gY2xlYXIgdGhlIHN0b3JlZCBxdWVyeS4gd2UgZG9uJ3QgbmVlZCB0byBvZmZzZXQgYW5kIHdlJ3ZlIGZpbmlzaGVkIHRoZSBsb29wLgoJCQkJCQkkdGhpcy0+Y2xlYXJfY3VycmVudF90eXBlX3F1ZXJ5KCAkdHlwZSwgJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSApOwoJCQkJCX0KCQkJCX0gLy8gZW5kIGlmCgkJCX0gZWxzZWlmICggISBpc3NldCggJHJlc3BvbnNlWydlcnJvckNvZGUnXSApICYmIDAgPT09IGNvdW50KCAkcmVzcG9uc2VbJ3JlY29yZHMnXSApICYmIGZhbHNlID09PSAkdGhpcy0+YmF0Y2hfc29xbF9xdWVyaWVzICkgewoJCQkJLy8gb25seSB1cGRhdGUvY2xlYXIgdGhlc2Ugb3B0aW9uIHZhbHVlcyBpZiB3ZSBhcmUgY3VycmVudGx5IHN0aWxsIHByb2Nlc3NpbmcgYSBxdWVyeS4KCQkJCSRjdXJyZW50X3F1ZXJ5ID0gJHRoaXMtPnB1bGxfb3B0aW9ucy0+Z2V0KCAnY3VycmVudF9xdWVyeScsICR0eXBlLCAkc2FsZXNmb3JjZV9tYXBwaW5nWydpZCddLCAnJyApOwoJCQkJaWYgKCAnJyAhPT0gJGN1cnJlbnRfcXVlcnkgKSB7CgkJCQkJJHRoaXMtPmNsZWFyX2N1cnJlbnRfdHlwZV9xdWVyeSggJHR5cGUsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10gKTsKCQkJCX0KCQkJCS8vIHRyeSB0byBjaGVjayBmb3Igc3BlY2lmaWMgZXJyb3IgY29kZXMgZnJvbSBTYWxlc2ZvcmNlLgoJCQl9IGVsc2VpZiAoIGlzc2V0KCAkcmVzcG9uc2VbJ2Vycm9yQ29kZSddICkgJiYgJ0lOVkFMSURfRklFTEQnID09PSAkcmVzcG9uc2VbJ2Vycm9yQ29kZSddICkgewoJCQkJLy8gc2V0IHVwIGxvZyBlbnRyeS4KCQkJCSRzdGF0dXMgICAgPSAnZXJyb3InOwoJCQkJJGxvZ190aXRsZSA9IHNwcmludGYoCgkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBsb2cgc3RhdHVzLCAyKSB0aGUgc2VydmVyIGVycm9yIGNvZGUsIGFuZCAzKSB0aGUgbmFtZSBvZiB0aGUgU2FsZXNmb3JjZSBvYmplY3QuCgkJCQkJZXNjX2h0bWxfXyggJyUxJHM6ICUyJHMgd2hlbiBwdWxsaW5nICUzJHMgZGF0YSBmcm9tIFNhbGVzZm9yY2UuIENoZWNrIGFuZCByZXNhdmUgdGhlIGZpZWxkbWFwLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQl1Y2ZpcnN0KCBlc2NfYXR0ciggJHN0YXR1cyApICksCgkJCQkJZXNjX2F0dHIoICRyZXNwb25zZVsnZXJyb3JDb2RlJ10gKSwKCQkJCQllc2NfYXR0ciggJHNhbGVzZm9yY2VfbWFwcGluZ1snc2FsZXNmb3JjZV9vYmplY3QnXSApCgkJCQkpOwoJCQkJJGxvZ19ib2R5ID0gJzxwPicgLiBlc2NfaHRtbF9fKCAnQSBmaWVsZCBtYXkgaGF2ZSBiZWVuIGRlbGV0ZWQgZnJvbSBTYWxlc2ZvcmNlLCBvciBpdCBoYXMgb3RoZXJ3aXNlIGJlY29tZSBpbnZhbGlkLiBZb3UgbWF5IG5lZWQgdG8gY2hlY2sgYW5kIHJlc2F2ZSB5b3VyIGZpZWxkbWFwLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSAuICc8L3A+JzsKCgkJCQkvLyBpZiBpdCdzIGFuIGludmFsaWQgZmllbGQsIHRyeSB0byBjbGVhciB0aGUgY2FjaGVkIHF1ZXJ5IHNvIGl0IGNhbiB0cnkgYWdhaW4gbmV4dCB0aW1lLgoJCQkJJGN1cnJlbnRfcXVlcnkgPSAkdGhpcy0+cHVsbF9vcHRpb25zLT5nZXQoICdjdXJyZW50X3F1ZXJ5JywgJHR5cGUsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10sICcnICk7CgkJCQlpZiAoICcnICE9PSAkY3VycmVudF9xdWVyeSApIHsKCQkJCQkkdGhpcy0+Y2xlYXJfY3VycmVudF90eXBlX3F1ZXJ5KCAkdHlwZSwgJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSApOwoJCQkJCSRsb2dfdGl0bGUgLj0gZXNjX2h0bWxfXyggJyBUaGUgc3RvcmVkIHF1ZXJ5IGhhcyBiZWVuIGNsZWFyZWQuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApOwoJCQkJCSRsb2dfYm9keSAgLj0gJzxwPicgLiBlc2NfaHRtbF9fKCAnVGhlIGN1cnJlbnRseSBzdG9yZWQgcXVlcnkgZm9yIHRoaXMgb2JqZWN0IHR5cGUgaGFzIGJlZW4gZGVsZXRlZC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgLiAnPC9wPic7CgkJCQl9CgoJCQkJJGxvZ19ib2R5IC49IHNwcmludGYoCgkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBTYWxlc2ZvcmNlIEFQSSByZXNwb25zZSBtZXNzYWdlLgoJCQkJCSc8cD4nIC4gZXNjX2h0bWxfXyggJ1NhbGVzZm9yY2UgQVBJIFJlc3BvbnNlOiAlMSRzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApIC4gJzwvcD4nLAoJCQkJCSRyZXNwb25zZVsnbWVzc2FnZSddCgkJCQkpOwoJCQkJJHJlc3VsdCA9IGFycmF5KAoJCQkJCSd0aXRsZScgICA9PiAkbG9nX3RpdGxlLAoJCQkJCSdtZXNzYWdlJyA9PiAkbG9nX2JvZHksCgkJCQkJJ3RyaWdnZXInID0+IDAsCgkJCQkJJ3BhcmVudCcgID0+ICcnLAoJCQkJCSdzdGF0dXMnICA9PiAkc3RhdHVzLAoJCQkJKTsKCQkJCSR0aGlzLT5sb2dnaW5nLT5zZXR1cCggJHJlc3VsdCApOwoJCQl9IGVsc2VpZiAoIGlzc2V0KCAkcmVzcG9uc2VbJ2Vycm9yQ29kZSddICkgKSB7CgkJCQkvLyBjcmVhdGUgbG9nIGVudHJ5IGZvciBmYWlsZWQgcHVsbC4KCQkJCSRzdGF0dXMgPSAnZXJyb3InOwoJCQkJJHRpdGxlICA9IHNwcmludGYoCgkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBsb2cgc3RhdHVzLCAyKSB0aGUgc2VydmVyIGVycm9yIGNvZGUsIGFuZCAzKSB0aGUgbmFtZSBvZiB0aGUgU2FsZXNmb3JjZSBvYmplY3QuCgkJCQkJZXNjX2h0bWxfXyggJyUxJHM6ICUyJHMgd2hlbiBwdWxsaW5nICUzJHMgZGF0YSBmcm9tIFNhbGVzZm9yY2UnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJdWNmaXJzdCggZXNjX2F0dHIoICRzdGF0dXMgKSApLAoJCQkJCWVzY19hdHRyKCAkcmVzcG9uc2VbJ2Vycm9yQ29kZSddICksCgkJCQkJZXNjX2F0dHIoICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKQoJCQkJKTsKCQkJCSRyZXN1bHQgPSBhcnJheSgKCQkJCQkndGl0bGUnICAgPT4gJHRpdGxlLAoJCQkJCSdtZXNzYWdlJyA9PiAkcmVzcG9uc2VbJ21lc3NhZ2UnXSwKCQkJCQkndHJpZ2dlcicgPT4gMCwKCQkJCQkncGFyZW50JyAgPT4gJycsCgkJCQkJJ3N0YXR1cycgID0+ICRzdGF0dXMsCgkJCQkpOwoJCQkJJHRoaXMtPmxvZ2dpbmctPnNldHVwKCAkcmVzdWx0ICk7CgkJCQlyZXR1cm4gJHJlc3VsdDsKCgkJCX0gLy8gRW5kIGlmKCkgc3RhdGVtZW50LgoJCX0gLy8gRW5kIGZvcmVhY2goKSBsb29wLgoJfQoKCS8qKgoJICogUHVsbCB0aGUgbmV4dCBiYXRjaCBvZiByZWNvcmRzIGZyb20gdGhlIFNhbGVzZm9yY2UgQVBJLCBpZiBhcHBsaWNhYmxlCgkgKiBFeGVjdXRlcyBhIG5leHRSZWNvcmRzVXJsIFNPUUwgcXVlcnkgYmFzZWQgb24gdGhlIHByZXZpb3VzIHJlc3VsdCwKCSAqIGFuZCBwbGFjZXMgZWFjaCB1cGRhdGVkIFNGIG9iamVjdCBpbnRvIHRoZSBxdWV1ZSBmb3IgbGF0ZXIgcHJvY2Vzc2luZy4KCSAqCgkgKiBAcGFyYW0gZGF0ZXRpbWUgJGxhc3Rfc3luYyB3aGVuIGl0IHdhcyBsYXN0IHN5bmNlZC4KCSAqIEBwYXJhbSBhcnJheSAgICAkc2FsZXNmb3JjZV9tYXBwaW5nIHRoZSBmaWVsZG1hcC4KCSAqIEBwYXJhbSBhcnJheSAgICAkbWFwX3N5bmNfdHJpZ2dlcnMgdGhlIHN5bmMgdHJpZ2dlciBiaXQgdmFsdWVzLgoJICogQHBhcmFtIHN0cmluZyAgICR0eXBlIHRoZSBTYWxlc2ZvcmNlIG9iamVjdCB0eXBlLgoJICogQHBhcmFtIHN0cmluZyAgICR2ZXJzaW9uX3BhdGggdGhlIEFQSSBwYXRoIGZvciB0aGUgU2FsZXNmb3JjZSB2ZXJzaW9uLgoJICogQHBhcmFtIGFycmF5ICAgICRxdWVyeV9vcHRpb25zIHRoZSBTT1FMIHF1ZXJ5IG9wdGlvbnMuCgkgKiBAcGFyYW0gYXJyYXkgICAgJHJlc3BvbnNlIHRoZSBwcmV2aW91cyByZXNwb25zZS4KCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBnZXRfbmV4dF9yZWNvcmRfYmF0Y2goICRsYXN0X3N5bmMsICRzYWxlc2ZvcmNlX21hcHBpbmcsICRtYXBfc3luY190cmlnZ2VycywgJHR5cGUsICR2ZXJzaW9uX3BhdGgsICRxdWVyeV9vcHRpb25zLCAkcmVzcG9uc2UgKSB7CgkJLy8gSGFuZGxlIG5leHQgYmF0Y2ggb2YgcmVjb3JkcyBpZiBpdCBleGlzdHMuCgkJJG5leHRfcmVjb3Jkc191cmwgPSBpc3NldCggJHJlc3BvbnNlWyduZXh0UmVjb3Jkc1VybCddICkgPyBzdHJfcmVwbGFjZSggJHZlcnNpb25fcGF0aCwgJycsICRyZXNwb25zZVsnbmV4dFJlY29yZHNVcmwnXSApIDogZmFsc2U7CgkJd2hpbGUgKCAkbmV4dF9yZWNvcmRzX3VybCApIHsKCQkJLy8gc2hvdWxkbid0IGNhY2hlIHRoaXMgZWl0aGVyLiBpdCdzIGdvaW5nIGludG8gdGhlIHF1ZXVlIGlmIGl0IGV4aXN0cyBhbnl3YXkuCgkJCSRuZXdfcmVzdWx0cyAgPSAkc2ZhcGktPmFwaV9jYWxsKAoJCQkJJG5leHRfcmVjb3Jkc191cmwsCgkJCQlhcnJheSgpLAoJCQkJJ0dFVCcsCgkJCQkkcXVlcnlfb3B0aW9ucwoJCQkpOwoJCQkkbmV3X3Jlc3BvbnNlID0gJG5ld19yZXN1bHRzWydkYXRhJ107CgkJCWlmICggISBpc3NldCggJG5ld19yZXNwb25zZVsnZXJyb3JDb2RlJ10gKSApIHsKCQkJCS8vIFdyaXRlIGl0ZW1zIHRvIHRoZSBxdWV1ZS4KCQkJCWZvcmVhY2ggKCAkbmV3X3Jlc3BvbnNlWydyZWNvcmRzJ10gYXMgJHJlc3VsdCApIHsKCQkJCQkvLyBpZiB0aGlzIHJlY29yZCBpcyBuZXcgYXMgb2YgdGhlIGxhc3Qgc3luYywgdXNlIHRoZSBjcmVhdGUgdHJpZ2dlci4KCQkJCQlpZiAoIGlzc2V0KCAkcmVzdWx0WydDcmVhdGVkRGF0ZSddICkgJiYgJHJlc3VsdFsnQ3JlYXRlZERhdGUnXSA+ICRsYXN0X3N5bmMgKSB7CgkJCQkJCSRzZl9zeW5jX3RyaWdnZXIgPSAkdGhpcy0+bWFwcGluZ3MtPnN5bmNfc2ZfY3JlYXRlOwoJCQkJCX0gZWxzZSB7CgkJCQkJCSRzZl9zeW5jX3RyaWdnZXIgPSAkdGhpcy0+bWFwcGluZ3MtPnN5bmNfc2ZfdXBkYXRlOwoJCQkJCX0KCQkJCQkvLyBPbmx5IHF1ZXVlIHdoZW4gdGhlIHJlY29yZCdzIHRyaWdnZXIgaXMgY29uZmlndXJlZCBmb3IgdGhlIG1hcHBpbmcuCgkJCQkJaWYgKCBpc3NldCggJG1hcF9zeW5jX3RyaWdnZXJzICkgJiYgaXNfYXJyYXkoICRtYXBfc3luY190cmlnZ2VycyApICYmIGlzc2V0KCAkc2Zfc3luY190cmlnZ2VyICkgJiYgaW5fYXJyYXkoICRzZl9zeW5jX3RyaWdnZXIsICRtYXBfc3luY190cmlnZ2VycywgdHJ1ZSApICkgeyAvLyB3cCBvciBzZiBjcnVkIGV2ZW50LgoJCQkJCQkkZGF0YSA9IGFycmF5KAoJCQkJCQkJJ29iamVjdF90eXBlJyAgICAgPT4gJHR5cGUsCgkJCQkJCQknb2JqZWN0JyAgICAgICAgICA9PiAkcmVzdWx0LAoJCQkJCQkJJ21hcHBpbmcnICAgICAgICAgPT4gJHNhbGVzZm9yY2VfbWFwcGluZywKCQkJCQkJCSdzZl9zeW5jX3RyaWdnZXInID0+ICRzZl9zeW5jX3RyaWdnZXIsIC8vIHVzZSB0aGUgYXBwcm9wcmlhdGUgdHJpZ2dlciBiYXNlZCBvbiB3aGVuIHRoaXMgd2FzIGNyZWF0ZWQuCgkJCQkJCSk7CgkJCQkJCS8vIGFkZCBhIHF1ZXVlIGFjdGlvbiB0byBzYXZlIGRhdGEgZnJvbSBzYWxlc2ZvcmNlLgoJCQkJCQkkdGhpcy0+cXVldWUtPmFkZCgKCQkJCQkJCSR0aGlzLT5zY2hlZHVsYWJsZV9jbGFzc2VzWyAkdGhpcy0+c2NoZWR1bGVfbmFtZSBdWydjYWxsYmFjayddLAoJCQkJCQkJYXJyYXkoCgkJCQkJCQkJJ29iamVjdF90eXBlJyAgICAgPT4gJHR5cGUsCgkJCQkJCQkJJ29iamVjdCcgICAgICAgICAgPT4gJHJlc3VsdFsnSWQnXSwKCQkJCQkJCQknc2Zfc3luY190cmlnZ2VyJyA9PiAkc2Zfc3luY190cmlnZ2VyLAoJCQkJCQkJKSwKCQkJCQkJCSR0aGlzLT5zY2hlZHVsZV9uYW1lCgkJCQkJCSk7CgkJCQkJCS8vIFVwZGF0ZSB0aGUgbGFzdCBwdWxsIHN5bmMgdGltZXN0YW1wIGZvciB0aGlzIHJlY29yZCB0eXBlIHRvIGF2b2lkIHJlLXByb2Nlc3NpbmcgaW4gY2FzZSBvZiBlcnJvci4KCQkJCQkJJGxhc3Rfc3luY19wdWxsX3RyaWdnZXIgPSBEYXRlVGltZTo6Y3JlYXRlRnJvbUZvcm1hdCggJ1ktbS1kXFRIOmk6cysnLCAkcmVzdWx0WyAkc2FsZXNmb3JjZV9tYXBwaW5nWydwdWxsX3RyaWdnZXJfZmllbGQnXSBdLCBuZXcgRGF0ZVRpbWVab25lKCAnVVRDJyApICk7CgkJCQkJfQoJCQkJfQoJCQl9CgkJCSRuZXh0X3JlY29yZHNfdXJsID0gaXNzZXQoICRuZXdfcmVzcG9uc2VbJ25leHRSZWNvcmRzVXJsJ10gKSA/IHN0cl9yZXBsYWNlKCAkdmVyc2lvbl9wYXRoLCAnJywgJG5ld19yZXNwb25zZVsnbmV4dFJlY29yZHNVcmwnXSApIDogZmFsc2U7CgkJfSAvLyBlbmQgd2hpbGUgbG9vcAoJfQoKCS8qKgoJICogR2V0IHRoZSBuZXh0IG9mZnNldCBxdWVyeS4gSWYgY2hlY2sgaXMgdHJ1ZSwgb25seSBzZWUgaWYgdGhhdCBxdWVyeSB3b3VsZCBoYXZlIHJlc3VsdHMuIE90aGVyd2lzZSwgcmV0dXJuIHRoZSBTT1FMIG9iamVjdC4KCSAqIFdoZW4gYmF0Y2hTaXplIGlzIG5vdCBpbiB1c2UsIHJ1biBhIGNoZWNrIHdpdGggYW4gb2Zmc2V0LgoJICoKCSAqIEBwYXJhbSBzdHJpbmcgJHR5cGUgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0IHR5cGUuCgkgKiBAcGFyYW0gYXJyYXkgICRzYWxlc2ZvcmNlX21hcHBpbmcgdGhlIG1hcCBiZXR3ZWVuIG9iamVjdCB0eXBlcy4KCSAqIEBwYXJhbSBhcnJheSAgJHF1ZXJ5X29wdGlvbnMgdGhlIG9wdGlvbnMgZm9yIHRoZSBTT1FMIHF1ZXJ5LgoJICogQHJldHVybiBvYmplY3R8Ym9vbCAkc29xbHwkZG9lc19uZXh0X29mZnNldF9oYXZlX3Jlc3VsdHMKCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBjaGVja19vZmZzZXRfcXVlcnkoICR0eXBlLCAkc2FsZXNmb3JjZV9tYXBwaW5nLCAkcXVlcnlfb3B0aW9ucyApIHsKCgkJJHNvcWwgICAgICAgICAgICAgICAgICAgICAgICAgID0gJHRoaXMtPmdldF9wdWxsX3F1ZXJ5KCAkdHlwZSwgJHNhbGVzZm9yY2VfbWFwcGluZyApOwoJCSRkb2VzX25leHRfb2Zmc2V0X2hhdmVfcmVzdWx0cyA9IGZhbHNlOwoKCQkvLyBydW4gdGhlIF9fdG9TdHJpbmcgbWV0aG9kIHRvIGNvbnZlcnQgdGhlIFNPUUwgcXVlcnkgb2JqZWN0IHRvIGEgc3RyaW5nLgoJCSRzb3FsX3N0cmluZyA9IChzdHJpbmcpICRzb3FsOwoKCQkkc2ZhcGkgPSAkdGhpcy0+c2FsZXNmb3JjZVsnc2ZhcGknXTsKCQkvLyBFeGVjdXRlIHF1ZXJ5CgkJLy8gaGF2ZSB0byBjYXN0IGl0IHRvIHN0cmluZyB0byBtYWtlIHN1cmUgaXQgdXNlcyB0aGUgbWFnaWMgbWV0aG9kCgkJLy8gd2UgZG9uJ3Qgd2FudCB0byBjYWNoZSB0aGlzIGJlY2F1c2UgdGltZXN0YW1wcy4KCQkkcmVzdWx0cyA9ICRzZmFwaS0+cXVlcnkoCgkJCSRzb3FsX3N0cmluZywKCQkJJHF1ZXJ5X29wdGlvbnMKCQkpOwoKCQkkcmVzcG9uc2UgPSAkcmVzdWx0c1snZGF0YSddOwoJCWlmICggISBpc3NldCggJHJlc3BvbnNlWydlcnJvckNvZGUnXSApICYmIDAgPCBjb3VudCggJHJlc3BvbnNlWydyZWNvcmRzJ10gKSApIHsKCQkJJGRvZXNfbmV4dF9vZmZzZXRfaGF2ZV9yZXN1bHRzID0gdHJ1ZTsKCQl9CgkJcmV0dXJuICRkb2VzX25leHRfb2Zmc2V0X2hhdmVfcmVzdWx0czsKCX0KCgoJLyoqCgkgKiBHaXZlbiBhIFNPYmplY3QgdHlwZSBuYW1lLCBidWlsZCBhbiBTT1FMIHF1ZXJ5IHRvIGluY2x1ZGUgYWxsIGZpZWxkcyBmb3IgYWxsCgkgKiBmaWVsZG1hcHMgbWFwcGVkIHRvIHRoYXQgU09iamVjdC4KCSAqCgkgKiBAcGFyYW0gc3RyaW5nICR0eXBlIGUuZy4gIkNvbnRhY3QiLCAiQWNjb3VudCIsIGV0Yy4KCSAqIEBwYXJhbSBhcnJheSAgJHNhbGVzZm9yY2VfbWFwcGluZyB0aGUgZmllbGRtYXAgdGhhdCBtYXBzIHRoZSB0d28gb2JqZWN0IHR5cGVzLgoJICogQHJldHVybiBPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1NlbGVjdF9RdWVyeSBvciBudWxsIGlmIG5vIG1hcHBpbmdzIG9yIG5vIG1hcHBlZCBmaWVsZHMgd2VyZSBmb3VuZC4KCSAqIEBzZWUgT2JqZWN0X1N5bmNfU2ZfTWFwcGluZzo6Z2V0X21hcHBlZF9maWVsZHMKCSAqIEBzZWUgT2JqZWN0X1N5bmNfU2ZfTWFwcGluZzo6Z2V0X21hcHBlZF9yZWNvcmRfdHlwZXMKCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBnZXRfcHVsbF9xdWVyeSggJHR5cGUsICRzYWxlc2ZvcmNlX21hcHBpbmcgPSBhcnJheSgpICkgewoJCS8vIHdlIG5lZWQgdG8gZGV0ZXJtaW5lIHdoYXQgdG8gZG8gd2l0aCBzYXZlZCBxdWVyaWVzLiB0aGlzIGlzIHdoYXQgd2UgY3VycmVudGx5IGRvIGJ1dCBpdCBkb2Vzbid0IHdvcmsuCgkJLy8gY2hlY2sgaWYgd2UgaGF2ZSBhIHN0b3JlZCBuZXh0IHF1ZXJ5IHRvIHJ1biBmb3IgdGhpcyB0eXBlLiBpZiBzbywgdW5zZXJpYWxpemUgaXQgc28gd2UgaGF2ZSBhbiBvYmplY3QuCgkJJHB1bGxfcXVlcnlfcnVubmluZyA9ICR0aGlzLT5wdWxsX29wdGlvbnMtPmdldCggJ2N1cnJlbnRfcXVlcnknLCAkdHlwZSwgJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSwgJycgKTsKCQlpZiAoICcnICE9PSAkcHVsbF9xdWVyeV9ydW5uaW5nICkgewoJCQkkc2F2ZWRfcXVlcnkgPSBtYXliZV91bnNlcmlhbGl6ZSggJHB1bGxfcXVlcnlfcnVubmluZyApOwoJCX0KCgkJJG1hcHBlZF9maWVsZHMgICAgICAgPSBhcnJheSgpOwoJCSRtYXBwZWRfcmVjb3JkX3R5cGVzID0gYXJyYXkoKTsKCgkJLy8gb25seSB1c2UgZmllbGRzIHRoYXQgY29tZSBmcm9tIFNhbGVzZm9yY2UgdG8gV29yZFByZXNzLCBvciB0aGF0IHN5bmMuCgkJJG1hcHBlZF9maWVsZHMgPSBhcnJheV9tZXJnZSgKCQkJJG1hcHBlZF9maWVsZHMsCgkJCSR0aGlzLT5tYXBwaW5ncy0+Z2V0X21hcHBlZF9maWVsZHMoCgkJCQkkc2FsZXNmb3JjZV9tYXBwaW5nLAoJCQkJYXJyYXkoICR0aGlzLT5tYXBwaW5ncy0+ZGlyZWN0aW9uX3N5bmMsICR0aGlzLT5tYXBwaW5ncy0+ZGlyZWN0aW9uX3NmX3dvcmRwcmVzcyApCgkJCSkKCQkpOwoKCQkvLyBJZiBSZWNvcmQgVHlwZSBpcyBzcGVjaWZpZWQsIHJlc3RyaWN0IHF1ZXJ5LgoJCSRtYXBwaW5nX3JlY29yZF90eXBlcyA9ICR0aGlzLT5tYXBwaW5ncy0+Z2V0X21hcHBlZF9yZWNvcmRfdHlwZXMoICRzYWxlc2ZvcmNlX21hcHBpbmcgKTsKCgkJLy8gSWYgUmVjb3JkIFR5cGUgaXMgbm90IHNwZWNpZmllZCBmb3IgYSBnaXZlbiBtYXBwaW5nLCBlbnN1cmUgcXVlcnkgaXMgdW5yZXN0cmljdGVkLgoJCWlmICggZW1wdHkoICRtYXBwaW5nX3JlY29yZF90eXBlcyApICkgewoJCQkkbWFwcGVkX3JlY29yZF90eXBlcyA9IGZhbHNlOwoJCX0gZWxzZWlmICggaXNfYXJyYXkoICRtYXBwZWRfcmVjb3JkX3R5cGVzICkgKSB7CgkJCSRtYXBwZWRfcmVjb3JkX3R5cGVzID0gYXJyYXlfbWVyZ2UoICRtYXBwZWRfcmVjb3JkX3R5cGVzLCAkbWFwcGluZ19yZWNvcmRfdHlwZXMgKTsKCQl9CgoJCS8vIFRoZXJlIGFyZSBubyBmaWVsZCBtYXBwaW5ncyBjb25maWd1cmVkIHRvIHB1bGwgZGF0YSBmcm9tIFNhbGVzZm9yY2Ugc28KCQkvLyBtb3ZlIG9uIHRvIHRoZSBuZXh0IG1hcHBlZCBvYmplY3QuIFByZXZlbnRzIHF1ZXJ5aW5nIHVubWFwcGVkIGRhdGEuCgkJaWYgKCBlbXB0eSggJG1hcHBlZF9maWVsZHMgKSApIHsKCQkJcmV0dXJuIG51bGw7CgkJfQoKCQlpZiAoICEgaXNzZXQoICRzYXZlZF9xdWVyeSApICkgewoJCQkkc29xbCA9IG5ldyBPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1NlbGVjdF9RdWVyeSggJHR5cGUgKTsKCgkJCS8vIENvbnZlcnQgZmllbGQgbWFwcGluZ3MgdG8gU09RTC4KCQkJJHNvcWwtPmZpZWxkcyA9IGFycmF5X21lcmdlKAoJCQkJJG1hcHBlZF9maWVsZHMsCgkJCQlhcnJheSgKCQkJCQknSWQnID0+ICdJZCcsCgkJCQkJJHNhbGVzZm9yY2VfbWFwcGluZ1sncHVsbF90cmlnZ2VyX2ZpZWxkJ10gPT4gJHNhbGVzZm9yY2VfbWFwcGluZ1sncHVsbF90cmlnZ2VyX2ZpZWxkJ10sCgkJCQkpCgkJCSk7CgoJCQkvLyBjaGVjayBpZiB0aGlzIGlzIGEgU2FsZXNmb3JjZSBjcmVhdGUgZXZlbnQuCgkJCWlmICggaW5fYXJyYXkoICR0aGlzLT5tYXBwaW5ncy0+c3luY19zZl9jcmVhdGUsIChhcnJheSkgJHNhbGVzZm9yY2VfbWFwcGluZ1snc3luY190cmlnZ2VycyddLCB0cnVlICkgKSB7CgkJCQkkc29xbC0+ZmllbGRzWydDcmVhdGVkRGF0ZSddID0gJ0NyZWF0ZWREYXRlJzsKCQkJfQoKCQkJLy8gT3JkZXIgYnkgdGhlIHRyaWdnZXIgZmllbGQsIHJlcXVlc3RpbmcgdGhlIG9sZGVzdCByZWNvcmRzIGZpcnN0LgoJCQkkc29xbC0+b3JkZXIgPSBhcnJheSgKCQkJCSRzYWxlc2ZvcmNlX21hcHBpbmdbJ3B1bGxfdHJpZ2dlcl9maWVsZCddID0+ICdBU0MnLAoJCQkpOwoKCQkJLy8gU2V0IGEgbGltaXQgb24gdGhlIG51bWJlciBvZiByZWNvcmRzIHRoYXQgY2FuIGJlIHJldHJpZXZlZCBmcm9tIHRoZSBBUEkgYXQgb25lIHRpbWUuCgkJCSRzb3FsLT5saW1pdCA9IGZpbHRlcl92YXIoICR0aGlzLT5wdWxsX29wdGlvbnMtPmdldCggJ3F1ZXJ5X2xpbWl0JywgJycsICcnLCAyNSApLCBGSUxURVJfVkFMSURBVEVfSU5UICk7CgoJCQkvLyBpZiB0aGVyZSBhcmUgcmVjb3JkIHR5cGVzIG9uIHRoaXMgZmllbGRtYXAsIHVzZSB0aGVtIGFzIGEgY29uZGl0aW9uYWwuCgkJCWlmICggISBlbXB0eSggJG1hcHBlZF9yZWNvcmRfdHlwZXMgKSApIHsKCQkJCSRzb3FsLT5hZGRfY29uZGl0aW9uKCAnUmVjb3JkVHlwZUlkJywgYXJyYXlfdmFsdWVzKCAkbWFwcGVkX3JlY29yZF90eXBlcyApLCAnSU4nICk7CgkJCX0KCQl9IGVsc2UgewoJCQkkc29xbCA9ICRzYXZlZF9xdWVyeTsKCQl9CgoJCS8vIEdldCB0aGUgdmFsdWUgZm9yIHRoZSBwdWxsIHRyaWdnZXIgZmllbGQuIE9mdGVuIHRoaXMgd2lsbCBMYXN0TW9kaWZpZWREYXRlLiBJdCBuZWVkcyB0byBjaGFuZ2Ugd2hlbiB0aGUgcXVlcnkgZ2V0cyByZWdlbmVyYXRlZCBhZnRlciB0aGUgbWF4IG9mZnNldCBoYXMgYmVlbiByZWFjaGVkLgoJCSRwdWxsX3RyaWdnZXJfZmllbGRfdmFsdWUgPSAkdGhpcy0+Z2V0X3B1bGxfZGF0ZV92YWx1ZSggJHR5cGUsICRzb3FsLCAkc2FsZXNmb3JjZV9tYXBwaW5nWydpZCddICk7CgoJCS8vIHdlIGNoZWNrIHRvIHNlZSBpZiB0aGUgc3RvcmVkIGRhdGUgaXMgdGhlIHNhbWUgYXMgdGhlIG5ldyBvbmUuIGlmIGl0IGlzIG5vdCwgd2Ugd2lsbCB3YW50IHRvIHJlc2V0IHRoZSBvZmZzZXQuCgkJJHJlc2V0X29mZnNldCA9IGZhbHNlOwoJCSRoYXNfZGF0ZSAgICAgPSBmYWxzZTsKCQkka2V5ICAgICAgICAgID0gYXJyYXlfc2VhcmNoKCAkc2FsZXNmb3JjZV9tYXBwaW5nWydwdWxsX3RyaWdnZXJfZmllbGQnXSwgYXJyYXlfY29sdW1uKCAkc29xbC0+Y29uZGl0aW9ucywgJ2ZpZWxkJyApLCB0cnVlICk7CgkJaWYgKCBmYWxzZSAhPT0gJGtleSApIHsKCQkJJGhhc19kYXRlID0gdHJ1ZTsKCQkJaWYgKCAkc29xbC0+Y29uZGl0aW9uc1sgJGtleSBdWyd2YWx1ZSddICE9PSAkcHVsbF90cmlnZ2VyX2ZpZWxkX3ZhbHVlICkgewoJCQkJJHJlc2V0X29mZnNldCA9IHRydWU7CgkJCX0KCQl9CgoJCWlmICggZmFsc2UgPT09ICRoYXNfZGF0ZSApIHsKCQkJJHJlc2V0X29mZnNldCA9IHRydWU7CgkJCSRzb3FsLT5hZGRfY29uZGl0aW9uKCAkc2FsZXNmb3JjZV9tYXBwaW5nWydwdWxsX3RyaWdnZXJfZmllbGQnXSwgJHB1bGxfdHJpZ2dlcl9maWVsZF92YWx1ZSwgJz4nICk7CgkJfSBlbHNlIHsKCQkJJHNvcWwtPmNvbmRpdGlvbnNbICRrZXkgXVsndmFsdWUnXSA9ICRwdWxsX3RyaWdnZXJfZmllbGRfdmFsdWU7CgkJfQoKCQkvLyBHZXQgdGhlIHZhbHVlIGZvciB0aGUgU09RTCBvZmZzZXQuIElmIG1heCBoYXMgYWxyZWFkeSBiZWVuIHJlYWNoZWQsIGl0IGlzIHplcm8uCgkJJHNvcWwtPm9mZnNldCA9ICR0aGlzLT5nZXRfcHVsbF9vZmZzZXQoICR0eXBlLCAkc29xbCwgJHJlc2V0X29mZnNldCApOwoKCQkvLyBhZGQgYSBmaWx0ZXIgaGVyZSB0byBtb2RpZnkgdGhlIHF1ZXJ5CgkJLy8gSG9vayB0byBhbGxvdyBvdGhlciBwbHVnaW5zIHRvIG1vZGlmeSB0aGUgU09RTCBxdWVyeSBiZWZvcmUgaXQgaXMgc2VudCB0byBTYWxlc2ZvcmNlLgoJCSRzb3FsID0gYXBwbHlfZmlsdGVycyggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAncHVsbF9xdWVyeV9tb2RpZnknLCAkc29xbCwgJHR5cGUsICRzYWxlc2ZvcmNlX21hcHBpbmcsICRtYXBwZWRfZmllbGRzICk7CgoJCS8vIHF1aWNrIGV4YW1wbGUgdG8gY2hhbmdlIHRoZSBvcmRlciB0byBkZXNjZW5kaW5nLgoJCS8qIC8vIHBocGNzOmlnbm9yZSBTcXVpei5QSFAuQ29tbWVudGVkT3V0Q29kZS5Gb3VuZAoJCWFkZF9maWx0ZXIoICdvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZV9wdWxsX3F1ZXJ5X21vZGlmeScsICdjaGFuZ2VfcHVsbF9xdWVyeScsIDEwLCA0ICk7CgkJLy8gY2FuIGFsd2F5cyByZWR1Y2UgdGhpcyBudW1iZXIgaWYgYWxsIHRoZSBhcmd1bWVudHMgYXJlIG5vdCBuZWNlc3NhcnkKCQlmdW5jdGlvbiBjaGFuZ2VfcHVsbF9xdWVyeSggJHNvcWwsICR0eXBlLCAkc2FsZXNmb3JjZV9tYXBwaW5nLCAkbWFwcGVkX2ZpZWxkcyApIHsKCQkJJHNvcWwtPm9yZGVyID0gJ0RFU0MnOwoJCQlyZXR1cm4gJHNvcWw7CgkJfQoJCSovCgoJCS8vIE1ha2Ugc3VyZSBvdXIgU09RTCBvYmplY3QgcHJvcGVydGllcyB0aGF0IGFyZSBhcnJheXMgYXJlIHVuaXF1ZS4gVGhpcyBwcmV2ZW50cyB2YWx1ZXMgYWRkZWQgdmlhIGRldmVsb3BlciBob29rIGZyb20gYmVpbmcgYWRkZWQgcmVwZWF0ZWRseSB3aGVuIGEgcXVlcnkgaXMgY2FjaGVkLgoJCWlmICggdmVyc2lvbl9jb21wYXJlKCBQSFBfVkVSU0lPTiwgJzcuMC44JywgJz49JyApICkgewoJCQkkc29xbC0+ZmllbGRzICAgICA9IGFycmF5X3VuaXF1ZSggJHNvcWwtPmZpZWxkcywgU09SVF9SRUdVTEFSICk7CgkJCSRzb3FsLT5vcmRlciAgICAgID0gYXJyYXlfdW5pcXVlKCAkc29xbC0+b3JkZXIsIFNPUlRfUkVHVUxBUiApOwoJCQkkc29xbC0+Y29uZGl0aW9ucyA9IGFycmF5X3VuaXF1ZSggJHNvcWwtPmNvbmRpdGlvbnMsIFNPUlRfUkVHVUxBUiApOwoJCX0gZWxzZSB7CgkJCSRzb3FsLT5maWVsZHMgICAgID0gYXJyYXlfbWFwKCAndW5zZXJpYWxpemUnLCBhcnJheV91bmlxdWUoIGFycmF5X21hcCggJ3NlcmlhbGl6ZScsICRzb3FsLT5maWVsZHMgKSApICk7CgkJCSRzb3FsLT5vcmRlciAgICAgID0gYXJyYXlfbWFwKCAndW5zZXJpYWxpemUnLCBhcnJheV91bmlxdWUoIGFycmF5X21hcCggJ3NlcmlhbGl6ZScsICRzb3FsLT5vcmRlciApICkgKTsKCQkJJHNvcWwtPmNvbmRpdGlvbnMgPSBhcnJheV9tYXAoICd1bnNlcmlhbGl6ZScsIGFycmF5X3VuaXF1ZSggYXJyYXlfbWFwKCAnc2VyaWFsaXplJywgJHNvcWwtPmNvbmRpdGlvbnMgKSApICk7CgkJfQoKCQkvLyBzZXJpYWxpemUgdGhlIGN1cnJlbnRseSBydW5uaW5nIFNPUUwgcXVlcnkgYW5kIHN0b3JlIGl0IGZvciB0aGlzIHR5cGUuCgkJJHNlcmlhbGl6ZWRfY3VycmVudF9xdWVyeSA9IG1heWJlX3NlcmlhbGl6ZSggJHNvcWwgKTsKCQkkdGhpcy0+cHVsbF9vcHRpb25zLT5zZXQoICdjdXJyZW50X3F1ZXJ5JywgJHR5cGUsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10sICRzZXJpYWxpemVkX2N1cnJlbnRfcXVlcnksIGZhbHNlICk7CgkJcmV0dXJuICRzb3FsOwoJfQoKCgkvKioKCSAqIERldGVybWluZSB0aGUgb2Zmc2V0IGZvciB0aGUgU09RTCBxdWVyeSB0byBydW4KCSAqCgkgKiBAcGFyYW0gc3RyaW5nICR0eXBlIGUuZy4gIkNvbnRhY3QiLCAiQWNjb3VudCIsIGV0Yy4KCSAqIEBwYXJhbSBvYmplY3QgJHNvcWwgdGhlIFNPUUwgb2JqZWN0LgoJICogQHBhcmFtIGJvb2wgICAkcmVzZXQgd2hldGhlciB0byByZXNldCB0aGUgb2Zmc2V0LgoJICovCglwcml2YXRlIGZ1bmN0aW9uIGdldF9wdWxsX29mZnNldCggJHR5cGUsICRzb3FsLCAkcmVzZXQgPSBmYWxzZSApIHsKCQkvLyBzZXQgYW4gb2Zmc2V0LiBpZiB0aGVyZSBpcyBhIHNhdmVkIG9mZnNldCwgYWRkIHRoZSBsaW1pdCB0byBpdCBhbmQgbW92ZSBvbi4gb3RoZXJ3aXNlLCB1c2UgdGhlIGxpbWl0LgoJCSRvZmZzZXQgPSBpc3NldCggJHNvcWwtPm9mZnNldCApID8gJHNvcWwtPm9mZnNldCArICRzb3FsLT5saW1pdCA6ICRzb3FsLT5saW1pdDsKCQlpZiAoIHRydWUgPT09ICRyZXNldCB8fCAkb2Zmc2V0ID4gJHRoaXMtPm1heF9zb3FsX3NpemUgKSB7CgkJCSRvZmZzZXQgPSAwOwoJCX0KCQlyZXR1cm4gJG9mZnNldDsKCX0KCgkvKioKCSAqIEdpdmVuIGEgU09iamVjdCB0eXBlIG5hbWUsIGRldGVybWluZSB0aGUgZGF0ZXRpbWUgdmFsdWUgdGhlIFNPUUwgb2JqZWN0IHNob3VsZCB1c2UgdG8gZmlsdGVyIHJlc3VsdHMuIE9mdGVuIHRoaXMgd2lsbCBiZSBMYXN0TW9kaWZpZWREYXRlLgoJICoKCSAqIEBwYXJhbSBzdHJpbmcgJHR5cGUgZS5nLiAiQ29udGFjdCIsICJBY2NvdW50IiwgZXRjLgoJICogQHBhcmFtIG9iamVjdCAkc29xbCB0aGUgU09RTCBvYmplY3QuCgkgKiBAcGFyYW0gaW50ICAgICRmaWVsZG1hcF9pZCBpcyB0aGUgZmllbGRtYXAgSUQgdGhhdCBnb2VzIHdpdGggdGhpcyBxdWVyeS4KCSAqIEByZXR1cm4gdGltZXN0YW1wICRwdWxsX3RyaWdnZXJfZmllbGRfdmFsdWUKCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBnZXRfcHVsbF9kYXRlX3ZhbHVlKCAkdHlwZSwgJHNvcWwsICRmaWVsZG1hcF9pZCA9ICcnICkgewoJCS8vIElmIG5vIGxhc3R1cGRhdGUsIGdldCBhbGwgcmVjb3JkcywgZWxzZSBnZXQgcmVjb3JkcyBzaW5jZSBsYXN0IHB1bGwuCgkJLy8gdGhpcyBzaG91bGQgYmUgd2hhdCBrZWVwcyBpdCBmcm9tIGdldHRpbmcgYWxsIHRoZSByZWNvcmRzLCB3aGV0aGVyIG9yIG5vdCB0aGV5J3ZlIGV2ZXIgYmVlbiB1cGRhdGVkCgkJLy8gd2UgYWxzbyB1c2UgdGhlIG9wdGlvbiBmb3Igd2hlbiB0aGUgcGx1Z2luIHdhcyBpbnN0YWxsZWQsIGFuZCBkb24ndCBnbyBiYWNrIGZ1cnRoZXIgdGhhbiB0aGF0IGJ5IGRlZmF1bHQuCgoJCSRzZl9hY3RpdmF0ZV90aW1lID0gZ2V0X29wdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAnYWN0aXZhdGVfdGltZScsICcnICk7CgkJJHNmX2xhc3Rfc3luYyAgICAgPSAkdGhpcy0+cHVsbF9vcHRpb25zLT5nZXQoICdsYXN0X3N5bmMnLCAkdHlwZSwgJGZpZWxkbWFwX2lkLCBudWxsICk7CgkJaWYgKCAkc2ZfbGFzdF9zeW5jICkgewoJCQkkcHVsbF90cmlnZ2VyX2ZpZWxkX3ZhbHVlID0gZ21kYXRlKCAnWS1tLWRcVEg6aTpzXFonLCAkc2ZfbGFzdF9zeW5jICk7CgkJfSBlbHNlIHsKCQkJJHB1bGxfdHJpZ2dlcl9maWVsZF92YWx1ZSA9IGdtZGF0ZSggJ1ktbS1kXFRIOmk6c1xaJywgJHNmX2FjdGl2YXRlX3RpbWUgKTsKCQl9CgoJCS8vIEhvb2sgdG8gYWxsb3cgb3RoZXIgcGx1Z2lucyB0byBzZXQgdGhlICJsYXN0IHB1bGwgZGF0ZSIgdG8gd2hlbmV2ZXIgdGhleSB3YW50LCBpbmNsdWRpbmcgYSBkYXRldGltZSBmcm9tIGJlZm9yZSB0aGUgcGx1Z2luIHdhcyBhY3RpdmF0ZWQuCgkJJHB1bGxfdHJpZ2dlcl9maWVsZF92YWx1ZSA9IGFwcGx5X2ZpbHRlcnMoICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ2NoYW5nZV9wdWxsX2RhdGVfdmFsdWUnLCAkcHVsbF90cmlnZ2VyX2ZpZWxkX3ZhbHVlLCAkdHlwZSwgJHNvcWwsICRmaWVsZG1hcF9pZCApOwoKCQkvLyBleGFtcGxlIHRvIHVzZSBhbm90aGVyIGRhdGV0aW1lIHZhbHVlLgoJCS8vIHRoZSB2YWx1ZSBuZWVkcyB0byBiZSBhIGdtZGF0ZSwgZm9ybWF0dGVkIGZvciBTYWxlc2ZvcmNlOiAnWS1tLWRcVEg6aTpzXFonLgoJCS8qIC8vIHBocGNzOmlnbm9yZSBTcXVpei5QSFAuQ29tbWVudGVkT3V0Q29kZS5Gb3VuZAoJCWFkZF9maWx0ZXIoICdvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZV9jaGFuZ2VfcHVsbF9kYXRlX3ZhbHVlJywgJ2NoYW5nZV9wdWxsX2RhdGVfdmFsdWUnLCAxMCwgNSApOwoJCS8vIGNhbiBhbHdheXMgcmVkdWNlIHRoaXMgbnVtYmVyIGlmIGFsbCB0aGUgYXJndW1lbnRzIGFyZSBub3QgbmVjZXNzYXJ5CgkJZnVuY3Rpb24gY2hhbmdlX3B1bGxfZGF0ZV92YWx1ZSggJHB1bGxfdHJpZ2dlcl9maWVsZF92YWx1ZSwgJG9iamVjdF90eXBlLCAkc29xbCwgJGZpZWxkbWFwX2lkICkgewoJCQlpZiAoICdDb250YWN0JyA9PT0gJG9iamVjdF90eXBlICApIHsKCQkJCS8vIGV4YW1wbGU6IGdvIGJhY2sgdG8gMjAwNi0wMS0wMVQyMzowMTowMSswMTowMCwgd2hpY2ggaXMgMTEzNjE1Mjg2MS4KCQkJCSRwdWxsX3RyaWdnZXJfZmllbGRfdmFsdWUgPSBnbWRhdGUoICdZLW0tZFxUSDppOnNcWicsIDExMzYxNTI4NjEgKTsKCQkJfQoJCQlyZXR1cm4gJHB1bGxfdHJpZ2dlcl9maWVsZF92YWx1ZTsKCQl9CgkJKi8KCgkJcmV0dXJuICRwdWxsX3RyaWdnZXJfZmllbGRfdmFsdWU7CgoJfQoKCS8qKgoJICogR2V0IG1lcmdlZCByZWNvcmRzIGZyb20gU2FsZXNmb3JjZS4KCSAqIE5vdGUgdGhhdCBtZXJnZXMgY2FuIGN1cnJlbnRseSBvbmx5IHdvcmsgaWYgdGhlIFNvYXAgQVBJIGlzIGVuYWJsZWQuCgkgKi8KCXByaXZhdGUgZnVuY3Rpb24gZ2V0X21lcmdlZF9yZWNvcmRzKCkgewoKCQkkdXNlX3NvYXAgPSAkdGhpcy0+c2FsZXNmb3JjZVsnc29hcF9sb2FkZWQnXTsKCQlpZiAoIHRydWUgPT09ICR1c2Vfc29hcCApIHsKCQkJJHNvYXAgPSBuZXcgT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9Tb2FwX1BhcnRuZXIoKTsKCQl9IGVsc2UgewoJCQlyZXR1cm47IC8vIGlmIHRoZSBSRVNUIEFQSSBldmVyIHN1cHBvcnRzIG1lcmdpbmcsIHdlIGNhbiBkbyBzb21ldGhpbmcgZWxzZSBpbiB0aGlzIGNhc2UuCgkJfQoJCSRzZWNvbmRzID0gNjA7CgoJCSRtZXJnZWRfcmVjb3JkcyA9IGFycmF5KCk7CgoJCS8vIExvYWQgZmllbGRtYXBzIGZvciBtZXJnZWFibGUgdHlwZXMuCgkJZm9yZWFjaCAoICR0aGlzLT5tZXJnZWFibGVfcmVjb3JkX3R5cGVzIGFzICR0eXBlICkgewoJCQkkbWFwcGluZ3MgPSAkdGhpcy0+bWFwcGluZ3MtPmdldF9maWVsZG1hcHMoCgkJCQludWxsLAoJCQkJYXJyYXlfbWVyZ2UoCgkJCQkJJHRoaXMtPm1hcHBpbmdzLT5hY3RpdmVfZmllbGRtYXBfY29uZGl0aW9ucywKCQkJCQlhcnJheSgKCQkJCQkJJ3NhbGVzZm9yY2Vfb2JqZWN0JyA9PiAkdHlwZSwKCQkJCQkpCgkJCQkpLAoJCQkpOwoKCQkJLy8gSXRlcmF0ZSBvdmVyIGVhY2ggZmllbGQgbWFwcGluZyB0byBkZXRlcm1pbmUgb3VyIHF1ZXJ5IHBhcmFtZXRlcnMuCgkJCWZvcmVhY2ggKCAkbWFwcGluZ3MgYXMgJHNhbGVzZm9yY2VfbWFwcGluZyApIHsKCQkJCSRsYXN0X21lcmdlX3N5bmMgPSAkdGhpcy0+cHVsbF9vcHRpb25zLT5nZXQoICdtZXJnZV9sYXN0JywgJHNhbGVzZm9yY2VfbWFwcGluZ1snc2FsZXNmb3JjZV9vYmplY3QnXSwgJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSwgdGltZSgpICk7CgkJCQkkbm93ICAgICAgICAgICAgID0gdGltZSgpOwoJCQkJJHRoaXMtPnB1bGxfb3B0aW9ucy0+c2V0KCAnbWVyZ2VfbGFzdCcsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3NhbGVzZm9yY2Vfb2JqZWN0J10sICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10sICRub3cgKTsKCgkJCQkvLyBnZXRfZGVsZXRlZCgpIGNvbnN0cmFpbnQ6IHN0YXJ0RGF0ZSBjYW5ub3QgYmUgbW9yZSB0aGFuIDMwIGRheXMgYWdvCgkJCQkvLyAodXNpbmcgYW4gaW5jb21wYXRpYmxlIGRhdGUgbWF5IGxlYWQgdG8gZXhjZXB0aW9ucykuCgkJCQkkbGFzdF9tZXJnZV9zeW5jID0gJGxhc3RfbWVyZ2Vfc3luYyA+ICggdGltZSgpIC0gMjUwNTYwMCApID8gJGxhc3RfbWVyZ2Vfc3luYyA6ICggdGltZSgpIC0gMjUwNTYwMCApOwoKCQkJCS8vIGdldF9kZWxldGVkKCkgY29uc3RyYWludDogc3RhcnREYXRlIG11c3QgYmUgYXQgbGVhc3Qgb25lIG1pbnV0ZSBncmVhdGVyCgkJCQkvLyB0aGFuIGVuZERhdGUuCgkJCQkkbm93ID0gJG5vdyA+ICggJGxhc3RfbWVyZ2Vfc3luYyArIDYwICkgPyAkbm93IDogJG5vdyArIDYwOwoKCQkJCS8vIG5lZWQgdG8gYmUgdXNpbmcgZ21kYXRlIGZvciBTYWxlc2ZvcmNlIGNhbGwuCgkJCQkkbGFzdF9tZXJnZV9zeW5jX3NmID0gZ21kYXRlKCAnWS1tLWRcVEg6aTpzXFonLCAkbGFzdF9tZXJnZV9zeW5jICk7CgkJCQkkbWVyZ2VkICAgICAgICAgICAgID0gYXJyYXkoKTsKCQkJCS8vIHRoZXJlIGRvZXNuJ3QgYXBwZWFyIHRvIGJlIGEgd2F5IHRvIGRvIHRoaXMgaW4gdGhlIHJlc3QgYXBpOyBmb3Igbm93IHdlJ2xsIGRvIHNvYXAuCgkJCQkvLyB0aGUgc29hcCBxdWVyeSBvbmx5IHdvcmtzIGltbWVkaWF0ZWx5IGZvbGxvd2luZyBhIG1lcmdlIGFuZCBzaG9ydGx5IGFmdGVyLgoJCQkJaWYgKCB0cnVlID09PSAkdXNlX3NvYXAgKSB7CgkJCQkJJHR5cGUgICA9ICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3NhbGVzZm9yY2Vfb2JqZWN0J107CgkJCQkJJHF1ZXJ5ICA9ICJTRUxFQ1QgSWQsIGlzRGVsZXRlZCwgbWFzdGVyUmVjb3JkSWQgRlJPTSAkdHlwZSBXSEVSRSBtYXN0ZXJSZWNvcmRJZCAhPSAnJyBBTkQgU3lzdGVtTW9kU3RhbXAgPiAkbGFzdF9tZXJnZV9zeW5jX3NmIjsKCQkJCQkkbWVyZ2VkID0gJHNvYXAtPnRyeV9zb2FwKCAncXVlcnlBbGwnLCAkcXVlcnkgKTsKCQkJCQlpZiAoICEgZW1wdHkoICRtZXJnZWQtPnJlY29yZHMgKSApIHsKCQkJCQkJJG1lcmdlZCA9IGpzb25fZGVjb2RlKCB3cF9qc29uX2VuY29kZSggJG1lcmdlZC0+cmVjb3JkcyApLCB0cnVlICk7CgkJCQkJfSBlbHNlIHsKCQkJCQkJY29udGludWU7CgkJCQkJfQoKCQkJCQlmb3JlYWNoICggJG1lcmdlZCBhcyAkcmVzdWx0ICkgewoJCQkJCQkkcmVjb3JkID0gYXJyYXkoKTsKCQkJCQkJaWYgKCBpc19hcnJheSggYXJyYXlfdW5pcXVlKCAkcmVzdWx0WydJZCddICkgKSApIHsKCQkJCQkJCSRyZWNvcmRbJ0lkJ10gPSBhcnJheV91bmlxdWUoICRyZXN1bHRbJ0lkJ10gKVswXTsKCQkJCQkJfSBlbHNlIHsKCQkJCQkJCSRyZWNvcmRbJ0lkJ10gPSAkcmVzdWx0WydJZCddOwoJCQkJCQl9CgkJCQkJCWlmICggaXNzZXQoICRyZXN1bHRbJ2FueSddICkgKSB7CgkJCQkJCQlsaWJ4bWxfdXNlX2ludGVybmFsX2Vycm9ycyggdHJ1ZSApOwoJCQkJCQkJJGFueSA9IHNpbXBsZXhtbF9sb2FkX3N0cmluZyggJzw/eG1sIHZlcnNpb249IjEuMCIgc3RhbmRhbG9uZT0ieWVzIj8+PHJvb3Q+JyAuICRyZXN1bHRbJ2FueSddIC4gJzwvcm9vdD4nICk7CgkJCQkJCQlpZiAoICRhbnkgKSB7CgkJCQkJCQkJJGpzb24gICA9IHdwX2pzb25fZW5jb2RlKCAkYW55ICk7CgkJCQkJCQkJJGFycmF5ICA9IGpzb25fZGVjb2RlKCAkanNvbiwgdHJ1ZSApOwoJCQkJCQkJCSRyZWNvcmQgPSBhcnJheV9tZXJnZSggJHJlY29yZCwgJGFycmF5ICk7CgkJCQkJCQl9CgkJCQkJCX0KCQkJCQkJJG1lcmdlZF9yZWNvcmRzW10gPSAkcmVjb3JkOwoJCQkJCQkkdGhpcy0+cmVzcG9uZF90b19zYWxlc2ZvcmNlX21lcmdlKCAkdHlwZSwgJHJlY29yZCApOwoJCQkJCX0gLy8gRW5kIGZvcmVhY2ggb24gbWVyZ2VkCgkJCQl9IC8vIEVuZCBpZiBvbiBzb2FwCgkJCQlpZiAoICEgZW1wdHkoICRtZXJnZWRfcmVjb3JkcyApICkgewoJCQkJCSR0aGlzLT5zeW5jX3RyYW5zaWVudHMtPnNldCggJ3NhbGVzZm9yY2VfbWVyZ2VkJywgJHR5cGUsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10sICRtZXJnZWRfcmVjb3JkcywgJHNlY29uZHMgKTsKCQkJCX0KCQkJfSAvLyBFbmQgZm9yZWFjaCBvbiBtYXBwaW5ncwoJCX0gLy8gZW5kIGZvcmVhY2ggb24gdHlwZXMKCgl9CgoJLyoqCgkgKiBSZXNwb25kIHRvIFNhbGVzZm9yY2UgbWVyZ2UgZXZlbnRzCgkgKiBUaGlzIG1lYW5zIHdlIHVwZGF0ZSB0aGUgbWFwcGluZyBvYmplY3QgdG8gY29udGFpbiB0aGUgbmV3IFNhbGVzZm9yY2UgSWQsIGFuZCBwdWxsIGl0cyBkYXRhCgkgKgoJICogQHBhcmFtIHN0cmluZyAkb2JqZWN0X3R5cGUgd2hhdCB0eXBlIG9mIFNhbGVzZm9yY2Ugb2JqZWN0IGl0IGlzLgoJICogQHBhcmFtIGFycmF5ICAkbWVyZ2VkX3JlY29yZCB0aGUgcmVjb3JkIHRoYXQgd2FzIG1lcmdlZC4KCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiByZXNwb25kX3RvX3NhbGVzZm9yY2VfbWVyZ2UoICRvYmplY3RfdHlwZSwgJG1lcmdlZF9yZWNvcmQgKSB7CgkJJG9wID0gJ01lcmdlJzsKCQlpZiAoIGlzc2V0KCAkbWVyZ2VkX3JlY29yZFsnSWQnXSApICYmIHRydWUgPT09IGZpbHRlcl92YXIoICRtZXJnZWRfcmVjb3JkWydzZjpJc0RlbGV0ZWQnXSwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4gKSAmJiAnJyAhPT0gJG1lcmdlZF9yZWNvcmRbJ3NmOk1hc3RlclJlY29yZElkJ10gKSB7CgkJCSRwcmV2aW91c19zZl9pZCAgPSAkbWVyZ2VkX3JlY29yZFsnSWQnXTsKCQkJJG5ld19zZl9pZCAgICAgICA9ICRtZXJnZWRfcmVjb3JkWydzZjpNYXN0ZXJSZWNvcmRJZCddOwoJCQkkbWFwcGluZ19vYmplY3RzID0gJHRoaXMtPm1hcHBpbmdzLT5sb2FkX29iamVjdF9tYXBzX2J5X3NhbGVzZm9yY2VfaWQoICRwcmV2aW91c19zZl9pZCApOwoJCQlmb3JlYWNoICggJG1hcHBpbmdfb2JqZWN0cyBhcyAkbWFwcGluZ19vYmplY3QgKSB7CgkJCQkkd29yZHByZXNzX3R5cGUgICAgICAgICAgICAgICAgICA9ICRtYXBwaW5nX29iamVjdFsnd29yZHByZXNzX29iamVjdCddOwoJCQkJJHdvcmRwcmVzc19pZCAgICAgICAgICAgICAgICAgICAgPSAkbWFwcGluZ19vYmplY3RbJ3dvcmRwcmVzc19pZCddOwoJCQkJJG1hcHBpbmdfb2JqZWN0WydzYWxlc2ZvcmNlX2lkJ10gPSAkbmV3X3NmX2lkOwoJCQkJJG1hcHBpbmdfb2JqZWN0ICAgICAgICAgICAgICAgICAgPSAkdGhpcy0+bWFwcGluZ3MtPnVwZGF0ZV9vYmplY3RfbWFwKCAkbWFwcGluZ19vYmplY3QsICRtYXBwaW5nX29iamVjdFsnaWQnXSApOwoKCQkJCSRzdGF0dXMgPSAnc3VjY2Vzcyc7CgkJCQkkdGl0bGUgID0gc3ByaW50ZigKCQkJCQkvLyB0cmFuc2xhdG9yczogcGxhY2Vob2xkZXJzIGFyZTogMSkgdGhlIGxvZyBzdGF0dXMsIDIpIHdoYXQgb3BlcmF0aW9uIGlzIGhhcHBlbmluZywgMykgdGhlIG5hbWUgb2YgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0IHR5cGUsIDQpIHRoZSBwcmV2aW91cyBTYWxlc2ZvcmNlIElkIHZhbHVlLCA1KSB0aGUgbmV3IFNhbGVzZm9yY2UgSWQgdmFsdWUsIDYpIHRoZSBuYW1lIG9mIHRoZSBXb3JkUHJlc3Mgb2JqZWN0LCA3KSB0aGUgV29yZFByZXNzIGlkIHZhbHVlLgoJCQkJCWVzY19odG1sX18oICclMSRzOiAlMiRzIFNhbGVzZm9yY2UgJTMkcyBvYmplY3RzIHdpdGggSWRzICU0JHMgYW5kICU1JHMgd2VyZSBtZXJnZWQgKCU1JHMgaXMgdGhlIHJlbWFpbmluZyBJRC4gSXQgaXMgbWFwcGVkIHRvIFdvcmRQcmVzcyAlNiRzIHdpdGggJTckcy4pJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCXVjZmlyc3QoIGVzY19hdHRyKCAkc3RhdHVzICkgKSwKCQkJCQllc2NfYXR0ciggJG9wICksCgkJCQkJZXNjX2F0dHIoICRvYmplY3RfdHlwZSApLAoJCQkJCWVzY19hdHRyKCAkcHJldmlvdXNfc2ZfaWQgKSwKCQkJCQllc2NfYXR0ciggJG5ld19zZl9pZCApLAoJCQkJCWVzY19hdHRyKCAkd29yZHByZXNzX3R5cGUgKSwKCQkJCQllc2NfYXR0ciggJHdvcmRwcmVzc19pZCApCgkJCQkpOwoJCQkJJHJlc3VsdCA9IGFycmF5KAoJCQkJCSd0aXRsZScgICA9PiAkdGl0bGUsCgkJCQkJJ21lc3NhZ2UnID0+ICcnLAoJCQkJCSd0cmlnZ2VyJyA9PiAwLAoJCQkJCSdwYXJlbnQnICA9PiAkd29yZHByZXNzX2lkLAoJCQkJCSdzdGF0dXMnICA9PiAkc3RhdHVzLAoJCQkJKTsKCQkJCSR0aGlzLT5sb2dnaW5nLT5zZXR1cCggJHJlc3VsdCApOwoKCQkJCS8vIGFmdGVyIGl0IGhhcyBiZWVuIG1lcmdlZCwgcHVsbCBpdC4KCQkJCSRyZXN1bHQgPSAkdGhpcy0+bWFudWFsX3B1bGwoICRvYmplY3RfdHlwZSwgJG5ld19zZl9pZCApOwoKCQkJfQoJCX0KCX0KCgkvKioKCSAqIEdldCBkZWxldGVkIHJlY29yZHMgZnJvbSBzYWxlc2ZvcmNlLgoJICogTm90ZSB0aGF0IGRlbGV0aW9ucyBjYW4gb25seSBiZSBxdWVyaWVkIHZpYSBSRVNUIHdpdGggYW4gQVBJIHZlcnNpb24gPj0gMjkuMC4KCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBnZXRfZGVsZXRlZF9yZWNvcmRzKCkgewoKCQkkc2ZhcGkgPSAkdGhpcy0+c2FsZXNmb3JjZVsnc2ZhcGknXTsKCgkJLy8gTG9hZCBhbGwgdW5pcXVlIFNGIHJlY29yZCB0eXBlcyB0aGF0IHdlIGhhdmUgbWFwcGluZ3MgZm9yLiBUaGlzIHJlc3VsdHMgaW4gYSBkb3VibGUgbG9vcC4KCQlmb3JlYWNoICggJHRoaXMtPm1hcHBpbmdzLT5nZXRfZmllbGRtYXBzKCBudWxsLCAkdGhpcy0+bWFwcGluZ3MtPmFjdGl2ZV9maWVsZG1hcF9jb25kaXRpb25zICkgYXMgJHNhbGVzZm9yY2VfbWFwcGluZyApIHsKCgkJCSRtYXBfc3luY190cmlnZ2VycyA9IChhcnJheSkgJHNhbGVzZm9yY2VfbWFwcGluZ1snc3luY190cmlnZ2VycyddOyAvLyB0aGlzIHNldHMgd2hpY2ggU2FsZXNmb3JjZSB0cmlnZ2VycyBhcmUgYWxsb3dlZCBmb3IgdGhlIG1hcHBpbmcuCgkJCSR0eXBlICAgICAgICAgICAgICA9ICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3NhbGVzZm9yY2Vfb2JqZWN0J107IC8vIHRoaXMgc2V0cyB0aGUgU2FsZXNmb3JjZSBvYmplY3QgdHlwZSBmb3IgdGhlIFNPUUwgcXVlcnkuCgoJCQkkbWFwcGluZ3MgPSAkdGhpcy0+bWFwcGluZ3MtPmdldF9maWVsZG1hcHMoCgkJCQludWxsLAoJCQkJYXJyYXlfbWVyZ2UoCgkJCQkJJHRoaXMtPm1hcHBpbmdzLT5hY3RpdmVfZmllbGRtYXBfY29uZGl0aW9ucywKCQkJCQlhcnJheSgKCQkJCQkJJ3NhbGVzZm9yY2Vfb2JqZWN0JyA9PiAkdHlwZSwKCQkJCQkpCgkJCQkpLAoJCQkpOwoKCQkJLy8gSXRlcmF0ZSBvdmVyIGVhY2ggZmllbGQgbWFwcGluZyB0byBkZXRlcm1pbmUgb3VyIHF1ZXJ5IHBhcmFtZXRlcnMuCgkJCWZvcmVhY2ggKCAkbWFwcGluZ3MgYXMgJHNhbGVzZm9yY2VfbWFwcGluZyApIHsKCgkJCQkkbGFzdF9kZWxldGVfc3luYyA9ICR0aGlzLT5wdWxsX29wdGlvbnMtPmdldCggJ2RlbGV0ZV9sYXN0JywgJHR5cGUsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10sIHRpbWUoKSApOwoJCQkJJG5vdyAgICAgICAgICAgICAgPSB0aW1lKCk7CgkJCQkkdGhpcy0+cHVsbF9vcHRpb25zLT5zZXQoICdkZWxldGVfbGFzdCcsICR0eXBlLCAkc2FsZXNmb3JjZV9tYXBwaW5nWydpZCddLCAkbm93ICk7CgoJCQkJLy8gZ2V0X2RlbGV0ZWQoKSBjb25zdHJhaW50OiBzdGFydERhdGUgY2Fubm90IGJlIG1vcmUgdGhhbiAzMCBkYXlzIGFnbwoJCQkJLy8gKHVzaW5nIGFuIGluY29tcGF0aWJsZSBkYXRlIG1heSBsZWFkIHRvIGV4Y2VwdGlvbnMpLgoJCQkJJGxhc3RfZGVsZXRlX3N5bmMgPSAkbGFzdF9kZWxldGVfc3luYyA+ICggdGltZSgpIC0gMjUwNTYwMCApID8gJGxhc3RfZGVsZXRlX3N5bmMgOiAoIHRpbWUoKSAtIDI1MDU2MDAgKTsKCgkJCQkvLyBnZXRfZGVsZXRlZCgpIGNvbnN0cmFpbnQ6IHN0YXJ0RGF0ZSBtdXN0IGJlIGF0IGxlYXN0IG9uZSBtaW51dGUgZ3JlYXRlcgoJCQkJLy8gdGhhbiBlbmREYXRlLgoJCQkJJG5vdyA9ICRub3cgPiAoICRsYXN0X2RlbGV0ZV9zeW5jICsgNjAgKSA/ICRub3cgOiAkbm93ICsgNjA7CgoJCQkJLy8gbmVlZCB0byBiZSB1c2luZyBnbWRhdGUgZm9yIFNhbGVzZm9yY2UgY2FsbC4KCQkJCSRsYXN0X2RlbGV0ZV9zeW5jX3NmID0gZ21kYXRlKCAnWS1tLWRcVEg6aTpzXFonLCAkbGFzdF9kZWxldGVfc3luYyApOwoJCQkJJG5vd19zZiAgICAgICAgICAgICAgPSBnbWRhdGUoICdZLW0tZFxUSDppOnNcWicsICRub3cgKTsKCgkJCQkvLyBTYWxlc2ZvcmNlIGNhbGwuCgkJCQkkZGVsZXRlZCA9ICRzZmFwaS0+Z2V0X2RlbGV0ZWQoICR0eXBlLCAkbGFzdF9kZWxldGVfc3luY19zZiwgJG5vd19zZiApOwoJCQkJJG1lcmdlZCAgPSAkdGhpcy0+c3luY190cmFuc2llbnRzLT5nZXQoICdzYWxlc2ZvcmNlX21lcmdlZCcsICR0eXBlLCAkc2FsZXNmb3JjZV9tYXBwaW5nWydpZCddICk7CgkJCQlpZiAoIGZhbHNlICE9PSAkbWVyZ2VkICYmIGlzc2V0KCAkZGVsZXRlZFsnZGF0YSddWydkZWxldGVkUmVjb3JkcyddICkgKSB7CgkJCQkJZm9yZWFjaCAoICRtZXJnZWQgYXMgJGtleSApIHsKCQkJCQkJJGRlbGV0ZWRbJ2RhdGEnXVsnZGVsZXRlZFJlY29yZHMnXSA9IGFycmF5X2ZpbHRlcigKCQkJCQkJCSRkZWxldGVkWydkYXRhJ11bJ2RlbGV0ZWRSZWNvcmRzJ10sCgkJCQkJCQlmdW5jdGlvbiggJHggKSB1c2UgKCAka2V5ICkgewoJCQkJCQkJCWlmICggISBpc3NldCggJHhbJ0lkJ10gKSAmJiBpc3NldCggJHhbJ2lkJ10gKSApIHsKCQkJCQkJCQkJJHhbJ0lkJ10gPSAkeFsnaWQnXTsKCQkJCQkJCQl9CgkJCQkJCQkJcmV0dXJuICR4WydJZCddICE9PSAka2V5OwoJCQkJCQkJfQoJCQkJCQkpOwoJCQkJCX0KCQkJCX0KCgkJCQlpZiAoIGVtcHR5KCAkZGVsZXRlZFsnZGF0YSddWydkZWxldGVkUmVjb3JkcyddICkgKSB7CgkJCQkJY29udGludWU7CgkJCQl9CgoJCQkJZm9yZWFjaCAoICRkZWxldGVkWydkYXRhJ11bJ2RlbGV0ZWRSZWNvcmRzJ10gYXMgJHJlc3VsdCApIHsKCgkJCQkJJHNmX3N5bmNfdHJpZ2dlciA9ICR0aGlzLT5tYXBwaW5ncy0+c3luY19zZl9kZWxldGU7CgoJCQkJCS8vIFNhbGVzZm9yY2Ugc2VyaW91c2x5IHJldHVybnMgSWQgZm9yIHVwZGF0ZSByZXF1ZXN0cyBhbmQgaWQgZm9yIGRlbGV0ZSByZXF1ZXN0cyBhbmQgdGhpcyBtYWtlcyBubyBzZW5zZSBidXQgbWF5YmUgb25lIGRheSB0aGV5IG1pZ2h0IGNoYW5nZSBpdCBzb21laG93PwoJCQkJCWlmICggISBpc3NldCggJHJlc3VsdFsnSWQnXSApICYmIGlzc2V0KCAkcmVzdWx0WydpZCddICkgKSB7CgkJCQkJCSRyZXN1bHRbJ0lkJ10gPSAkcmVzdWx0WydpZCddOwoJCQkJCX0KCQkJCQkkZGF0YSA9IGFycmF5KAoJCQkJCQknb2JqZWN0X3R5cGUnICAgICA9PiAkdHlwZSwKCQkJCQkJJ29iamVjdCcgICAgICAgICAgPT4gJHJlc3VsdCwKCQkJCQkJJ21hcHBpbmcnICAgICAgICAgPT4gJHNhbGVzZm9yY2VfbWFwcGluZywKCQkJCQkJJ3NmX3N5bmNfdHJpZ2dlcicgPT4gJHNmX3N5bmNfdHJpZ2dlciwgLy8gc2YgZGVsZXRlIHRyaWdnZXIuCgkJCQkJKTsKCgkJCQkJLy8gZGVmYXVsdCBpcyBwdWxsIGlzIGFsbG93ZWQuCgkJCQkJJHB1bGxfYWxsb3dlZCA9IHRydWU7CgoJCQkJCS8vIGlmIHRoZSBjdXJyZW50IGZpZWxkbWFwIGRvZXMgbm90IGFsbG93IGRlbGV0ZSwgc2V0IHB1bGxfYWxsb3dlZCB0byBmYWxzZS4KCQkJCQlpZiAoIGlzc2V0KCAkbWFwX3N5bmNfdHJpZ2dlcnMgKSAmJiAhIGluX2FycmF5KCAkdGhpcy0+bWFwcGluZ3MtPnN5bmNfc2ZfZGVsZXRlLCAkbWFwX3N5bmNfdHJpZ2dlcnMsIHRydWUgKSApIHsKCQkJCQkJJHB1bGxfYWxsb3dlZCA9IGZhbHNlOwoJCQkJCX0KCgkJCQkJLy8gSG9vayB0byBhbGxvdyBvdGhlciBwbHVnaW5zIHRvIHByZXZlbnQgYSBwdWxsIHBlci1tYXBwaW5nLgoJCQkJCS8vIFB1dHRpbmcgdGhlIHB1bGxfYWxsb3dlZCBob29rIGhlcmUgd2lsbCBrZWVwIHRoZSBxdWV1ZSBmcm9tIGRlbGV0aW5nIGEgV29yZFByZXNzIHJlY29yZCB3aGVuIGl0IGlzIG5vdCBzdXBwb3NlZCB0byBkZWxldGUgaXQuCgkJCQkJJHB1bGxfYWxsb3dlZCA9IGFwcGx5X2ZpbHRlcnMoICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ3B1bGxfb2JqZWN0X2FsbG93ZWQnLCAkcHVsbF9hbGxvd2VkLCAkdHlwZSwgJHJlc3VsdCwgJHNmX3N5bmNfdHJpZ2dlciwgJHNhbGVzZm9yY2VfbWFwcGluZyApOwoKCQkJCQkvLyBleGFtcGxlIHRvIGtlZXAgZnJvbSBkZWxldGluZyB0aGUgV29yZFByZXNzIHJlY29yZCBtYXBwZWQgdG8gdGhlIENvbnRhY3Qgd2l0aCBJZCBvZiBhYmNkZWYuCgkJCQkJLyogLy8gcGhwY3M6aWdub3JlIFNxdWl6LlBIUC5Db21tZW50ZWRPdXRDb2RlLkZvdW5kCgkJCQkJYWRkX2ZpbHRlciggJ29iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlX3B1bGxfb2JqZWN0X2FsbG93ZWQnLCAnY2hlY2tfdXNlcicsIDEwLCA1ICk7CgkJCQkJLy8gY2FuIGFsd2F5cyByZWR1Y2UgdGhpcyBudW1iZXIgaWYgYWxsIHRoZSBhcmd1bWVudHMgYXJlIG5vdCBuZWNlc3NhcnkKCQkJCQlmdW5jdGlvbiBjaGVja191c2VyKCAkcHVsbF9hbGxvd2VkLCAkb2JqZWN0X3R5cGUsICRvYmplY3QsICRzZl9zeW5jX3RyaWdnZXIsICRzYWxlc2ZvcmNlX21hcHBpbmcgKSB7CgkJCQkJCWlmICggJ0NvbnRhY3QnID09PSAkb2JqZWN0X3R5cGUgJiYgJ2FiY2RlZicgPT09ICRvYmplY3RbJ0lkJ10gKSB7CgkJCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQkJCX0KCQkJCQl9CgkJCQkJKi8KCgkJCQkJaWYgKCBmYWxzZSA9PT0gJHB1bGxfYWxsb3dlZCApIHsKCQkJCQkJaWYgKCBpc3NldCggJHNhbGVzZm9yY2VfbWFwcGluZ1snYWx3YXlzX2RlbGV0ZV9vYmplY3RfbWFwc19vbl9kZWxldGUnXSApICYmICggJzEnID09PSAkc2FsZXNmb3JjZV9tYXBwaW5nWydhbHdheXNfZGVsZXRlX29iamVjdF9tYXBzX29uX2RlbGV0ZSddICkgKSB7CgkJCQkJCQkkbWFwcGluZ19vYmplY3RzID0gJHRoaXMtPm1hcHBpbmdzLT5sb2FkX29iamVjdF9tYXBzX2J5X3NhbGVzZm9yY2VfaWQoICRyZXN1bHRbJ0lkJ10sICRzYWxlc2ZvcmNlX21hcHBpbmcgKTsKCQkJCQkJCWZvcmVhY2ggKCAkbWFwcGluZ19vYmplY3RzIGFzICRtYXBwaW5nX29iamVjdCApIHsKCQkJCQkJCQlpZiAoIGlzc2V0KCAkbWFwcGluZ19vYmplY3RbJ2lkJ10gKSApIHsKCQkJCQkJCQkJJHRoaXMtPm1hcHBpbmdzLT5kZWxldGVfb2JqZWN0X21hcCggJG1hcHBpbmdfb2JqZWN0WydpZCddICk7CgkJCQkJCQkJfQoJCQkJCQkJfQoJCQkJCQl9CgkJCQkJCWNvbnRpbnVlOwoJCQkJCX0KCgkJCQkJLy8gc2V0dXAgdGhlIElkIGFuZCB0aGUgZGVsZXRlZERhdGUgZm9yIHBhc3NpbmcgdG8gdGhlIHF1ZXVlLgoJCQkJCSRkZWxldGVkX2l0ZW0gPSBhcnJheSgKCQkJCQkJJ0lkJyAgICAgICAgICA9PiAkcmVzdWx0WydJZCddLAoJCQkJCQknZGVsZXRlZERhdGUnID0+ICRyZXN1bHRbJ2RlbGV0ZWREYXRlJ10sCgkJCQkJKTsKCgkJCQkJLy8gQWRkIGEgcXVldWUgYWN0aW9uIHRvIGRlbGV0ZSBkYXRhIGZyb20gV29yZFByZXNzIGFmdGVyIGl0IGhhcyBiZWVuIGRlbGV0ZWQgZnJvbSBTYWxlc2ZvcmNlLgoJCQkJCSR0aGlzLT5xdWV1ZS0+YWRkKAoJCQkJCQkkdGhpcy0+c2NoZWR1bGFibGVfY2xhc3Nlc1sgJHRoaXMtPnNjaGVkdWxlX25hbWUgXVsnY2FsbGJhY2snXSwKCQkJCQkJYXJyYXkoCgkJCQkJCQknb2JqZWN0X3R5cGUnICAgICA9PiAkdHlwZSwKCQkJCQkJCSdvYmplY3QnICAgICAgICAgID0+ICRkZWxldGVkX2l0ZW0sCgkJCQkJCQknc2Zfc3luY190cmlnZ2VyJyA9PiAkc2Zfc3luY190cmlnZ2VyLAoJCQkJCQkpLAoJCQkJCQkkdGhpcy0+c2NoZWR1bGVfbmFtZQoJCQkJCSk7CgoJCQkJfSAvLyBlbmQgZm9yZWFjaCBvbiBkZWxldGVkIHJlY29yZHMuCgoJCQkJJHRoaXMtPnB1bGxfb3B0aW9ucy0+c2V0KCAnZGVsZXRlX2xhc3QnLCAkdHlwZSwgJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSwgdGltZSgpICk7CgoJCQl9IC8vIEVuZCBmb3JlYWNoKCkgbG9vcCBvbiByZWxldmFudCBtYXBwaW5ncy4KCQl9IC8vIEVuZCBmb3JlYWNoKCkgbG9vcCBvbiBhY3RpdmUgbWFwcGluZ3MuCgl9CgoJLyoqCgkgKiBNZXRob2QgZm9yIGFqYXggaG9va3MgdG8gY2FsbCBmb3IgcHVsbGluZyBtYW51YWxseQoJICoKCSAqIEBwYXJhbSBzdHJpbmcgJG9iamVjdF90eXBlIHRoZSBTYWxlc2ZvcmNlIG9iamVjdCB0eXBlLgoJICogQHBhcmFtIHN0cmluZyAkc2FsZXNmb3JjZV9pZCB0aGUgU2FsZXNmb3JjZSByZWNvcmQgSUQuCgkgKiBAcmV0dXJuIGFycmF5ICRyZXN1bHQKCSAqLwoJcHVibGljIGZ1bmN0aW9uIG1hbnVhbF9wdWxsKCAkb2JqZWN0X3R5cGUsICRzYWxlc2ZvcmNlX2lkID0gJycgKSB7CgoJCWlmICggJycgPT09ICRzYWxlc2ZvcmNlX2lkICkgewoJCQkkc2Zfc3luY190cmlnZ2VyID0gJHRoaXMtPm1hcHBpbmdzLT5zeW5jX3NmX2NyZWF0ZTsKCQl9IGVsc2UgewoJCQkkc2Zfc3luY190cmlnZ2VyID0gJHRoaXMtPm1hcHBpbmdzLT5zeW5jX3NmX3VwZGF0ZTsKCQl9CgoJCSRyZXN1bHRzID0gJHRoaXMtPnNhbGVzZm9yY2VfcHVsbF9wcm9jZXNzX3JlY29yZHMoICRvYmplY3RfdHlwZSwgJHNhbGVzZm9yY2VfaWQsICRzZl9zeW5jX3RyaWdnZXIgKTsKCgkJJGNvZGUgPSAnMjAxJzsKCQlmb3JlYWNoICggJHJlc3VsdHMgYXMgJHJlc3VsdCApIHsKCQkJaWYgKCAhIGlzc2V0KCAkcmVzdWx0WydzdGF0dXMnXSApIHx8ICdzdWNjZXNzJyAhPT0gJHJlc3VsdFsnc3RhdHVzJ10gKSB7CgkJCQkkY29kZSA9ICc0MDMnOwoJCQl9CgkJfQoKCQkkcmVzdWx0ID0gYXJyYXkoCgkJCSdjb2RlJyA9PiAkY29kZSwKCQkJJ2RhdGEnID0+IGFycmF5KAoJCQkJJ3N1Y2Nlc3MnID0+ICRyZXN1bHRzLAoJCQkpLAoJCSk7CgoJCXJldHVybiAkcmVzdWx0OwoKCX0KCgkvKioKCSAqIFN5bmMgV29yZFByZXNzIG9iamVjdHMgYW5kIFNhbGVzZm9yY2Ugb2JqZWN0cyBmcm9tIHRoZSBxdWV1ZSB1c2luZyB0aGUgUkVTVCBBUEkuCgkgKgoJICogQHBhcmFtIHN0cmluZyAgICAgICAkb2JqZWN0X3R5cGUgVHlwZSBvZiBTYWxlc2ZvcmNlIG9iamVjdC4KCSAqIEBwYXJhbSBhcnJheXxzdHJpbmcgJG9iamVjdCBUaGUgU2FsZXNmb3JjZSBkYXRhIG9yIGl0cyBJZCB2YWx1ZS4KCSAqIEBwYXJhbSBpbnQgICAgICAgICAgJHNmX3N5bmNfdHJpZ2dlciBUcmlnZ2VyIGZvciB0aGlzIHN5bmMuCgkgKiBAcmV0dXJuIGJvb2wgdHJ1ZSBvciBleGl0IHRoZSBtZXRob2QKCSAqIEB0aHJvd3MgT2JqZWN0X1N5bmNfU2ZfRXhjZXB0aW9uIEV4Y2VwdGlvbiAkZS4KCSAqLwoJcHVibGljIGZ1bmN0aW9uIHNhbGVzZm9yY2VfcHVsbF9wcm9jZXNzX3JlY29yZHMoICRvYmplY3RfdHlwZSwgJG9iamVjdCwgJHNmX3N5bmNfdHJpZ2dlciApIHsKCgkJJHNmYXBpID0gJHRoaXMtPnNhbGVzZm9yY2VbJ3NmYXBpJ107CgoJCWlmICggaXNfc3RyaW5nKCAkb2JqZWN0ICkgKSB7CgkJCSRzYWxlc2ZvcmNlX2lkID0gJG9iamVjdDsKCQkJLy8gTG9hZCB0aGUgU2FsZXNmb3JjZSBvYmplY3QgZGF0YSB0byBzYXZlIGluIFdvcmRQcmVzcy4gV2UgbmVlZCB0byBtYWtlIHN1cmUgdGhhdCB0aGlzIGRhdGEgZG9lcyBub3QgZ2V0IGNhY2hlZCwgd2hpY2ggaXMgY29uc2lzdGVudCB3aXRoIG90aGVyIHB1bGwgYmVoYXZpb3IgYXMgd2VsbCBhcyBpbiBvdGhlciBtZXRob2RzIGluIHRoaXMgY2xhc3MuCgkJCS8vIFdlIHNob3VsZCBvbmx5IGRvIHRoaXMgaWYgd2UncmUgbm90IHRyeWluZyB0byBkZWxldGUgZGF0YSBpbiBXb3JkUHJlc3MgLSBvdGhlcndpc2UsIHdlJ2xsIGdldCBhIDQwNCBmcm9tIFNhbGVzZm9yY2UgYW5kIHRoZSBkZWxldGUgd2lsbCBmYWlsLgoJCQlpZiAoICRzZl9zeW5jX3RyaWdnZXIgIT09ICR0aGlzLT5tYXBwaW5ncy0+c3luY19zZl9kZWxldGUgKSB7CgkJCQkkb2JqZWN0ID0gJHNmYXBpLT5vYmplY3RfcmVhZCgKCQkJCQkkb2JqZWN0X3R5cGUsCgkJCQkJJHNhbGVzZm9yY2VfaWQsCgkJCQkJYXJyYXkoCgkJCQkJCSdjYWNoZScgPT4gZmFsc2UsCgkJCQkJKQoJCQkJKVsnZGF0YSddOwoJCQl9IGVsc2UgewoJCQkJaWYgKCB0cnVlID09PSAkdGhpcy0+ZGVidWcgKSB7CgkJCQkJLy8gY3JlYXRlIGxvZyBlbnRyeSBmb3IgZmFpbGVkIHB1bGwuCgkJCQkJJHN0YXR1cyA9ICdkZWJ1Zyc7CgkJCQkJJHRpdGxlICA9IHNwcmludGYoCgkJCQkJCS8vIHRyYW5zbGF0b3JzOiBwbGFjZWhvbGRlcnMgYXJlOiAxKSB0aGUgbG9nIHN0YXR1cy4KCQkJCQkJZXNjX2h0bWxfXyggJyUxJHM6IHdlIGFyZSBtaXNzaW5nIGEgZGVsZXRlZERhdGUgYXR0cmlidXRlIGhlcmUsIGJ1dCBhcmUgZXhwZWN0ZWQgdG8gZGVsZXRlIGFuIGl0ZW0uJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQl1Y2ZpcnN0KCBlc2NfYXR0ciggJHN0YXR1cyApICkKCQkJCQkpOwoJCQkJCSRkZWJ1ZyA9IGFycmF5KAoJCQkJCQkndGl0bGUnICAgPT4gJHRpdGxlLAoJCQkJCQknbWVzc2FnZScgPT4gJycsCgkJCQkJCSd0cmlnZ2VyJyA9PiAkc2Zfc3luY190cmlnZ2VyLAoJCQkJCQkncGFyZW50JyAgPT4gJycsCgkJCQkJCSdzdGF0dXMnICA9PiAkc3RhdHVzLAoJCQkJCSk7CgkJCQkJJHRoaXMtPmxvZ2dpbmctPnNldHVwKCAkZGVidWcgKTsKCQkJCX0KCgkJCQkkb2JqZWN0ID0gYXJyYXkoCgkJCQkJJ0lkJyAgICAgICAgICA9PiAkb2JqZWN0LAoJCQkJCSdkZWxldGVkRGF0ZScgPT4gZ21kYXRlKCAnWS1tLWRcVEg6aTpzXFonICksIC8vIHRoaXMgc2hvdWxkIGhvcGVmdWxseSBuZXZlciBoYXBwZW4uCgkJCQkpOwoJCQl9IC8vIGRlbGV0ZWQgcmVjb3JkcyBzaG91bGQgYWx3YXlzIGNvbWUgdGhyb3VnaCB3aXRoIHRoZWlyIG93biBkZWxldGVkRGF0ZSB2YWx1ZS4KCQl9IGVsc2VpZiAoIGlzX29iamVjdCggJG9iamVjdCApICkgewoJCQkkc2FsZXNmb3JjZV9pZCA9ICRvYmplY3RbJ0lkJ107CgkJfQoKCQkkbWFwcGluZ19jb25kaXRpb25zID0gYXJyYXkoCgkJCSdzYWxlc2ZvcmNlX29iamVjdCcgPT4gJG9iamVjdF90eXBlLAoJCSk7CgoJCWlmICggaXNzZXQoICRvYmplY3RbJ1JlY29yZFR5cGVJZCddICkgJiYgJG9iamVjdFsnUmVjb3JkVHlwZUlkJ10gIT09ICR0aGlzLT5tYXBwaW5ncy0+c2FsZXNmb3JjZV9kZWZhdWx0X3JlY29yZF90eXBlICkgewoJCQkvLyB1c2UgdGhpcyBjb25kaXRpb24gdG8gZmlsdGVyIHRoZSBtYXBwaW5ncywgYXQgdGhhdCB0aW1lLgoJCQkkbWFwcGluZ19jb25kaXRpb25zWydzYWxlc2ZvcmNlX3JlY29yZF90eXBlJ10gPSAkb2JqZWN0WydSZWNvcmRUeXBlSWQnXTsKCQl9CgoJCSRzYWxlc2ZvcmNlX21hcHBpbmdzID0gJHRoaXMtPm1hcHBpbmdzLT5nZXRfZmllbGRtYXBzKAoJCQludWxsLAoJCQlhcnJheV9tZXJnZSgKCQkJCSR0aGlzLT5tYXBwaW5ncy0+YWN0aXZlX2ZpZWxkbWFwX2NvbmRpdGlvbnMsCgkJCQkkbWFwcGluZ19jb25kaXRpb25zLAoJCQkpLAoJCSk7CgoJCSRmcmVxdWVuY2llcyA9ICR0aGlzLT5xdWV1ZS0+Z2V0X2ZyZXF1ZW5jaWVzKCk7CgkJJHNlY29uZHMgICAgID0gcmVzZXQoICRmcmVxdWVuY2llcyApWydmcmVxdWVuY3knXSArIDYwOwoKCQkkdHJhbnNpZW50c190b19kZWxldGUgPSBhcnJheSgpOwoKCQkkcmVzdWx0cyA9IGFycmF5KCk7CgoJCWZvcmVhY2ggKCAkc2FsZXNmb3JjZV9tYXBwaW5ncyBhcyAkZmllbGRtYXBfa2V5ID0+ICRzYWxlc2ZvcmNlX21hcHBpbmcgKSB7CgkJCSR0cmFuc2llbnRzX3RvX2RlbGV0ZVsgJGZpZWxkbWFwX2tleSBdID0gYXJyYXkoCgkJCQknZmllbGRtYXAnICAgPT4gJHNhbGVzZm9yY2VfbWFwcGluZywKCQkJCSd0cmFuc2llbnRzJyA9PiBhcnJheSgpLAoJCQkpOwoJCQkvLyB0aGlzIHJldHVybnMgdGhlIHJvdyBvciByb3dzIHRoYXQgbWFwIGFuIGluZGl2aWR1YWwgU2FsZXNmb3JjZSByb3cgdG8gYW4gaW5kaXZpZHVhbCBXb3JkUHJlc3Mgcm93LgoJCQlpZiAoIGlzc2V0KCAkb2JqZWN0WydJZCddICkgKSB7CgkJCQkkbWFwcGluZ19vYmplY3RzID0gJHRoaXMtPm1hcHBpbmdzLT5sb2FkX29iamVjdF9tYXBzX2J5X3NhbGVzZm9yY2VfaWQoICRvYmplY3RbJ0lkJ10sICRzYWxlc2ZvcmNlX21hcHBpbmcgKTsKCQkJfSBlbHNlIHsKCQkJCSRtYXBwaW5nX29iamVjdHMgPSAkdGhpcy0+bWFwcGluZ3MtPmxvYWRfb2JqZWN0X21hcHNfYnlfc2FsZXNmb3JjZV9pZCggJHNhbGVzZm9yY2VfaWQsICRzYWxlc2ZvcmNlX21hcHBpbmcgKTsKCQkJCS8vIGlmIHdlIGRvbid0IGhhdmUgYSBTYWxlc2ZvcmNlIG9iamVjdCBpZCwgd2UndmUgZ290IG5vIGJ1c2luZXNzIGRvaW5nIHN0dWZmIGluIFdvcmRQcmVzcy4KCQkJCSRzdGF0dXMgPSAnZXJyb3InOwoJCQkJJHRpdGxlICA9IHNwcmludGYoCgkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBsb2cgc3RhdHVzLgoJCQkJCWVzY19odG1sX18oICclMSRzOiBTYWxlc2ZvcmNlIFB1bGw6IHVuYWJsZSB0byBwcm9jZXNzIHF1ZXVlIGl0ZW0gYmVjYXVzZSBpdCBoYXMgbm8gU2FsZXNmb3JjZSBJZC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJdWNmaXJzdCggZXNjX2F0dHIoICRzdGF0dXMgKSApCgkJCQkpOwoJCQkJJHJlc3VsdCA9IGFycmF5KAoJCQkJCSd0aXRsZScgICA9PiAkdGl0bGUsCgkJCQkJJ21lc3NhZ2UnID0+IHByaW50X3IoICRvYmplY3QsIHRydWUgKSwgLy8gcGhwY3M6aWdub3JlIFdvcmRQcmVzcy5QSFAuRGV2ZWxvcG1lbnRGdW5jdGlvbnMuZXJyb3JfbG9nX3ByaW50X3IKCQkJCQkndHJpZ2dlcicgPT4gJHNmX3N5bmNfdHJpZ2dlciwKCQkJCQkncGFyZW50JyAgPT4gMCwgLy8gcGFyZW50IGlkIGdvZXMgaGVyZSBidXQgd2UgZG9uJ3QgaGF2ZSBvbmUsIHNvIG1ha2UgaXQgMC4KCQkJCQknc3RhdHVzJyAgPT4gJHN0YXR1cywKCQkJCSk7CgkJCQkkdGhpcy0+bG9nZ2luZy0+c2V0dXAoICRyZXN1bHQgKTsKCQkJCSRyZXN1bHRzW10gPSAkcmVzdWx0OwoKCQkJCS8vIHVwZGF0ZSB0aGUgbWFwcGluZyBvYmplY3RzLgoJCQkJZm9yZWFjaCAoICRtYXBwaW5nX29iamVjdHMgYXMgJG1hcHBpbmdfb2JqZWN0ICkgewoJCQkJCWlmICggaXNzZXQoICRtYXBwaW5nX29iamVjdFsnaWQnXSApICkgewoJCQkJCQkkbWFwcGluZ19vYmplY3RbJ2xhc3Rfc3luY19zdGF0dXMnXSAgPSAkdGhpcy0+bWFwcGluZ3MtPnN0YXR1c19lcnJvcjsKCQkJCQkJJG1hcHBpbmdfb2JqZWN0WydsYXN0X3N5bmNfbWVzc2FnZSddID0gaXNzZXQoICRvYmplY3RbJ21lc3NhZ2UnXSApID8gZXNjX2h0bWwoICRvYmplY3RbJ21lc3NhZ2UnXSApIDogZXNjX2h0bWxfXyggJ3VuYWJsZSB0byBwcm9jZXNzIHF1ZXVlIGl0ZW0gYmVjYXVzZSBpdCBoYXMgbm8gU2FsZXNmb3JjZSBJZC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICk7CgkJCQkJCSRtYXBwaW5nX29iamVjdFsnbGFzdF9zeW5jJ10gICAgICAgICA9IGN1cnJlbnRfdGltZSggJ215c3FsJyApOwoJCQkJCQkkbWFwcGluZ19vYmplY3QgICAgICAgICAgICAgICAgICAgICAgPSAkdGhpcy0+bWFwcGluZ3MtPnVwZGF0ZV9vYmplY3RfbWFwKCAkbWFwcGluZ19vYmplY3QsICRtYXBwaW5nX29iamVjdFsnaWQnXSApOwoJCQkJCX0KCQkJCX0KCgkJCQljb250aW51ZTsKCQkJfQoKCQkJLy8gSXMgdGhpcyBTYWxlc2ZvcmNlIG9iamVjdCBhbHJlYWR5IGNvbm5lY3RlZCB0byBhdCBsZWFzdCBvbmUgV29yZFByZXNzIG9iamVjdD8KCQkJaWYgKCBpc3NldCggJG1hcHBpbmdfb2JqZWN0c1swXVsnaWQnXSApICkgewoJCQkJJGlzX25ldyA9IGZhbHNlOwoJCQl9IGVsc2UgewoJCQkJLy8gdGhlcmUgaXMgbm90IGEgbWFwcGluZyBvYmplY3QgZm9yIHRoaXMgU2FsZXNmb3JjZSBvYmplY3QgaWQgeWV0CgkJCQkvLyBjaGVjayB0byBzZWUgaWYgdGhlcmUgaXMgYSBwdXNoaW5nIHRyYW5zaWVudCBmb3IgdGhhdCBTYWxlc2ZvcmNlIElkLgoJCQkJJGlzX25ldyA9IHRydWU7CgkJCX0KCgkJCS8vIGJ5IGRlZmF1bHQsIHdlJ3JlIG5vdCBkb2luZyBhIG1lcmdlLgoJCQkkaXNfbWVyZ2UgPSBmYWxzZTsKCQkJJG1lcmdlZCAgID0gJHRoaXMtPnN5bmNfdHJhbnNpZW50cy0+Z2V0KCAnc2FsZXNmb3JjZV9tZXJnZWQnLCAkb2JqZWN0X3R5cGUsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10gKTsKCQkJaWYgKCBmYWxzZSAhPT0gJG1lcmdlZCApIHsKCQkJCSRrZXkgPSBhcnJheV9zZWFyY2goICRvYmplY3RbJ0lkJ10sIGFycmF5X2NvbHVtbiggJG1lcmdlZCwgJ0lkJyApLCB0cnVlICk7CgkJCQlpZiAoIGZhbHNlICE9PSAka2V5ICkgewoJCQkJCSRpc19tZXJnZSA9IHRydWU7CgkJCQkJJGlzX25ldyAgID0gZmFsc2U7CgkJCQl9CgkJCX0KCgkJCSRtYXBwaW5nX29iamVjdF9pZF90cmFuc2llbnQgPSAkdGhpcy0+c3luY190cmFuc2llbnRzLT5nZXQoICdzYWxlc2ZvcmNlX3B1c2hpbmdfb2JqZWN0X2lkJywgJycsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10gKTsKCQkJaWYgKCBmYWxzZSA9PT0gJG1hcHBpbmdfb2JqZWN0X2lkX3RyYW5zaWVudCApIHsKCQkJCSRtYXBwaW5nX29iamVjdF9pZF90cmFuc2llbnQgPSAkb2JqZWN0WydJZCddOwoJCQl9CgkJCS8vIEhlcmUncyB3aGVyZSB3ZSBjaGVjayB0byBzZWUgd2hldGhlciB0aGUgY3VycmVudCByZWNvcmQgd2FzIHVwZGF0ZWQgYnkgYSBwdXNoIGZyb20gdGhpcyBwbHVnaW4gb3Igbm90LiBIZXJlJ3MgaG93IGl0IHdvcmtzOgoJCQkvLyAxLiBBIHJlY29yZCBnZXRzIHB1c2hlZCB0byBTYWxlc2ZvcmNlIGJ5IHRoaXMgcGx1Z2luLgoJCQkvLyAyLiBXZSBzYXZlIHRoZSBMYXN0TW9kaWZpZWREYXRlIGZyb20gdGhlIFNhbGVzZm9yY2UgcmVzdWx0IGFzIGEgdGltZXN0YW1wIGluIHRoZSB0cmFuc2llbnQuCgkJCS8vIDMuIEJlbG93LCBpbiBhZGRpdGlvbiB0byBjaGVja2luZyB0aGUgU2FsZXNmb3JjZSBJZCwgd2UgY2hlY2sgYWdhaW5zdCAkb2JqZWN0J3MgTGFzdE1vZGlmaWVkRGF0ZSBhbmQgaWYgaXQncyBub3QgbGF0ZXIgdGhhbiB0aGUgdHJhbnNpZW50IHZhbHVlLCB3ZSBza2lwIGl0IGJlY2F1c2UgaXQncyBzdGlsbCBwdXNoaW5nIGZyb20gb3VyIGFjdGl2aXR5LgoJCQkkc2FsZXNmb3JjZV9wdXNoaW5nID0gKGludCkgJHRoaXMtPnN5bmNfdHJhbnNpZW50cy0+Z2V0KCAnc2FsZXNmb3JjZV9wdXNoaW5nXycgLiAkbWFwcGluZ19vYmplY3RfaWRfdHJhbnNpZW50LCAnJywgJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSApOwoKCQkJaWYgKCAxICE9PSAkc2FsZXNmb3JjZV9wdXNoaW5nICkgewoJCQkJLy8gdGhlIGZvcm1hdCB0byBjb21wYXJlIGlzIGxpa2UgdGhpczogZ21kYXRlKCAnWS1tLWRcVEg6aTpzXFonLCAkc2FsZXNmb3JjZV9wdXNoaW5nICkuCgkJCQlpZiAoICRtYXBwaW5nX29iamVjdF9pZF90cmFuc2llbnQgIT09ICRvYmplY3RbJ0lkJ10gKSB7CgkJCQkJJHNhbGVzZm9yY2VfcHVzaGluZyA9IDA7CgkJCQl9IGVsc2VpZiAoIDAgPT09ICRzYWxlc2ZvcmNlX3B1c2hpbmcgfHwgKCBpc3NldCggJG9iamVjdFsnTGFzdE1vZGlmaWVkRGF0ZSddICkgJiYgc3RydG90aW1lKCAkb2JqZWN0WydMYXN0TW9kaWZpZWREYXRlJ10gKSA+ICRzYWxlc2ZvcmNlX3B1c2hpbmcgKSB8fCAoIGlzc2V0KCAkb2JqZWN0WydkZWxldGVkRGF0ZSddICkgJiYgc3RydG90aW1lKCAkb2JqZWN0WydkZWxldGVkRGF0ZSddICkgPiAkc2FsZXNmb3JjZV9wdXNoaW5nICkgKSB7CgkJCQkJJHNhbGVzZm9yY2VfcHVzaGluZyA9IDA7CgkJCQl9IGVsc2UgewoJCQkJCSRzYWxlc2ZvcmNlX3B1c2hpbmcgPSAxOwoJCQkJfQoJCQl9IGVsc2UgewoJCQkJJHNhbGVzZm9yY2VfcHVzaGluZyA9IDE7CgkJCX0KCgkJCWlmICggMSA9PT0gJHNhbGVzZm9yY2VfcHVzaGluZyApIHsKCQkJCSR0cmFuc2llbnRzX3RvX2RlbGV0ZVsgJGZpZWxkbWFwX2tleSBdWyd0cmFuc2llbnRzJ11bXSA9ICRtYXBwaW5nX29iamVjdF9pZF90cmFuc2llbnQ7CgkJCQlpZiAoIHRydWUgPT09ICR0aGlzLT5kZWJ1ZyApIHsKCQkJCQkvLyBjcmVhdGUgbG9nIGVudHJ5IGZvciBmYWlsZWQgcHVsbC4KCQkJCQkkc3RhdHVzID0gJ2RlYnVnJzsKCQkJCQkkdGl0bGUgID0gc3ByaW50ZigKCQkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBsb2cgc3RhdHVzLCAyKSB0aGUgbWFwcGluZyBvYmplY3QgSUQgdHJhbnNpZW50LgoJCQkJCQllc2NfaHRtbF9fKCAnJTEkczogbWFwcGluZyBvYmplY3QgdHJhbnNpZW50IElEICUyJHMgaXMgY3VycmVudGx5IHB1c2hpbmcsIHNvIHdlIGRvIG5vdCBwdWxsIGl0LicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJdWNmaXJzdCggZXNjX2F0dHIoICRzdGF0dXMgKSApLAoJCQkJCQkkbWFwcGluZ19vYmplY3RfaWRfdHJhbnNpZW50CgkJCQkJKTsKCQkJCQkkZGVidWcgPSBhcnJheSgKCQkJCQkJJ3RpdGxlJyAgID0+ICR0aXRsZSwKCQkJCQkJJ21lc3NhZ2UnID0+ICcnLAoJCQkJCQkndHJpZ2dlcicgPT4gJHNmX3N5bmNfdHJpZ2dlciwKCQkJCQkJJ3BhcmVudCcgID0+ICcnLAoJCQkJCQknc3RhdHVzJyAgPT4gJHN0YXR1cywKCQkJCQkpOwoJCQkJCSR0aGlzLT5sb2dnaW5nLT5zZXR1cCggJGRlYnVnICk7CgkJCQl9CgoJCQkJY29udGludWU7CgkJCX0KCgkJCSRzdHJ1Y3R1cmUgICAgICAgICAgICAgICA9ICR0aGlzLT53b3JkcHJlc3MtPmdldF93b3JkcHJlc3NfdGFibGVfc3RydWN0dXJlKCAkc2FsZXNmb3JjZV9tYXBwaW5nWyd3b3JkcHJlc3Nfb2JqZWN0J10gKTsKCQkJJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lID0gJHN0cnVjdHVyZVsnaWRfZmllbGQnXTsKCgkJCS8vIG9ubHkgZGVhbCB3aXRoIHBhcmFtZXRlcnMgaWYgd2UgYXJlIG5vdCBkZWxldGluZy4KCQkJaWYgKCAoIHRydWUgPT09ICRpc19uZXcgJiYgJHNmX3N5bmNfdHJpZ2dlciA9PT0gJHRoaXMtPm1hcHBpbmdzLT5zeW5jX3NmX2NyZWF0ZSApIHx8ICRzZl9zeW5jX3RyaWdnZXIgPT09ICR0aGlzLT5tYXBwaW5ncy0+c3luY19zZl91cGRhdGUgKSB7IC8vIHRyaWdnZXIgaXMgYSBiaXQgb3BlcmF0b3IKCQkJCS8vIG1hcCB0aGUgU2FsZXNmb3JjZSB2YWx1ZXMgdG8gV29yZFByZXNzIGZpZWxkcy4KCQkJCSRwYXJhbXMgPSAkdGhpcy0+bWFwcGluZ3MtPm1hcF9wYXJhbXMoICRzYWxlc2ZvcmNlX21hcHBpbmcsICRvYmplY3QsICRzZl9zeW5jX3RyaWdnZXIsIGZhbHNlLCAkaXNfbmV3LCAkd29yZHByZXNzX2lkX2ZpZWxkX25hbWUgKTsKCgkJCQkvLyBob29rIHRvIGFsbG93IG90aGVyIHBsdWdpbnMgdG8gbW9kaWZ5IHRoZSAkcGFyYW1zIGFycmF5CgkJCQkvLyB1c2UgaG9vayB0byBtYXAgZmllbGRzIGJldHdlZW4gdGhlIFdvcmRQcmVzcyBhbmQgU2FsZXNmb3JjZSBvYmplY3RzCgkJCQkvLyByZXR1cm5zICRwYXJhbXMuCgkJCQkkcGFyYW1zID0gYXBwbHlfZmlsdGVycyggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAncHVsbF9wYXJhbXNfbW9kaWZ5JywgJHBhcmFtcywgJHNhbGVzZm9yY2VfbWFwcGluZywgJG9iamVjdCwgJHNmX3N5bmNfdHJpZ2dlciwgZmFsc2UsICRpc19uZXcgKTsKCgkJCQkvLyBzZXR1cCBwcmVtYXRjaCBwYXJhbWV0ZXJzLgoJCQkJJHByZW1hdGNoID0gYXJyYXkoKTsKCgkJCQkvLyBpZiB0aGVyZSBpcyBhIHByZW1hdGNoIFdvcmRQcmVzcyBmaWVsZCAtIGllIGVtYWlsIC0gb24gdGhlIGZpZWxkbWFwIG9iamVjdC4KCQkJCWlmICggaXNzZXQoICRwYXJhbXNbJ3ByZW1hdGNoJ10gKSAmJiBpc19hcnJheSggJHBhcmFtc1sncHJlbWF0Y2gnXSApICkgewoJCQkJCSRwcmVtYXRjaFsnZmllbGRfd29yZHByZXNzJ10gID0gJHBhcmFtc1sncHJlbWF0Y2gnXVsnd29yZHByZXNzX2ZpZWxkJ107CgkJCQkJJHByZW1hdGNoWydmaWVsZF9zYWxlc2ZvcmNlJ10gPSAkcGFyYW1zWydwcmVtYXRjaCddWydzYWxlc2ZvcmNlX2ZpZWxkJ107CgkJCQkJJHByZW1hdGNoWyd2YWx1ZSddICAgICAgICAgICAgPSAkcGFyYW1zWydwcmVtYXRjaCddWyd2YWx1ZSddOwoJCQkJCSRwcmVtYXRjaFsnbWV0aG9kcyddICAgICAgICAgID0gYXJyYXkoCgkJCQkJCSdtZXRob2RfbWF0Y2gnICA9PiBpc3NldCggJHBhcmFtc1sncHJlbWF0Y2gnXVsnbWV0aG9kX21hdGNoJ10gKSA/ICRwYXJhbXNbJ3ByZW1hdGNoJ11bJ21ldGhvZF9tYXRjaCddIDogJHBhcmFtc1sncHJlbWF0Y2gnXVsnbWV0aG9kX3JlYWQnXSwKCQkJCQkJJ21ldGhvZF9jcmVhdGUnID0+ICRwYXJhbXNbJ3ByZW1hdGNoJ11bJ21ldGhvZF9jcmVhdGUnXSwKCQkJCQkJJ21ldGhvZF91cGRhdGUnID0+ICRwYXJhbXNbJ3ByZW1hdGNoJ11bJ21ldGhvZF91cGRhdGUnXSwKCQkJCQkJJ21ldGhvZF9yZWFkJyAgID0+ICRwYXJhbXNbJ3ByZW1hdGNoJ11bJ21ldGhvZF9yZWFkJ10sCgkJCQkJKTsKCQkJCQl1bnNldCggJHBhcmFtc1sncHJlbWF0Y2gnXSApOwoJCQkJfQoKCQkJCS8vIGlmIHRoZXJlIGlzIGFuIGV4dGVybmFsIGtleSBmaWVsZCBpbiBTYWxlc2ZvcmNlIC0gaWUgYSBNYWlsY2hpbXAgdXNlciBpZCAtIG9uIHRoZSBmaWVsZG1hcCBvYmplY3QsIHRoaXMgc2hvdWxkIG5vdCBhZmZlY3QgaG93IFdvcmRQcmVzcyBoYW5kbGVzIGl0IGlzIG5vdCBpbmNsdWRlZCBpbiB0aGUgcHVsbCBwYXJhbWV0ZXJzLgoKCQkJCS8vIGlmIHdlIGRvbid0IGdldCBhbnkgcGFyYW1zLCB0aGVyZSBhcmUgbm8gZmllbGRzIHRoYXQgc2hvdWxkIGJlIHNlbnQgdG8gV29yZFByZXNzLgoJCQkJaWYgKCBlbXB0eSggJHBhcmFtcyApICkgewoKCQkJCQkvLyBpZiB0aGUgcGFyYW1ldGVycyBhcnJheSBpcyBlbXB0eSBhdCB0aGlzIHBvaW50LCB3ZSBzaG91bGQgY3JlYXRlIGEgbG9nIGVudHJ5IHRvIHRoYXQgZWZmZWN0LgoJCQkJCS8vIEkgdGhpbmsgaXQgc2hvdWxkIGJlIGEgZGVidWcgbWVzc2FnZSwgdW5sZXNzIHdlIGxlYXJuIGZyb20gdXNlcnMgdGhhdCBpdCBzaG91bGQgYmUgcmFpc2VkIHRvIGFuIGVycm9yLgoJCQkJCWlmICggdHJ1ZSA9PT0gJHRoaXMtPmRlYnVnICkgewoJCQkJCQkkc3RhdHVzID0gJ2RlYnVnJzsKCQkJCQkJJHRpdGxlICA9IHNwcmludGYoCgkJCQkJCQkvLyB0cmFuc2xhdG9yczogJTEkcyBpcyB0aGUgbG9nIHN0YXR1cy4KCQkJCQkJCWVzY19odG1sX18oICclMSRzIE1hcHBpbmc6IGFjY29yZGluZyB0byB0aGUgY3VycmVudCBwbHVnaW4gc2V0dGluZ3MsIHRoZXJlIGFyZSBubyBwYXJhbWV0ZXJzIGluIHRoZSBjdXJyZW50IGRhdGFzZXQgdGhhdCBjYW4gYmUgcHVsbGVkIGZyb20gU2FsZXNmb3JjZS4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQl1Y2ZpcnN0KCBlc2NfYXR0ciggJHN0YXR1cyApICkKCQkJCQkJKTsKCQkJCQkJJGJvZHkgPSBzcHJpbnRmKAoJCQkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBmaWVsZG1hcCByb3cgSUQsIDIpIHRoZSBuYW1lIG9mIHRoZSBXb3JkUHJlc3Mgb2JqZWN0LCAzKSB0aGUgbmFtZSBvZiB0aGUgU2FsZXNmb3JjZSBvYmplY3QuCgkJCQkJCQknPHA+JyAuIGVzY19odG1sX18oICdUaGVyZSBpcyBhIGZpZWxkbWFwIHdpdGggSUQgb2YgJTEkcyBhbmQgaXQgbWFwcyB0aGUgV29yZFByZXNzICUyJHMgb2JqZWN0IHRvIHRoZSBTYWxlc2ZvcmNlICUzJHMgb2JqZWN0LicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSAuICc8L3A+JywKCQkJCQkJCWFic2ludCggJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSApLAoJCQkJCQkJZXNjX2F0dHIoICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3dvcmRwcmVzc19vYmplY3QnXSApLAoJCQkJCQkJZXNjX2F0dHIoICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKQoJCQkJCQkpOwoJCQkJCQkvLyB3aGV0aGVyIGl0J3MgYSBuZXcgbWFwcGluZyBvYmplY3Qgb3Igbm90LgoJCQkJCQlpZiAoIGZhbHNlID09PSAkaXNfbmV3ICkgewoJCQkJCQkJLy8gdGhpcyBvbmUgaXMgbm90IG5ldy4KCQkJCQkJCWZvcmVhY2ggKCAkbWFwcGluZ19vYmplY3RzIGFzICRtYXBwaW5nX29iamVjdCApIHsKCQkJCQkJCQkkYm9keSAuPSBzcHJpbnRmKAoJCQkJCQkJCQkvLyB0cmFuc2xhdG9yczogcGxhY2Vob2xkZXJzIGFyZTogMSkgdGhlIG1hcHBpbmcgb2JqZWN0IHJvdyBJRCwgMikgdGhlIG5hbWUgb2YgdGhlIFdvcmRQcmVzcyBvYmplY3QsIDMpIHRoZSBJRCBvZiB0aGUgV29yZFByZXNzIG9iamVjdCwgNCkgdGhlIElEIG9mIHRoZSBTYWxlc2ZvcmNlIG9iamVjdCBpdCB3YXMgdHJ5aW5nIHRvIG1hcC4KCQkJCQkJCQkJJzxwPicgLiBlc2NfaHRtbF9fKCAnVGhlcmUgaXMgYW4gZXhpc3Rpbmcgb2JqZWN0IG1hcCB3aXRoIElEIG9mICUxJHMgYW5kIGl0IGlzIG1hcHBlZCB0byB0aGUgV29yZFByZXNzICUyJHMgd2l0aCBJRCBvZiAlMyRzIGFuZCB0aGUgU2FsZXNmb3JjZSBvYmplY3Qgd2l0aCBJRCBvZiAlNCRzLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSAuICc8L3A+JywKCQkJCQkJCQkJYWJzaW50KCAkbWFwcGluZ19vYmplY3RbJ2lkJ10gKSwKCQkJCQkJCQkJZXNjX2F0dHIoICRtYXBwaW5nX29iamVjdFsnd29yZHByZXNzX29iamVjdCddICksCgkJCQkJCQkJCWVzY19hdHRyKCAkbWFwcGluZ19vYmplY3RbJ3dvcmRwcmVzc19pZCddICksCgkJCQkJCQkJCWVzY19hdHRyKCAkbWFwcGluZ19vYmplY3RbJ3NhbGVzZm9yY2VfaWQnXSApCgkJCQkJCQkJKTsKCQkJCQkJCX0KCQkJCQkJfSBlbHNlIHsKCQkJCQkJCS8vIHRoaXMgb25lIGlzIG5ldy4KCQkJCQkJCSRib2R5IC49IHNwcmludGYoCgkJCQkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBJRCBvZiB0aGUgU2FsZXNmb3JjZSBvYmplY3QsIDIpIHRoZSBXb3JkUHJlc3Mgb2JqZWN0IHR5cGUuCgkJCQkJCQkJJzxwPicgLiBlc2NfaHRtbF9fKCAnVGhlIHBsdWdpbiB3YXMgdHJ5aW5nIHRvIHB1bGwgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0IHdpdGggSUQgb2YgJTEkcyB0byB0aGUgV29yZFByZXNzICUyJHMgb2JqZWN0IHR5cGUuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApIC4gJzwvcD4nLAoJCQkJCQkJCWVzY19hdHRyKCAkb2JqZWN0WydJZCddICksCgkJCQkJCQkJZXNjX2F0dHIoICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3dvcmRwcmVzc19vYmplY3QnXSApCgkJCQkJCQkpOwoJCQkJCQl9CgoJCQkJCQkkYm9keSAuPSBzcHJpbnRmKAoJCQkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmUgMSkgdGhlIG9iamVjdCdzIGRhdGEgdGhhdCB3YXMgYXR0ZW1wdGVkLgoJCQkJCQkJJzxwPicgLiBlc2NfaHRtbF9fKCAnVGhlIFNhbGVzZm9yY2Ugb2JqZWN0IGRhdGEgdGhhdCB3YXMgYXR0ZW1wdGVkOiAlMSRzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApIC4gJzwvcD4nLAoJCQkJCQkJcHJpbnRfciggJG9iamVjdCwgdHJ1ZSApIC8vIHBocGNzOmlnbm9yZSBXb3JkUHJlc3MuUEhQLkRldmVsb3BtZW50RnVuY3Rpb25zLmVycm9yX2xvZ19wcmludF9yCgkJCQkJCSk7CgoJCQkJCQkkdGhpcy0+bG9nZ2luZy0+c2V0dXAoCgkJCQkJCQkkdGl0bGUsCgkJCQkJCQkkYm9keSwKCQkJCQkJCSRzZl9zeW5jX3RyaWdnZXIsCgkJCQkJCQkwLAoJCQkJCQkJJHN0YXR1cwoJCQkJCQkpOwoJCQkJCX0gLy8gZW5kIGRlYnVnIG1vZGUgY2hlY2suCgoJCQkJCWNvbnRpbnVlOwoJCQkJfSAvLyBlbmQgaWYgcGFyYW1zIGFyZSBlbXB0eS4KCQkJfSBlbHNlaWYgKCAkc2Zfc3luY190cmlnZ2VyID09PSAkdGhpcy0+bWFwcGluZ3MtPnN5bmNfc2ZfZGVsZXRlICkgewoJCQkJLy8gdGhpcyBpcyBhIGRlbGV0aW9uLiBkb24ndCBkZWFsIHdpdGggcGFyYW1ldGVycy4KCQkJCSRpc19uZXcgPSBmYWxzZTsKCQkJfSAvLyBlbmQgY2hlY2tpbmcgZm9yIGNyZWF0ZS91cGRhdGUvZGVsZXRlLgoKCQkJLy8gaWYgdGhpcyBTYWxlc2ZvcmNlIHJlY29yZCBpcyBuZXcgdG8gV29yZFByZXNzLCB3ZSBjYW4gdHJ5IHRvIGNyZWF0ZSBpdC4KCQkJaWYgKCB0cnVlID09PSAkaXNfbmV3ICkgewoJCQkJaWYgKCBpc3NldCggJG1hcHBpbmdfb2JqZWN0c1swXSApICkgewoJCQkJCSRtYXBwaW5nX29iamVjdCA9ICRtYXBwaW5nX29iamVjdHNbMF07CgkJCQl9IGVsc2UgewoJCQkJCSRtYXBwaW5nX29iamVjdCA9ICRtYXBwaW5nX29iamVjdHM7CgkJCQl9CgkJCQkkc3luY2VkX29iamVjdCA9ICR0aGlzLT5nZXRfc3luY2VkX29iamVjdCggJG9iamVjdCwgJG1hcHBpbmdfb2JqZWN0LCAkc2FsZXNmb3JjZV9tYXBwaW5nICk7CgkJCQkkY3JlYXRlICAgICAgICA9ICR0aGlzLT5jcmVhdGVfY2FsbGVkX2Zyb21fc2FsZXNmb3JjZSggJHNmX3N5bmNfdHJpZ2dlciwgJHN5bmNlZF9vYmplY3QsICRwYXJhbXMsICRwcmVtYXRjaCwgJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lLCAkc2Vjb25kcyApOwoJCQkJJHJlc3VsdHMgICAgICAgPSBhcnJheV9tZXJnZSggJHJlc3VsdHMsICRjcmVhdGUgKTsKCQkJfSBlbHNlaWYgKCBmYWxzZSA9PT0gJGlzX25ldyAmJiBmYWxzZSA9PT0gJGlzX21lcmdlICkgewoJCQkJLy8gdW5sZXNzIHdlJ3JlIG9uIGEgZGVsZXRlLCB0aGVyZSBpcyBhbHJlYWR5IGF0IGxlYXN0IG9uZSBtYXBwaW5nX29iamVjdFsnaWQnXSBhc3NvY2lhdGVkIHdpdGggdGhpcyBTYWxlc2ZvcmNlIElkCgkJCQkvLyByaWdodCBoZXJlIHdlIHNob3VsZCBzZXQgdGhlIHB1bGxpbmcgdHJhbnNpZW50LgoJCQkJJHRoaXMtPnN5bmNfdHJhbnNpZW50cy0+c2V0KCAnc2FsZXNmb3JjZV9wdWxsaW5nXycgLiAkb2JqZWN0WydJZCddLCAnJywgJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSwgMSwgJHNlY29uZHMgKTsKCQkJCSR0aGlzLT5zeW5jX3RyYW5zaWVudHMtPnNldCggJ3NhbGVzZm9yY2VfcHVsbGluZ19vYmplY3RfaWQnLCAnJywgJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSwgJG9iamVjdFsnSWQnXSApOwoKCQkJCWZvcmVhY2ggKCAkbWFwcGluZ19vYmplY3RzIGFzICRtYXBwaW5nX29iamVjdCApIHsKCQkJCQkkc3luY2VkX29iamVjdCA9ICR0aGlzLT5nZXRfc3luY2VkX29iamVjdCggJG9iamVjdCwgJG1hcHBpbmdfb2JqZWN0LCAkc2FsZXNmb3JjZV9tYXBwaW5nICk7CgkJCQkJLy8gaWYgcGFyYW1zIGlzIHNldCwgdGhpcyBpcyBhbiB1cGRhdGUgcmVxdWVzdC4gaWYgbm90LCBpdCBpcyBhIGRlbGV0ZS4KCQkJCQlpZiAoIGlzc2V0KCAkcGFyYW1zICkgKSB7CgkJCQkJCSR1cGRhdGUgID0gJHRoaXMtPnVwZGF0ZV9jYWxsZWRfZnJvbV9zYWxlc2ZvcmNlKCAkc2Zfc3luY190cmlnZ2VyLCAkc3luY2VkX29iamVjdCwgJHBhcmFtcywgJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lLCAkc2Vjb25kcyApOwoJCQkJCQkkcmVzdWx0cyA9IGFycmF5X21lcmdlKCAkcmVzdWx0cywgJHVwZGF0ZSApOwoJCQkJCX0gZWxzZSB7CgkJCQkJCSRkZWxldGUgID0gJHRoaXMtPmRlbGV0ZV9jYWxsZWRfZnJvbV9zYWxlc2ZvcmNlKCAkc2Zfc3luY190cmlnZ2VyLCAkc3luY2VkX29iamVjdCwgJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lLCAkc2Vjb25kcywgJG1hcHBpbmdfb2JqZWN0cyApOwoJCQkJCQkkcmVzdWx0cyA9IGFycmF5X21lcmdlKCAkcmVzdWx0cywgJGRlbGV0ZSApOwoJCQkJCX0KCQkJCX0KCQkJfSBlbHNlaWYgKCBmYWxzZSA9PT0gJGlzX25ldyApIHsKCQkJCS8vIG9uIG1lcmdlLCB3ZSBzaG91bGQgc3RpbGwgdXBkYXRlIHRoZSB0cmFuc2llbnQuCgkJCQkkdGhpcy0+c3luY190cmFuc2llbnRzLT5zZXQoICdzYWxlc2ZvcmNlX3B1bGxpbmdfJyAuICRvYmplY3RbJ0lkJ10sICcnLCAkc2FsZXNmb3JjZV9tYXBwaW5nWydpZCddLCAxLCAkc2Vjb25kcyApOwoJCQkJJHRoaXMtPnN5bmNfdHJhbnNpZW50cy0+c2V0KCAnc2FsZXNmb3JjZV9wdWxsaW5nX29iamVjdF9pZCcsICcnLCAkc2FsZXNmb3JjZV9tYXBwaW5nWydpZCddLCAkb2JqZWN0WydJZCddICk7CgkJCX0KCQl9IC8vIEVuZCBmb3JlYWNoKCkgb24gJHNhbGVzZm9yY2VfbWFwcGluZ3MuCgoJCS8vIGRlbGV0ZSB0cmFuc2llbnRzIHRoYXQgd2UndmUgYWxyZWFkeSBwcm9jZXNzZWQgZm9yIHRoaXMgU2FsZXNmb3JjZSBvYmplY3QuCgkJZm9yZWFjaCAoICR0cmFuc2llbnRzX3RvX2RlbGV0ZSBhcyAka2V5ID0+ICR2YWx1ZSApIHsKCQkJJGZpZWxkbWFwX2lkID0gJHZhbHVlWydmaWVsZG1hcCddWydpZCddOwoJCQkkdHJhbnNpZW50cyAgPSAoYXJyYXkpICR2YWx1ZVsndHJhbnNpZW50cyddOwoJCQlmb3JlYWNoICggJHRyYW5zaWVudHMgYXMgJHRyYW5zaWVudF9lbmQgKSB7CgkJCQkkdGhpcy0+c3luY190cmFuc2llbnRzLT5kZWxldGUoICdzYWxlc2ZvcmNlX3B1c2hpbmdfJyAuICR0cmFuc2llbnRfZW5kLCAnJywgJGZpZWxkbWFwX2lkICk7CgkJCX0KCQkJJHB1c2hpbmdfaWQgPSAkdGhpcy0+c3luY190cmFuc2llbnRzLT5nZXQoICdzYWxlc2ZvcmNlX3B1c2hpbmdfb2JqZWN0X2lkJywgJycsICRmaWVsZG1hcF9pZCApOwoJCQlpZiAoIGluX2FycmF5KCAkcHVzaGluZ19pZCwgJHRyYW5zaWVudHMsIHRydWUgKSApIHsKCQkJCSR0aGlzLT5zeW5jX3RyYW5zaWVudHMtPmRlbGV0ZSggJ3NhbGVzZm9yY2VfcHVzaGluZ19vYmplY3RfaWQnLCAnJywgJGZpZWxkbWFwX2lkICk7CgkJCX0KCQl9CgoJCXJldHVybiAkcmVzdWx0czsKCgl9CgoJLyoqCgkgKiBHZW5lcmF0ZSB0aGUgc3luY2VkX29iamVjdCBhcnJheQoJICoKCSAqIEBwYXJhbSBhcnJheSAkb2JqZWN0IFRoZSBkYXRhIGZvciB0aGUgU2FsZXNmb3JjZSBvYmplY3QuCgkgKiBAcGFyYW0gYXJyYXkgJG1hcHBpbmdfb2JqZWN0IFRoZSBkYXRhIGZvciB0aGUgbWFwcGluZyBvYmplY3QgYmV0d2VlbiB0aGUgaW5kaXZpZHVhbCBTYWxlc2ZvcmNlIGFuZCBXb3JkUHJlc3MgaXRlbXMuCgkgKiBAcGFyYW0gYXJyYXkgJHNhbGVzZm9yY2VfbWFwcGluZyBUaGUgZGF0YSBmb3IgdGhlIGZpZWxkbWFwIGJldHdlZW4gdGhlIG9iamVjdCB0eXBlcy4KCSAqIEByZXR1cm4gYXJyYXkgJHN5bmNlZF9vYmplY3QgVGhlIGNvbWJpbmVkIGFycmF5IG9mIHRoZXNlIGl0ZW1zLiBJdCBhbGxvd3MgZm9yIGZpbHRlcmluZyBvZiwgYXQgbGVhc3QsIHRoZSBtYXBwaW5nX29iamVjdC4KCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBnZXRfc3luY2VkX29iamVjdCggJG9iamVjdCwgJG1hcHBpbmdfb2JqZWN0LCAkc2FsZXNmb3JjZV9tYXBwaW5nICkgewoJCS8vIGlmIHRoZXJlJ3MgYWxyZWFkeSBhIGNvbm5lY3Rpb24gYmV0d2VlbiB0aGUgb2JqZWN0cywgJG1hcHBpbmdfb2JqZWN0IHdpbGwgYmUgYW4gYXJyYXkgYXQgdGhpcyBwb2ludAoJCS8vIGlmIGl0J3Mgbm90IGFscmVhZHkgY29ubmVjdGVkIChpZSBvbiBjcmVhdGUpLCB0aGUgYXJyYXkgd2lsbCBiZSBlbXB0eS4KCgkJLy8gaG9vayB0byBhbGxvdyBvdGhlciBwbHVnaW5zIHRvIGRlZmluZSBvciBhbHRlciB0aGUgbWFwcGluZyBvYmplY3QuCgkJJG1hcHBpbmdfb2JqZWN0ID0gYXBwbHlfZmlsdGVycyggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAncHVsbF9tYXBwaW5nX29iamVjdCcsICRtYXBwaW5nX29iamVjdCwgJG9iamVjdCwgJHNhbGVzZm9yY2VfbWFwcGluZyApOwoKCQkvLyB3ZSBhbHJlYWR5IGhhdmUgdGhlIGRhdGEgZnJvbSBTYWxlc2ZvcmNlIGF0IHRoaXMgcG9pbnQ7IHdlIGp1c3QgbmVlZCB0byB3b3JrIHdpdGggaXQgaW4gV29yZFByZXNzLgoJCSRzeW5jZWRfb2JqZWN0ID0gYXJyYXkoCgkJCSdzYWxlc2ZvcmNlX29iamVjdCcgPT4gJG9iamVjdCwKCQkJJ21hcHBpbmdfb2JqZWN0JyAgICA9PiAkbWFwcGluZ19vYmplY3QsCgkJCSdtYXBwaW5nJyAgICAgICAgICAgPT4gJHNhbGVzZm9yY2VfbWFwcGluZywKCQkpOwoJCXJldHVybiAkc3luY2VkX29iamVjdDsKCX0KCgkvKioKCSAqIENyZWF0ZSByZWNvcmRzIGluIFdvcmRQcmVzcyBmcm9tIGEgU2FsZXNmb3JjZSBwdWxsCgkgKgoJICogQHBhcmFtIHN0cmluZyAkc2Zfc3luY190cmlnZ2VyIFRoZSBjdXJyZW50IG9wZXJhdGlvbidzIHRyaWdnZXIuCgkgKiBAcGFyYW0gYXJyYXkgICRzeW5jZWRfb2JqZWN0IENvbWJpbmVkIGRhdGEgZm9yIGZpZWxkbWFwLCBtYXBwaW5nIG9iamVjdCwgYW5kIFNhbGVzZm9yY2Ugb2JqZWN0IGRhdGEuCgkgKiBAcGFyYW0gYXJyYXkgICRwYXJhbXMgQXJyYXkgb2YgbWFwcGVkIGtleSB2YWx1ZSBwYWlycyBiZXR3ZWVuIFdvcmRQcmVzcyBhbmQgU2FsZXNmb3JjZSBmaWVsZHMuCgkgKiBAcGFyYW0gYXJyYXkgICRwcmVtYXRjaCBBcnJheSBvZiBjcml0ZXJpYSB0byBkZXRlcm1pbmUgd2hhdCB0byBkbyBvbiB1cHNlcnQgb3BlcmF0aW9ucy4KCSAqIEBwYXJhbSBzdHJpbmcgJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lIFRoZSBuYW1lIG9mIHRoZSBJRCBmaWVsZCBmb3IgdGhpcyBwYXJ0aWN1bGFyIFdvcmRQcmVzcyBvYmplY3QgdHlwZS4KCSAqIEBwYXJhbSBpbnQgICAgJHNlY29uZHMgVGltZW91dCBmb3IgdGhlIHRyYW5zaWVudCB2YWx1ZSB0byBkZXRlcm1pbmUgdGhlIGRpcmVjdGlvbiBmb3IgYSBzeW5jLgoJICogQHJldHVybiBhcnJheSAkcmVzdWx0cyBDdXJyZW50bHkgdGhpcyBjb250YWlucyBhbiBhcnJheSBvZiBsb2cgZW50cmllcyBmb3IgZWFjaCBhdHRlbXB0LgoJICogQHRocm93cyBPYmplY3RfU3luY19TZl9FeGNlcHRpb24gRXhjZXB0aW9uICRlLgoJICovCglwcml2YXRlIGZ1bmN0aW9uIGNyZWF0ZV9jYWxsZWRfZnJvbV9zYWxlc2ZvcmNlKCAkc2Zfc3luY190cmlnZ2VyLCAkc3luY2VkX29iamVjdCwgJHBhcmFtcywgJHByZW1hdGNoLCAkd29yZHByZXNzX2lkX2ZpZWxkX25hbWUsICRzZWNvbmRzICkgewoKCQkkc2FsZXNmb3JjZV9tYXBwaW5nID0gJHN5bmNlZF9vYmplY3RbJ21hcHBpbmcnXTsKCQkkb2JqZWN0ICAgICAgICAgICAgID0gJHN5bmNlZF9vYmplY3RbJ3NhbGVzZm9yY2Vfb2JqZWN0J107CgkJLy8gbWV0aG9kcyB0byBydW4gdGhlIHdwIHVwZGF0ZSBvcGVyYXRpb25zLgoJCSRyZXN1bHRzID0gYXJyYXkoKTsKCQkkb3AgICAgICA9ICcnOwoKCQkvLyBzZXR1cCBTRiByZWNvcmQgdHlwZS4gQ2FtcGFpZ25NZW1iZXIgb2JqZWN0cyBnZXQgdGhlaXIgQ2FtcGFpZ24ncyB0eXBlCgkJLy8gaSBhbSBzdGlsbCBhIGJpdCBjb25mdXNlZCBhYm91dCB0aGlzCgkJLy8gd2Ugc2hvdWxkIHN0b3JlIHRoaXMgYXMgYSBtZXRhIGZpZWxkIG9uIGVhY2ggb2JqZWN0LCBpZiBpdCBtZWV0cyB0aGVzZSBjcml0ZXJpYQoJCS8vIHdlIG5lZWQgdG8gc3RvcmUgdGhlIHJlYWQvbW9kaWZ5IGF0dHJpYnV0ZXMgYmVjYXVzZSB0aGUgZmllbGQgZG9lc24ndCBleGlzdCBpbiB0aGUgbWFwcGluZy4KCQlpZiAoICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3NhbGVzZm9yY2VfcmVjb3JkX3R5cGVfZGVmYXVsdCddICE9PSAkdGhpcy0+bWFwcGluZ3MtPnNhbGVzZm9yY2VfZGVmYXVsdF9yZWNvcmRfdHlwZSAmJiBlbXB0eSggJHBhcmFtc1snUmVjb3JkVHlwZUlkJ10gKSAmJiAoICdDYW1wYWlnbk1lbWJlcicgIT09ICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKSApIHsKCQkJJHR5cGUgPSAkc2FsZXNmb3JjZV9tYXBwaW5nWyd3b3JkcHJlc3Nfb2JqZWN0J107CgkJCWlmICggJ2NhdGVnb3J5JyA9PT0gJHNhbGVzZm9yY2VfbWFwcGluZ1snd29yZHByZXNzX29iamVjdCddIHx8ICd0YWcnID09PSAkc2FsZXNmb3JjZV9tYXBwaW5nWyd3b3JkcHJlc3Nfb2JqZWN0J10gfHwgJ3Bvc3RfdGFnJyA9PT0gJHNhbGVzZm9yY2VfbWFwcGluZ1snd29yZHByZXNzX29iamVjdCddICkgewoJCQkJJHR5cGUgPSAndGVybSc7CgkJCX0KCQkJJHBhcmFtc1snUmVjb3JkVHlwZUlkJ10gPSBhcnJheSgKCQkJCSd2YWx1ZScgICAgICAgICA9PiAkc2FsZXNmb3JjZV9tYXBwaW5nWydzYWxlc2ZvcmNlX3JlY29yZF90eXBlX2RlZmF1bHQnXSwKCQkJCSdtZXRob2RfbW9kaWZ5JyA9PiAndXBkYXRlXycgLiAkdHlwZSAuICdfbWV0YScsCgkJCQknbWV0aG9kX3JlYWQnICAgPT4gJ2dldF8nIC4gJHR5cGUgLiAnX21ldGEnLAoJCQkpOwoJCX0KCgkJLy8gaG9vayB0byBhbGxvdyBvdGhlciBwbHVnaW5zIHRvIG1vZGlmeSB0aGUgJHdvcmRwcmVzc19pZCBzdHJpbmcgaGVyZQoJCS8vIHVzZSBob29rIHRvIGNoYW5nZSB0aGUgb2JqZWN0IHRoYXQgaXMgYmVpbmcgbWF0Y2hlZCB0byBkZXZlbG9wZXIncyBvd24gY3JpdGVyaWEKCQkvLyBleDogbWF0Y2ggYSBXb3JkUHJlc3MgdXNlciBiYXNlZCBvbiBzb21lIG90aGVyIGNyaXRlcmlhIHRoYW4gdGhlIHByZWRlZmluZWQgb25lcwoJCS8vIHJldHVybnMgYSAkd29yZHByZXNzX2lkLgoJCS8vIGl0IHNob3VsZCBrZWVwIE5VTEwgaWYgdGhlcmUgaXMgbm8gbWF0Y2gKCQkvLyB0aGUgZnVuY3Rpb24gdGhhdCBjYWxscyB0aGlzIGhvb2sgbmVlZHMgdG8gY2hlY2sgdGhlIG1hcHBpbmcgdG8gbWFrZSBzdXJlIHRoZSBXb3JkUHJlc3Mgb2JqZWN0IGlzIHRoZSByaWdodCB0eXBlLgoJCSR3b3JkcHJlc3NfaWQgPSBhcHBseV9maWx0ZXJzKCAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICdmaW5kX3dwX29iamVjdF9tYXRjaCcsIG51bGwsICRvYmplY3QsICRzYWxlc2ZvcmNlX21hcHBpbmcsICdwdWxsJyApOwoKCQkvLyBob29rIHRvIGFsbG93IG90aGVyIHBsdWdpbnMgdG8gZG8gc29tZXRoaW5nIHJpZ2h0IGJlZm9yZSBXb3JkUHJlc3MgZGF0YSBpcyBzYXZlZAoJCS8vIGV4OiBydW4gb3V0c2lkZSBtZXRob2RzIG9uIGFuIG9iamVjdCBpZiBpdCBleGlzdHMsIG9yIGRvIHNvbWV0aGluZyBpbiBwcmVwYXJhdGlvbiBmb3IgaXQgaWYgaXQgZG9lc24ndC4KCQlkb19hY3Rpb24oICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ3ByZV9wdWxsJywgJHdvcmRwcmVzc19pZCwgJHNhbGVzZm9yY2VfbWFwcGluZywgJG9iamVjdCwgJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lLCAkcGFyYW1zICk7CgoJCSRvcCA9ICR0aGlzLT5jaGVja19mb3JfdXBzZXJ0KCAkcHJlbWF0Y2gsICR3b3JkcHJlc3NfaWQgKTsKCgkJaWYgKCAnVXBzZXJ0JyA9PT0gJG9wICkgewoJCQkvLyBpZiBhIHByZW1hdGNoIGNyaXRlcmlhIGV4aXN0cywgbWFrZSB0aGUgdmFsdWVzIHF1ZXJ5YWJsZS4KCQkJaWYgKCBpc3NldCggJHByZW1hdGNoWydmaWVsZF9zYWxlc2ZvcmNlJ10gKSApIHsKCQkJCSR1cHNlcnRfa2V5ICAgICA9ICRwcmVtYXRjaFsnZmllbGRfd29yZHByZXNzJ107CgkJCQkkdXBzZXJ0X3ZhbHVlICAgPSAkcHJlbWF0Y2hbJ3ZhbHVlJ107CgkJCQkkdXBzZXJ0X21ldGhvZHMgPSAkcHJlbWF0Y2hbJ21ldGhvZHMnXTsKCQkJfQoKCQkJaWYgKCBudWxsICE9PSAkd29yZHByZXNzX2lkICkgewoJCQkJJHVwc2VydF9rZXkgICAgID0gJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lOwoJCQkJJHVwc2VydF92YWx1ZSAgID0gJHdvcmRwcmVzc19pZDsKCQkJCSR1cHNlcnRfbWV0aG9kcyA9IGFycmF5KCk7CgkJCX0KCgkJCS8vIHdpdGggdGhlIGZsYWcgYXQgdGhlIGVuZCwgdXBzZXJ0IHJldHVybnMgYSAkd29yZHByZXNzX2lkIG9ubHkKCQkJLy8gd2UgY2FuIHRoZW4gY2hlY2sgdG8gc2VlIGlmIGl0IGhhcyBhIG1hcHBpbmcgb2JqZWN0CgkJCS8vIHdlIHNob3VsZCBvbmx5IGRvIHRoaXMgaWYgdGhlIGFib3ZlIGhvb2sgZGlkbid0IGFscmVhZHkgc2V0IHRoZSAkd29yZHByZXNzX2lkLgoJCQlpZiAoIG51bGwgPT09ICR3b3JkcHJlc3NfaWQgKSB7CgkJCQkkd29yZHByZXNzX2lkID0gJHRoaXMtPndvcmRwcmVzcy0+b2JqZWN0X3Vwc2VydCggJHNhbGVzZm9yY2VfbWFwcGluZ1snd29yZHByZXNzX29iamVjdCddLCAkdXBzZXJ0X2tleSwgJHVwc2VydF92YWx1ZSwgJHVwc2VydF9tZXRob2RzLCAkcGFyYW1zLCAkc2FsZXNmb3JjZV9tYXBwaW5nWydwdWxsX3RvX2RyYWZ0cyddLCB0cnVlICk7CgkJCX0KCgkJCS8vIHBsYWNlaG9sZGVyIG1hcHBpbmcgb2JqZWN0LgoJCQkkbWFwcGluZ19vYmplY3QgPSBhcnJheSgpOwoKCQkJLy8gZmluZCBvdXQgaWYgdGhlcmUgaXMgYSBtYXBwaW5nIG9iamVjdCBmb3IgdGhpcyBXb3JkUHJlc3Mgb2JqZWN0IGFscmVhZHkKCQkJLy8gZG9uJ3QgZG8gaXQgaWYgdGhlIFdvcmRQcmVzcyBpZCBpcyAwLgoJCQlpZiAoIDAgIT09ICR3b3JkcHJlc3NfaWQgKSB7CgkJCQkkbWFwcGluZ19vYmplY3RzID0gJHRoaXMtPm1hcHBpbmdzLT5nZXRfYWxsX29iamVjdF9tYXBzKAoJCQkJCWFycmF5KAoJCQkJCQknd29yZHByZXNzX2lkJyAgICAgPT4gJHdvcmRwcmVzc19pZCwKCQkJCQkJJ3dvcmRwcmVzc19vYmplY3QnID0+ICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3dvcmRwcmVzc19vYmplY3QnXSwKCQkJCQkpCgkJCQkpOwoJCQkJaWYgKCBpc3NldCggJG1hcHBpbmdfb2JqZWN0c1swXSApICYmIGlzX2FycmF5KCAkbWFwcGluZ19vYmplY3RzWzBdICkgKSB7CgkJCQkJJG1hcHBpbmdfb2JqZWN0ID0gJG1hcHBpbmdfb2JqZWN0c1swXTsKCQkJCX0KCQkJfSBlbHNlIHsKCQkJCS8vIGlmIHRoZSB3cCBvYmplY3QgaXMgMCwgY2hlY2sgdG8gc2VlIGlmIHRoZXJlIGFyZSBhbnkgb2JqZWN0IG1hcHMgdGhhdCBoYXZlIGFuIGlkIG9mIDAuIGlmIHRoZXJlIGFyZSBhbnksIGxvZyB0aGVtLgoJCQkJJG1hcHBpbmdfb2JqZWN0X2RlYnVnID0gJHRoaXMtPm1hcHBpbmdzLT5nZXRfYWxsX29iamVjdF9tYXBzKAoJCQkJCWFycmF5KAoJCQkJCQknd29yZHByZXNzX2lkJyA9PiAkd29yZHByZXNzX2lkLAoJCQkJCSkKCQkJCSk7CgoJCQkJaWYgKCAhIGVtcHR5KCAkbWFwcGluZ19vYmplY3RfZGVidWcgKSApIHsKCQkJCQkvLyBjcmVhdGUgbG9nIGVudHJ5IHRvIHdhcm4gYWJvdXQgYXQgbGVhc3Qgb25lIGlkIG9mIDAuCgkJCQkJJHN0YXR1cyA9ICdlcnJvcic7CgkJCQkJJHRpdGxlICA9IHNwcmludGYoCgkJCQkJCS8vIHRyYW5zbGF0b3JzOiBwbGFjZWhvbGRlcnMgYXJlOiAxKSB0aGUgbG9nIHN0YXR1cy4KCQkJCQkJZXNjX2h0bWxfXyggJyUxJHM6IFRoZXJlIGlzIGF0IGxlYXN0IG9uZSBvYmplY3QgbWFwIHdpdGggYSBXb3JkUHJlc3MgSUQgb2YgMC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCXVjZmlyc3QoIGVzY19hdHRyKCAkc3RhdHVzICkgKQoJCQkJCSk7CgkJCQkJaWYgKCAxID09PSBjb3VudCggJG1hcHBpbmdfb2JqZWN0X2RlYnVnICkgKSB7CgkJCQkJCSRib2R5ID0gc3ByaW50ZigKCQkJCQkJCS8vIHRyYW5zbGF0b3JzOiBwbGFjZWhvbGRlcnMgYXJlOiAxKSB0aGUgbWFwcGluZyBvYmplY3Qgcm93IElELCAyKSB0aGUgbmFtZSBvZiB0aGUgV29yZFByZXNzIG9iamVjdCwgMykgdGhlIElEIG9mIHRoZSBTYWxlc2ZvcmNlIG9iamVjdCBpdCB3YXMgdHJ5aW5nIHRvIG1hcC4KCQkJCQkJCWVzY19odG1sX18oICdUaGVyZSBpcyBhbiBvYmplY3QgbWFwIHdpdGggSUQgb2YgJTEkcyBhbmQgaXQgaXMgbWFwcGVkIHRvIHRoZSBXb3JkUHJlc3MgJTIkcyB3aXRoIElEIG9mIDAgYW5kIHRoZSBTYWxlc2ZvcmNlIG9iamVjdCB3aXRoIElEIG9mICUzJHMnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQlhYnNpbnQoICRtYXBwaW5nX29iamVjdF9kZWJ1Z1swXVsnaWQnXSApLAoJCQkJCQkJZXNjX2F0dHIoICRtYXBwaW5nX29iamVjdF9kZWJ1Z1swXVsnd29yZHByZXNzX29iamVjdCddICksCgkJCQkJCQllc2NfYXR0ciggJG1hcHBpbmdfb2JqZWN0X2RlYnVnWzBdWydzYWxlc2ZvcmNlX2lkJ10gKQoJCQkJCQkpOwoJCQkJCX0gZWxzZSB7CgkJCQkJCSRib2R5ID0gc3ByaW50ZiggZXNjX2h0bWxfXyggJ1RoZXJlIGFyZSBtdWx0aXBsZSBvYmplY3QgbWFwcyB3aXRoIFdvcmRQcmVzcyBJRCBvZiAwLiBUaGVpciBJRHMgYXJlOiAnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgLiAnPHVsPicgKTsKCQkJCQkJZm9yZWFjaCAoICRtYXBwaW5nX29iamVjdF9kZWJ1ZyBhcyAkbWFwcGluZ19vYmplY3QgKSB7CgkJCQkJCQkkYm9keSAuPSBzcHJpbnRmKAoJCQkJCQkJCS8vIHRyYW5zbGF0b3JzOiBwbGFjZWhvbGRlcnMgYXJlOiAxKSB0aGUgbWFwcGluZyBvYmplY3Qgcm93IElELCAyKSB0aGUgSUQgb2YgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0LCAzKSB0aGUgV29yZFByZXNzIG9iamVjdCB0eXBlLgoJCQkJCQkJCSc8bGk+JyAuIGVzY19odG1sX18oICdNYXBwaW5nIG9iamVjdCBpZDogJTEkcy4gU2FsZXNmb3JjZSBJZDogJTIkcy4gV29yZFByZXNzIG9iamVjdCB0eXBlOiAlMyRzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApIC4gJzwvbGk+JywKCQkJCQkJCQlhYnNpbnQoICRtYXBwaW5nX29iamVjdFsnaWQnXSApLAoJCQkJCQkJCWVzY19hdHRyKCAkbWFwcGluZ19vYmplY3RbJ3NhbGVzZm9yY2VfaWQnXSApLAoJCQkJCQkJCWVzY19hdHRyKCAkc2FsZXNmb3JjZV9tYXBwaW5nWyd3b3JkcHJlc3Nfb2JqZWN0J10gKQoJCQkJCQkJKTsKCQkJCQkJfQoJCQkJCQkkYm9keSAuPSBzcHJpbnRmKCAnPC91bD4nICk7CgkJCQkJfQoJCQkJCSRwYXJlbnQgPSAwOwoJCQkJCSRyZXN1bHQgPSBhcnJheSgKCQkJCQkJJ3RpdGxlJyAgID0+ICR0aXRsZSwKCQkJCQkJJ21lc3NhZ2UnID0+ICRib2R5LAoJCQkJCQkndHJpZ2dlcicgPT4gJHNmX3N5bmNfdHJpZ2dlciwKCQkJCQkJJ3BhcmVudCcgID0+ICRwYXJlbnQsCgkJCQkJCSdzdGF0dXMnICA9PiAkc3RhdHVzLAoJCQkJCSk7CgkJCQkJJHRoaXMtPmxvZ2dpbmctPnNldHVwKCAkcmVzdWx0ICk7CgkJCQkJJHJlc3VsdHNbXSA9ICRyZXN1bHQ7CgkJCQl9IC8vIEVuZCBpZigpIHN0YXRlbWVudC4KCQkJfSAvLyBFbmQgaWYoKSBzdGF0ZW1lbnQgY2hlY2tpbmcgZm9yIGEgbWFwcGluZyBvYmplY3QgZm9yIHRoaXMgV29yZFByZXNzIG9iamVjdC4KCgkJCS8vIHRoZXJlIGlzIGFscmVhZHkgYSBtYXBwaW5nIG9iamVjdC4gZG9uJ3QgY2hhbmdlIHRoZSBXb3JkUHJlc3MgZGF0YSB0byBtYXRjaCB0aGlzIG5ldyBTYWxlc2ZvcmNlIHJlY29yZCwgYnV0IGxvZyBpdC4KCQkJaWYgKCBpc3NldCggJG1hcHBpbmdfb2JqZWN0WydpZCddICkgKSB7CgkJCQkvLyBzZXQgdGhlIHRyYW5zaWVudHMgc28gdGhhdCBzYWxlc2ZvcmNlX3B1c2ggZG9lc24ndCBzdGFydCBkb2luZyBzdHVmZiwgdGhlbiByZXR1cm4gb3V0IG9mIGhlcmUuCgkJCQkkdGhpcy0+c3luY190cmFuc2llbnRzLT5zZXQoICdzYWxlc2ZvcmNlX3B1bGxpbmdfJyAuICRtYXBwaW5nX29iamVjdFsnc2FsZXNmb3JjZV9pZCddLCAnJywgJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSwgMSwgJHNlY29uZHMgKTsKCQkJCSR0aGlzLT5zeW5jX3RyYW5zaWVudHMtPnNldCggJ3NhbGVzZm9yY2VfcHVsbGluZ19vYmplY3RfaWQnLCAnJywgJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSwgJG1hcHBpbmdfb2JqZWN0WydzYWxlc2ZvcmNlX2lkJ10gKTsKCQkJCS8vIGNyZWF0ZSBsb2cgZW50cnkgdG8gaW5kaWNhdGUgdGhhdCBub3RoaW5nIGhhcHBlbmVkLgoJCQkJJHN0YXR1cyA9ICdub3RpY2UnOwoJCQkJJHRpdGxlICA9IHNwcmludGYoCgkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIGxvZyBzdGF0dXMsIDIpIG1hcHBpbmcgb2JqZWN0IHJvdyBpZCwgMykgV29yZFByZXNzIG9iamVjdCB0eW9lLCA0KSBpbmRpdmlkdWFsIFdvcmRQcmVzcyBpdGVtIElELCA1KSBpbmRpdmlkdWFsIFNhbGVzZm9yY2UgaXRlbSBJRC4KCQkJCQllc2NfaHRtbF9fKCAnJTEkczogQmVjYXVzZSBvYmplY3QgbWFwICUyJHMgYWxyZWFkeSBleGlzdHMsIFdvcmRQcmVzcyAlMyRzICU0JHMgd2FzIG5vdCBtYXBwZWQgdG8gU2FsZXNmb3JjZSBJZCAlNSRzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCXVjZmlyc3QoIGVzY19hdHRyKCAkc3RhdHVzICkgKSwKCQkJCQlhYnNpbnQoICRtYXBwaW5nX29iamVjdFsnaWQnXSApLAoJCQkJCWVzY19hdHRyKCAkc2FsZXNmb3JjZV9tYXBwaW5nWyd3b3JkcHJlc3Nfb2JqZWN0J10gKSwKCQkJCQlhYnNpbnQoICR3b3JkcHJlc3NfaWQgKSwKCQkJCQllc2NfYXR0ciggJG9iamVjdFsnSWQnXSApCgkJCQkpOwoJCQkJJGJvZHkgPSBzcHJpbnRmKAoJCQkJCS8vIHRyYW5zbGF0b3JzOiBwbGFjZWhvbGRlcnMgYXJlIDEpIFdvcmRQcmVzcyBvYmplY3QgdHlwZSwgMikgZmllbGQgbmFtZSBmb3IgdGhlIFdvcmRQcmVzcyBpZCwgMykgdGhlIFdvcmRQcmVzcyBpZCB2YWx1ZSwgNCkgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0IHR5cGUsIDUpIHRoZSBTYWxlc2ZvcmNlIG9iamVjdCBJZCB0aGF0IHdhcyBtb2RpZmllZCwgNikgdGhlIG1hcHBpbmcgb2JqZWN0IHJvdyBpZC4KCQkJCQllc2NfaHRtbF9fKCAnVGhlIFdvcmRQcmVzcyAlMSRzIHdpdGggJTIkcyBvZiAlMyRzIGlzIGFscmVhZHkgbWFwcGVkIHRvIHRoZSBTYWxlc2ZvcmNlICU0JHMgd2l0aCBJZCBvZiAlNSRzIGluIHRoZSBtYXBwaW5nIG9iamVjdCB3aXRoIGlkIG9mICU2JHMuIFRoZSBTYWxlc2ZvcmNlICU0JHMgd2l0aCBJZCBvZiAlNSRzIHdhcyBjcmVhdGVkIG9yIG1vZGlmaWVkIGluIFNhbGVzZm9yY2UsIGFuZCB3b3VsZCBvdGhlcndpc2UgaGF2ZSBiZWVuIG1hcHBlZCB0byB0aGlzIFdvcmRQcmVzcyByZWNvcmQuIE5vIFdvcmRQcmVzcyBkYXRhIGhhcyBiZWVuIGNoYW5nZWQgdG8gcHJldmVudCBjaGFuZ2luZyBkYXRhIHVuaW50ZW50aW9uYWxseS4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJZXNjX2F0dHIoICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3dvcmRwcmVzc19vYmplY3QnXSApLAoJCQkJCWVzY19hdHRyKCAkd29yZHByZXNzX2lkX2ZpZWxkX25hbWUgKSwKCQkJCQlhYnNpbnQoICR3b3JkcHJlc3NfaWQgKSwKCQkJCQllc2NfYXR0ciggJHNhbGVzZm9yY2VfbWFwcGluZ1snc2FsZXNmb3JjZV9vYmplY3QnXSApLAoJCQkJCWVzY19hdHRyKCAkb2JqZWN0WydJZCddICksCgkJCQkJYWJzaW50KCAkbWFwcGluZ19vYmplY3RbJ2lkJ10gKQoJCQkJKTsKCQkJCS8vIGlmIHdlIGtub3cgdGhlIFdvcmRQcmVzcyBvYmplY3QgaWQgd2UgY2FuIHB1dCBpdCBpbiB0aGVyZS4KCQkJCWlmICggbnVsbCAhPT0gJHdvcmRwcmVzc19pZCApIHsKCQkJCQkkcGFyZW50ID0gJHdvcmRwcmVzc19pZDsKCQkJCX0gZWxzZSB7CgkJCQkJJHBhcmVudCA9IDA7CgkJCQl9CgkJCQkkYWxyZWFkeV9tYXBwZWRfbG9nID0gYXJyYXkoCgkJCQkJJ3RpdGxlJyAgID0+ICR0aXRsZSwKCQkJCQknbWVzc2FnZScgPT4gJGJvZHksCgkJCQkJJ3RyaWdnZXInID0+ICRzZl9zeW5jX3RyaWdnZXIsCgkJCQkJJ3BhcmVudCcgID0+ICRwYXJlbnQsCgkJCQkJJ3N0YXR1cycgID0+ICRzdGF0dXMsCgkJCQkpOwoJCQkJJHRoaXMtPmxvZ2dpbmctPnNldHVwKCAkYWxyZWFkeV9tYXBwZWRfbG9nICk7CgkJCQkkcmVzdWx0c1tdID0gJGFscmVhZHlfbWFwcGVkX2xvZzsKCgkJCX0gLy8gRW5kIGlmKCkgc3RhdGVtZW50LgoJCX0gLy8gZW5kIGlmIG9wIGlzIHVwc2VydC4KCgkJLy8gY3JlYXRlIHRoZSBtYXBwaW5nIG9iamVjdCBiZXR3ZWVuIHRoZSByb3dzLiB3ZSB1cGRhdGUgaXQgd2l0aCB0aGUgY29ycmVjdCBJRHMgYWZ0ZXIgc3VjY2Vzc2Z1bCByZXNwb25zZS4KCQkkbWFwcGluZ19vYmplY3RfaWQgPSAkdGhpcy0+Y3JlYXRlX29iamVjdF9tYXAoICRvYmplY3QsICR0aGlzLT5tYXBwaW5ncy0+Z2VuZXJhdGVfdGVtcG9yYXJ5X2lkKCAncHVsbCcgKSwgJHNhbGVzZm9yY2VfbWFwcGluZyApOwoJCSRtYXBwaW5nX29iamVjdHMgICA9ICR0aGlzLT5tYXBwaW5ncy0+Z2V0X2FsbF9vYmplY3RfbWFwcygKCQkJYXJyYXkoCgkJCQknaWQnID0+ICRtYXBwaW5nX29iamVjdF9pZCwKCQkJKQoJCSk7CgkJaWYgKCBpc3NldCggJG1hcHBpbmdfb2JqZWN0c1swXSApICYmIGlzX2FycmF5KCAkbWFwcGluZ19vYmplY3RzWzBdICkgKSB7CgkJCSRtYXBwaW5nX29iamVjdCA9ICRtYXBwaW5nX29iamVjdHNbMF07CgkJfQoKCQkvLyB0cnkgdG8gdXBzZXJ0IG9yIGNyZWF0ZSBhIFdvcmRQcmVzcyByZWNvcmQuCgkJdHJ5IHsKCQkJaWYgKCAnVXBzZXJ0JyA9PT0gJG9wICkgewoJCQkJLy8gcmlnaHQgaGVyZSB3ZSBzaG91bGQgdXBkYXRlIHRoZSBwdWxsaW5nIHRyYW5zaWVudC4KCQkJCSR0aGlzLT5zeW5jX3RyYW5zaWVudHMtPnNldCggJ3NhbGVzZm9yY2VfcHVsbGluZ18nIC4gJG9iamVjdFsnSWQnXSwgJycsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10sIDEsICRzZWNvbmRzICk7CgkJCQkkdGhpcy0+c3luY190cmFuc2llbnRzLT5zZXQoICdzYWxlc2ZvcmNlX3B1bGxpbmdfb2JqZWN0X2lkJywgJycsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10sICRvYmplY3RbJ0lkJ10gKTsKCQkJCS8vIG5vdyB3ZSBjYW4gdXBzZXJ0IHRoZSBvYmplY3QgaW4gd3AgaWYgd2UndmUgZ290dGVuIHRvIHRoaXMgcG9pbnQKCQkJCS8vIHRoaXMgY29tbWFuZCB3aWxsIGVpdGhlciBjcmVhdGUgb3IgdXBkYXRlIHRoZSBvYmplY3QuCgkJCQkkcmVzdWx0ID0gJHRoaXMtPndvcmRwcmVzcy0+b2JqZWN0X3Vwc2VydCggJHNhbGVzZm9yY2VfbWFwcGluZ1snd29yZHByZXNzX29iamVjdCddLCAkdXBzZXJ0X2tleSwgJHVwc2VydF92YWx1ZSwgJHVwc2VydF9tZXRob2RzLCAkcGFyYW1zLCAkc2FsZXNmb3JjZV9tYXBwaW5nWydwdWxsX3RvX2RyYWZ0cyddICk7CgkJCX0gZWxzZSB7CgkJCQkvLyBObyBrZXkgb3IgcHJlbWF0Y2ggZmllbGQgZXhpc3RzIG9uIHRoaXMgZmllbGQgbWFwIG9iamVjdCwgY3JlYXRlIGEgbmV3IG9iamVjdCBpbiBXb3JkUHJlc3MuCgkJCQkkdGhpcy0+c3luY190cmFuc2llbnRzLT5zZXQoICdzYWxlc2ZvcmNlX3B1bGxpbmdfJyAuICRtYXBwaW5nX29iamVjdF9pZCwgJycsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10sIDEsICRzZWNvbmRzICk7CgkJCQkkdGhpcy0+c3luY190cmFuc2llbnRzLT5zZXQoICdzYWxlc2ZvcmNlX3B1bGxpbmdfb2JqZWN0X2lkJywgJycsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10sICRtYXBwaW5nX29iamVjdF9pZCApOwoJCQkJLy8gbm93IHdlIGNhbiBjcmVhdGUgdGhlIG9iamVjdCBpbiB3cCBpZiB3ZSd2ZSBnb3R0ZW4gdG8gdGhpcyBwb2ludC4KCQkJCSRyZXN1bHQgPSAkdGhpcy0+d29yZHByZXNzLT5vYmplY3RfY3JlYXRlKCAkc2FsZXNmb3JjZV9tYXBwaW5nWyd3b3JkcHJlc3Nfb2JqZWN0J10sICRwYXJhbXMgKTsKCQkJfSAvLyBFbmQgaWYoKSBzdGF0ZW1lbnQuCgkJfSBjYXRjaCAoIE9iamVjdF9TeW5jX1NmX0V4Y2VwdGlvbiAkZSApIHsKCQkJJHJlc3VsdFsnZXJyb3JzJ10gPSAkZS0+Z2V0TWVzc2FnZSgpOwoJCX0gLy8gRW5kIHRyeSgpIG1ldGhvZCBmb3IgY3JlYXRlIG9yIHVwc2VydC4KCgkJLy8gc2V0ICR3b3JkcHJlc3NfZGF0YSB0byB0aGUgV29yZFByZXNzIHJlc3VsdC4KCQkkd29yZHByZXNzX2RhdGEgPSAkcmVzdWx0WydkYXRhJ107CgkJaWYgKCBpc3NldCggJHdvcmRwcmVzc19kYXRhWyAiJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lIiBdICkgKSB7CgkJCSR3b3JkcHJlc3NfaWQgPSAkd29yZHByZXNzX2RhdGFbICIkd29yZHByZXNzX2lkX2ZpZWxkX25hbWUiIF07CgkJfSBlbHNlIHsKCQkJJHdvcmRwcmVzc19pZCA9IDA7CgkJfQoKCQkvLyBXb3JkUHJlc3MgY3JlYXRlL3Vwc2VydCBjYWxsIGhhcyBmaW5pc2hlZCBydW5uaW5nCgkJLy8gSWYgaXQgd2FzIHN1Y2Nlc3NmdWwsIHRoZSBvYmplY3QgaGFzIGFscmVhZHkgYmVlbiBjcmVhdGVkL3VwZGF0ZWQgaW4gV29yZFByZXNzCgkJLy8gdGhpcyBpcyB3aGVyZSBpdCBjcmVhdGVzL3VwZGF0ZXMgdGhlIG9iamVjdCBtYXBwaW5nIHJvd3MgYW5kIGxvZyBlbnRyaWVzIGluIFdvcmRQcmVzcwoJCS8vIHRoaXMgaXMgYWxzbyB3aGVyZSBpdCBydW5zIHB1bGxfc3VjY2VzcyBhbmQgcHVsbF9mYWlsIGFjdGlvbnMgaG9va3MuCgoJCWlmICggZW1wdHkoICRyZXN1bHRbJ2Vycm9ycyddICkgKSB7CgkJCS8vIHNldCB1cCBsb2cgZW50cnkgZm9yIHN1Y2Nlc3NmdWwgY3JlYXRlIG9yIHVwc2VydC4KCQkJJHN0YXR1cyA9ICdzdWNjZXNzJzsKCQkJJHRpdGxlICA9IHNwcmludGYoCgkJCQkvLyB0cmFuc2xhdG9yczogcGxhY2Vob2xkZXJzIGFyZTogMSkgdGhlIGxvZyBzdGF0dXMsIDIpIHdoYXQgb3BlcmF0aW9uIGlzIGhhcHBlbmluZywgMykgdGhlIG5hbWUgb2YgdGhlIFdvcmRQcmVzcyBvYmplY3QgdHlwZSwgNCkgdGhlIFdvcmRQcmVzcyBpZCBmaWVsZCBuYW1lLCA1KSB0aGUgV29yZFByZXNzIG9iamVjdCBpZCB2YWx1ZSwgNikgdGhlIG5hbWUgb2YgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0LCA3KSB0aGUgU2FsZXNmb3JjZSBJZCB2YWx1ZS4KCQkJCWVzY19odG1sX18oICclMSRzOiAlMiRzIFdvcmRQcmVzcyAlMyRzIHdpdGggJTQkcyBvZiAlNSRzIChTYWxlc2ZvcmNlICU2JHMgSWQgb2YgJTckcyknLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQl1Y2ZpcnN0KCBlc2NfYXR0ciggJHN0YXR1cyApICksCgkJCQllc2NfYXR0ciggJG9wICksCgkJCQllc2NfYXR0ciggJHNhbGVzZm9yY2VfbWFwcGluZ1snd29yZHByZXNzX29iamVjdCddICksCgkJCQllc2NfYXR0ciggJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lICksCgkJCQllc2NfYXR0ciggJHdvcmRwcmVzc19pZCApLAoJCQkJZXNjX2F0dHIoICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKSwKCQkJCWVzY19hdHRyKCAkb2JqZWN0WydJZCddICkKCQkJKTsKCQkJJHJlc3VsdCA9IGFycmF5KAoJCQkJJ3RpdGxlJyAgID0+ICR0aXRsZSwKCQkJCSdtZXNzYWdlJyA9PiAnJywKCQkJCSd0cmlnZ2VyJyA9PiAkc2Zfc3luY190cmlnZ2VyLAoJCQkJJ3BhcmVudCcgID0+ICR3b3JkcHJlc3NfaWQsCgkJCQknc3RhdHVzJyAgPT4gJHN0YXR1cywKCQkJKTsKCgkJCS8vIHNldCB1cCB0aGUgbWFwcGluZyBvYmplY3QgZm9yIHN1Y2Nlc3NmdWwgY3JlYXRlIG9yIHVwc2VydC4KCQkJJG1hcHBpbmdfb2JqZWN0WydsYXN0X3N5bmNfc3RhdHVzJ10gID0gJHRoaXMtPm1hcHBpbmdzLT5zdGF0dXNfc3VjY2VzczsKCQkJJG1hcHBpbmdfb2JqZWN0WydsYXN0X3N5bmNfbWVzc2FnZSddID0gZXNjX2h0bWxfXyggJ01hcHBpbmcgb2JqZWN0IHVwZGF0ZWQgdmlhIGZ1bmN0aW9uOiAnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgLiBfX0ZVTkNUSU9OX187CgoJCQkvLyBob29rIGZvciBwdWxsIHN1Y2Nlc3MuCgkJCWRvX2FjdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAncHVsbF9zdWNjZXNzJywgJG9wLCAkcmVzdWx0LCAkc3luY2VkX29iamVjdCApOwoJCX0gZWxzZSB7CgkJCS8vIHNldCB1cCBsb2cgZW50cnkgZm9yIGZhaWxlZCBjcmVhdGUgb3IgdXBzZXJ0LgoJCQkkc3RhdHVzID0gJ2Vycm9yJzsKCQkJJHRpdGxlICA9IHNwcmludGYoCgkJCQkvLyB0cmFuc2xhdG9yczogcGxhY2Vob2xkZXJzIGFyZTogMSkgdGhlIGxvZyBzdGF0dXMsIDIpIHdoYXQgb3BlcmF0aW9uIGlzIGhhcHBlbmluZywgYW5kIDMpIHRoZSBuYW1lIG9mIHRoZSBXb3JkUHJlc3Mgb2JqZWN0LgoJCQkJZXNjX2h0bWxfXyggJyUxJHM6ICUyJHMgV29yZFByZXNzICUzJHMnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQl1Y2ZpcnN0KCBlc2NfYXR0ciggJHN0YXR1cyApICksCgkJCQllc2NfYXR0ciggJG9wICksCgkJCQllc2NfYXR0ciggJHNhbGVzZm9yY2VfbWFwcGluZ1snd29yZHByZXNzX29iamVjdCddICkKCQkJKTsKCQkJaWYgKCBudWxsICE9PSAkc2FsZXNmb3JjZV9pZCApIHsKCQkJCSR0aXRsZSAuPSAnICcgLiAkc2FsZXNmb3JjZV9pZDsKCQkJfQoJCQkkdGl0bGUgLj0gc3ByaW50ZigKCQkJCS8vIHRyYW5zbGF0b3JzOiBwbGFjZWhvbGRlcnMgYXJlOiAxKSB0aGUgbmFtZSBvZiB0aGUgU2FsZXNmb3JjZSBvYmplY3QsIGFuZCAyKSBJZCBvZiB0aGUgU2FsZXNmb3JjZSBvYmplY3QuCgkJCQllc2NfaHRtbF9fKCAnIChTYWxlc2ZvcmNlICUxJHMgd2l0aCBJZCBvZiAlMiRzKScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSRzYWxlc2ZvcmNlX21hcHBpbmdbJ3NhbGVzZm9yY2Vfb2JqZWN0J10sCgkJCQkkb2JqZWN0WydJZCddCgkJCSk7CgkJCS8vIGlmIHdlIGtub3cgdGhlIFdvcmRQcmVzcyBvYmplY3QgaWQgd2UgY2FuIHB1dCBpdCBpbiB0aGVyZS4KCQkJaWYgKCBudWxsICE9PSAkd29yZHByZXNzX2lkICkgewoJCQkJJHBhcmVudCA9ICR3b3JkcHJlc3NfaWQ7CgkJCX0gZWxzZSB7CgkJCQkkcGFyZW50ID0gMDsKCQkJfQoKCQkJLy8gc2V0IHVwIGVycm9yIG1lc3NhZ2UuCgkJCSRkZWZhdWx0X21lc3NhZ2UgPSBlc2NfaHRtbF9fKCAnQW4gZXJyb3Igb2NjdXJyZWQgcHVsbGluZyB0aGlzIGRhdGEgZnJvbSBTYWxlc2ZvcmNlLiBTZWUgdGhlIHBsdWdpbiBsb2dzLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsKCQkJJG1lc3NhZ2UgICAgICAgICA9ICR0aGlzLT5wYXJzZV9lcnJvcl9tZXNzYWdlKCAkcmVzdWx0LCAkZGVmYXVsdF9tZXNzYWdlICk7CgoJCQkkcmVzdWx0ID0gYXJyYXkoCgkJCQkndGl0bGUnICAgPT4gJHRpdGxlLAoJCQkJJ21lc3NhZ2UnID0+ICRtZXNzYWdlLAoJCQkJJ3RyaWdnZXInID0+ICRzZl9zeW5jX3RyaWdnZXIsCgkJCQkncGFyZW50JyAgPT4gJHBhcmVudCwKCQkJCSdzdGF0dXMnICA9PiAkc3RhdHVzLAoJCQkpOwoKCQkJLy8gc2V0IHVwIHRoZSBtYXBwaW5nIG9iamVjdCBmb3IgYW4gZXJyb3IuCgkJCSRtYXBwaW5nX29iamVjdFsnbGFzdF9zeW5jX3N0YXR1cyddICA9ICR0aGlzLT5tYXBwaW5ncy0+c3RhdHVzX2Vycm9yOwoJCQkkbWFwcGluZ19vYmplY3RbJ2xhc3Rfc3luY19tZXNzYWdlJ10gPSBzdWJzdHIoICRtZXNzYWdlLCAwLCAyNTUgKTsKCgkJCS8vIGhvb2sgZm9yIHB1bGwgZmFpbC4KCQkJZG9fYWN0aW9uKCAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICdwdWxsX2ZhaWwnLCAkb3AsICRyZXN1bHQsICRzeW5jZWRfb2JqZWN0ICk7CgkJfSAvLyBFbmQgaWYoKSBzdGF0ZW1lbnQgY2hlY2tpbmcgZm9yIGVycm9ycy4KCgkJLy8gZWl0aGVyIHdheSwgc2F2ZSB0aGUgbG9nIGVudHJ5LgoJCSR0aGlzLT5sb2dnaW5nLT5zZXR1cCggJHJlc3VsdCApOwoJCSRyZXN1bHRzW10gPSAkcmVzdWx0OwoKCQkvLyBlaXRoZXIgd2F5LCB1cGRhdGUgdGhlIG9iamVjdCBtYXAuCgkJaWYgKCAwICE9PSAkd29yZHByZXNzX2lkICkgewoJCQkkbWFwcGluZ19vYmplY3RbJ3dvcmRwcmVzc19pZCddID0gJHdvcmRwcmVzc19pZDsKCQl9CgkJJG1hcHBpbmdfb2JqZWN0WydsYXN0X3N5bmMnXSA9IGN1cnJlbnRfdGltZSggJ215c3FsJyApOwoJCSRtYXBwaW5nX29iamVjdCAgICAgICAgICAgICAgPSAkdGhpcy0+bWFwcGluZ3MtPnVwZGF0ZV9vYmplY3RfbWFwKCAkbWFwcGluZ19vYmplY3QsICRtYXBwaW5nX29iamVjdFsnaWQnXSApOwoKCQlyZXR1cm4gJHJlc3VsdHM7Cgl9CgoJLyoqCgkgKiBEZXRlcm1pbmUgd2hldGhlciB0aGUgY3VycmVudCBvcGVyYXRpb24gaXMgYW4gdXBzZXJ0IG9yIGEgY3JlYXRlLgoJICoKCSAqIEBwYXJhbSBhcnJheSAgICAkcHJlbWF0Y2ggQXJyYXkgb2YgY3JpdGVyaWEgdG8gZGV0ZXJtaW5lIHdoYXQgdG8gZG8gb24gdXBzZXJ0IG9wZXJhdGlvbnMuCgkgKiBAcGFyYW0gaW50fG51bGwgJHdvcmRwcmVzc19pZCBUaGUgdmFsdWUgb2YgdGhlIFdvcmRQcmVzcyBJRC4KCSAqIEByZXR1cm4gc3RyaW5nICAkb3AgV2hldGhlciBpdCdzIGFuIHVwc2VydCBvciBjcmVhdGUuCgkgKi8KCXByaXZhdGUgZnVuY3Rpb24gY2hlY2tfZm9yX3Vwc2VydCggJHByZW1hdGNoLCAkd29yZHByZXNzX2lkICkgewoJCWlmICggaXNzZXQoICRwcmVtYXRjaFsnZmllbGRfc2FsZXNmb3JjZSddICkgfHwgbnVsbCAhPT0gJHdvcmRwcmVzc19pZCApIHsKCQkJJG9wID0gJ1Vwc2VydCc7CgkJfSBlbHNlIHsKCQkJJG9wID0gJ0NyZWF0ZSc7CgkJfQoJCXJldHVybiAkb3A7Cgl9CgoJLyoqCgkgKiBVcGRhdGUgcmVjb3JkcyBpbiBXb3JkUHJlc3MgZnJvbSBhIFNhbGVzZm9yY2UgcHVsbAoJICoKCSAqIEBwYXJhbSBzdHJpbmcgJHNmX3N5bmNfdHJpZ2dlciBUaGUgY3VycmVudCBvcGVyYXRpb24ncyB0cmlnZ2VyLgoJICogQHBhcmFtIGFycmF5ICAkc3luY2VkX29iamVjdCBDb21iaW5lZCBkYXRhIGZvciBmaWVsZG1hcCwgbWFwcGluZyBvYmplY3QsIGFuZCBTYWxlc2ZvcmNlIG9iamVjdCBkYXRhLgoJICogQHBhcmFtIGFycmF5ICAkcGFyYW1zIEFycmF5IG9mIG1hcHBlZCBrZXkgdmFsdWUgcGFpcnMgYmV0d2VlbiBXb3JkUHJlc3MgYW5kIFNhbGVzZm9yY2UgZmllbGRzLgoJICogQHBhcmFtIHN0cmluZyAkd29yZHByZXNzX2lkX2ZpZWxkX25hbWUgVGhlIG5hbWUgb2YgdGhlIElEIGZpZWxkIGZvciB0aGlzIHBhcnRpY3VsYXIgV29yZFByZXNzIG9iamVjdCB0eXBlLgoJICogQHBhcmFtIGludCAgICAkc2Vjb25kcyBUaW1lb3V0IGZvciB0aGUgdHJhbnNpZW50IHZhbHVlIHRvIGRldGVybWluZSB0aGUgZGlyZWN0aW9uIGZvciBhIHN5bmMuCgkgKiBAcmV0dXJuIGFycmF5ICRyZXN1bHRzIEN1cnJlbnRseSB0aGlzIGNvbnRhaW5zIGFuIGFycmF5IG9mIGxvZyBlbnRyaWVzIGZvciBlYWNoIGF0dGVtcHQuCgkgKiBAdGhyb3dzIE9iamVjdF9TeW5jX1NmX0V4Y2VwdGlvbiBFeGNlcHRpb24gJGUuCgkgKi8KCXByaXZhdGUgZnVuY3Rpb24gdXBkYXRlX2NhbGxlZF9mcm9tX3NhbGVzZm9yY2UoICRzZl9zeW5jX3RyaWdnZXIsICRzeW5jZWRfb2JqZWN0LCAkcGFyYW1zLCAkd29yZHByZXNzX2lkX2ZpZWxkX25hbWUsICRzZWNvbmRzICkgewoKCQkkc2FsZXNmb3JjZV9tYXBwaW5nID0gJHN5bmNlZF9vYmplY3RbJ21hcHBpbmcnXTsKCQkkbWFwcGluZ19vYmplY3QgICAgID0gJHN5bmNlZF9vYmplY3RbJ21hcHBpbmdfb2JqZWN0J107CgkJJG9iamVjdCAgICAgICAgICAgICA9ICRzeW5jZWRfb2JqZWN0WydzYWxlc2ZvcmNlX29iamVjdCddOwoKCQkvLyBtZXRob2RzIHRvIHJ1biB0aGUgd3AgdXBkYXRlIG9wZXJhdGlvbnMuCgkJJHJlc3VsdHMgPSBhcnJheSgpOwoJCSRvcCAgICAgID0gJyc7CgoJCS8vIGlmIHRoZSBsYXN0IHN5bmMgaXMgZ3JlYXRlciB0aGFuIHRoZSBsYXN0IHRpbWUgdGhpcyBvYmplY3Qgd2FzIHVwZGF0ZWQgYnkgU2FsZXNmb3JjZSwgc2tpcCBpdAoJCS8vIHRoaXMga2VlcHMgdXMgZnJvbSBkb2luZyByZWR1bmRhbnQgc3luY3MKCQkvLyBiZWNhdXNlIFNGIHN0b3JlcyBhbGwgRGF0ZVRpbWVzIGluIFVUQy4KCQkkbWFwcGluZ19vYmplY3RbJ29iamVjdF91cGRhdGVkJ10gPSBjdXJyZW50X3RpbWUoICdteXNxbCcgKTsKCgkJJHB1bGxfdHJpZ2dlcl9maWVsZCA9ICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3B1bGxfdHJpZ2dlcl9maWVsZCddOwoJCSRwdWxsX3RyaWdnZXJfdmFsdWUgPSAkb2JqZWN0WyAkcHVsbF90cmlnZ2VyX2ZpZWxkIF07CgoJCS8vIGhvb2sgdG8gYWxsb3cgb3RoZXIgcGx1Z2lucyB0byBkbyBzb21ldGhpbmcgcmlnaHQgYmVmb3JlIFdvcmRQcmVzcyBkYXRhIGlzIHNhdmVkCgkJLy8gZXg6IHJ1biBvdXRzaWRlIG1ldGhvZHMgb24gYW4gb2JqZWN0IGlmIGl0IGV4aXN0cywgb3IgZG8gc29tZXRoaW5nIGluIHByZXBhcmF0aW9uIGZvciBpdCBpZiBpdCBkb2Vzbid0LgoJCWRvX2FjdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAncHJlX3B1bGwnLCAkbWFwcGluZ19vYmplY3RbJ3dvcmRwcmVzc19pZCddLCAkc2FsZXNmb3JjZV9tYXBwaW5nLCAkb2JqZWN0LCAkd29yZHByZXNzX2lkX2ZpZWxkX25hbWUsICRwYXJhbXMgKTsKCgkJLy8gdHJ5IHRvIHVwZGF0ZSBhIFdvcmRQcmVzcyByZWNvcmQuCgkJdHJ5IHsKCQkJJG9wICAgICA9ICdVcGRhdGUnOwoJCQkkcmVzdWx0ID0gJHRoaXMtPndvcmRwcmVzcy0+b2JqZWN0X3VwZGF0ZSggJHNhbGVzZm9yY2VfbWFwcGluZ1snd29yZHByZXNzX29iamVjdCddLCAkbWFwcGluZ19vYmplY3RbJ3dvcmRwcmVzc19pZCddLCAkcGFyYW1zLCAkbWFwcGluZ19vYmplY3QgKTsKCQl9IGNhdGNoICggT2JqZWN0X1N5bmNfU2ZfRXhjZXB0aW9uICRlICkgewoJCQkkcmVzdWx0WydlcnJvcnMnXSA9ICRlLT5nZXRNZXNzYWdlKCk7CgkJfSAvLyBFbmQgdHJ5KCkgbWV0aG9kIGZvciB1cGRhdGUuCgoJCS8vIFdvcmRQcmVzcyB1cGRhdGUgY2FsbCBoYXMgZmluaXNoZWQgcnVubmluZwoJCS8vIElmIGl0IHdhcyBzdWNjZXNzZnVsLCB0aGUgb2JqZWN0IGhhcyBhbHJlYWR5IGJlZW4gdXBkYXRlZCBpbiBXb3JkUHJlc3MKCQkvLyB0aGlzIGlzIHdoZXJlIGl0IHVwZGF0ZXMgdGhlIG9iamVjdCBtYXBwaW5nIHJvd3MgYW5kIGxvZyBlbnRyaWVzIGluIFdvcmRQcmVzcwoJCS8vIHRoaXMgaXMgYWxzbyB3aGVyZSBpdCBydW5zIHB1bGxfc3VjY2VzcyBhbmQgcHVsbF9mYWlsIGFjdGlvbnMgaG9va3MuCgoJCWlmICggISBpc3NldCggJHJlc3VsdFsnZXJyb3JzJ10gKSB8fCBlbXB0eSggJHJlc3VsdFsnZXJyb3JzJ10gKSApIHsKCQkJLy8gc2V0IHVwIHRoZSBsb2cgZW50cnkgZm9yIHN1Y2Nlc3NmdWwgdXBkYXRlLgoJCQkkc3RhdHVzID0gJ3N1Y2Nlc3MnOwoJCQkkdGl0bGUgID0gc3ByaW50ZigKCQkJCS8vIHRyYW5zbGF0b3JzOiBwbGFjZWhvbGRlcnMgYXJlOiAxKSB0aGUgbG9nIHN0YXR1cywgMikgd2hhdCBvcGVyYXRpb24gaXMgaGFwcGVuaW5nLCAzKSB0aGUgbmFtZSBvZiB0aGUgV29yZFByZXNzIG9iamVjdCB0eXBlLCA0KSB0aGUgV29yZFByZXNzIGlkIGZpZWxkIG5hbWUsIDUpIHRoZSBXb3JkUHJlc3Mgb2JqZWN0IGlkIHZhbHVlLCA2KSB0aGUgbmFtZSBvZiB0aGUgU2FsZXNmb3JjZSBvYmplY3QsIDcpIHRoZSBTYWxlc2ZvcmNlIElkIHZhbHVlLgoJCQkJZXNjX2h0bWxfXyggJyUxJHM6ICUyJHMgV29yZFByZXNzICUzJHMgd2l0aCAlNCRzIG9mICU1JHMgKFNhbGVzZm9yY2UgJTYkcyBJZCBvZiAlNyRzKScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCXVjZmlyc3QoIGVzY19hdHRyKCAkc3RhdHVzICkgKSwKCQkJCWVzY19hdHRyKCAkb3AgKSwKCQkJCWVzY19hdHRyKCAkc2FsZXNmb3JjZV9tYXBwaW5nWyd3b3JkcHJlc3Nfb2JqZWN0J10gKSwKCQkJCWVzY19hdHRyKCAkd29yZHByZXNzX2lkX2ZpZWxkX25hbWUgKSwKCQkJCWVzY19hdHRyKCAkbWFwcGluZ19vYmplY3RbJ3dvcmRwcmVzc19pZCddICksCgkJCQllc2NfYXR0ciggJHNhbGVzZm9yY2VfbWFwcGluZ1snc2FsZXNmb3JjZV9vYmplY3QnXSApLAoJCQkJZXNjX2F0dHIoICRvYmplY3RbJ0lkJ10gKQoJCQkpOwoJCQkkcmVzdWx0ID0gYXJyYXkoCgkJCQkndGl0bGUnICAgPT4gJHRpdGxlLAoJCQkJJ21lc3NhZ2UnID0+IGlzX3N0cmluZyggJHJlc3VsdFsnZXJyb3JzJ10gKSA/IGVzY19odG1sKCAkcmVzdWx0WydlcnJvcnMnXSApIDogJycsCgkJCQkndHJpZ2dlcicgPT4gJHNmX3N5bmNfdHJpZ2dlciwKCQkJCSdwYXJlbnQnICA9PiAkbWFwcGluZ19vYmplY3RbJ3dvcmRwcmVzc19pZCddLAoJCQkJJ3N0YXR1cycgID0+ICRzdGF0dXMsCgkJCSk7CgoJCQkvLyBzZXQgdXAgdGhlIG1hcHBpbmcgb2JqZWN0IGZvciBzdWNjZXNzZnVsIHVwZGF0ZS4KCQkJJG1hcHBpbmdfb2JqZWN0WydsYXN0X3N5bmNfc3RhdHVzJ10gID0gJHRoaXMtPm1hcHBpbmdzLT5zdGF0dXNfc3VjY2VzczsKCQkJJG1hcHBpbmdfb2JqZWN0WydsYXN0X3N5bmNfbWVzc2FnZSddID0gZXNjX2h0bWxfXyggJ01hcHBpbmcgb2JqZWN0IHVwZGF0ZWQgdmlhIGZ1bmN0aW9uOiAnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgLiBfX0ZVTkNUSU9OX187CgoJCQkvLyBob29rIGZvciBwdWxsIHN1Y2Nlc3MuCgkJCWRvX2FjdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAncHVsbF9zdWNjZXNzJywgJG9wLCAkcmVzdWx0LCAkc3luY2VkX29iamVjdCApOwoJCX0gZWxzZSB7CgoJCQkvLyBzZXQgdXAgdGhlIGxvZyBlbnRyeSBmb3IgYSBmYWlsZWQgdXBkYXRlLgoJCQkkc3RhdHVzID0gJ2Vycm9yJzsKCQkJJHRpdGxlICA9IHNwcmludGYoCgkJCQkvLyB0cmFuc2xhdG9yczogcGxhY2Vob2xkZXJzIGFyZTogMSkgdGhlIGxvZyBzdGF0dXMsIDIpIHdoYXQgb3BlcmF0aW9uIGlzIGhhcHBlbmluZywgMykgdGhlIG5hbWUgb2YgdGhlIFdvcmRQcmVzcyBvYmplY3QsIDQpIHRoZSBXb3JkUHJlc3MgaWQgZmllbGQgbmFtZSwgNSkgdGhlIFdvcmRQcmVzcyBvYmplY3QgaWQgdmFsdWUsIDYpIHRoZSBuYW1lIG9mIHRoZSBTYWxlc2ZvcmNlIG9iamVjdCwgNykgdGhlIFNhbGVzZm9yY2UgSWQgdmFsdWUuCgkJCQllc2NfaHRtbF9fKCAnJTEkczogJTIkcyBXb3JkUHJlc3MgJTMkcyB3aXRoICU0JHMgb2YgJTUkcyAoU2FsZXNmb3JjZSAlNiRzIHdpdGggSWQgb2YgJTckcyknLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQl1Y2ZpcnN0KCBlc2NfYXR0ciggJHN0YXR1cyApICksCgkJCQllc2NfYXR0ciggJG9wICksCgkJCQllc2NfYXR0ciggJHNhbGVzZm9yY2VfbWFwcGluZ1snd29yZHByZXNzX29iamVjdCddICksCgkJCQllc2NfYXR0ciggJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lICksCgkJCQllc2NfYXR0ciggJG1hcHBpbmdfb2JqZWN0Wyd3b3JkcHJlc3NfaWQnXSApLAoJCQkJZXNjX2F0dHIoICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKSwKCQkJCWVzY19hdHRyKCAkb2JqZWN0WydJZCddICkKCQkJKTsKCgkJCS8vIHNldCB1cCBlcnJvciBtZXNzYWdlLgoJCQkkZGVmYXVsdF9tZXNzYWdlID0gZXNjX2h0bWxfXyggJ0FuIGVycm9yIG9jY3VycmVkIHB1bGxpbmcgdGhpcyBkYXRhIGZyb20gU2FsZXNmb3JjZS4gU2VlIHRoZSBwbHVnaW4gbG9ncy4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICk7CgkJCSRtZXNzYWdlICAgICAgICAgPSAkdGhpcy0+cGFyc2VfZXJyb3JfbWVzc2FnZSggJHJlc3VsdCwgJGRlZmF1bHRfbWVzc2FnZSApOwoKCQkJJHJlc3VsdCA9IGFycmF5KAoJCQkJJ3RpdGxlJyAgID0+ICR0aXRsZSwKCQkJCSdtZXNzYWdlJyA9PiAkbWVzc2FnZSwKCQkJCSd0cmlnZ2VyJyA9PiAkc2Zfc3luY190cmlnZ2VyLAoJCQkJJ3BhcmVudCcgID0+ICRtYXBwaW5nX29iamVjdFsnd29yZHByZXNzX2lkJ10sCgkJCQknc3RhdHVzJyAgPT4gJHN0YXR1cywKCQkJKTsKCgkJCS8vIHNldCB1cCB0aGUgbWFwcGluZyBvYmplY3QgZm9yIGFuIGVycm9yLgoJCQkkbWFwcGluZ19vYmplY3RbJ2xhc3Rfc3luY19zdGF0dXMnXSAgPSAkdGhpcy0+bWFwcGluZ3MtPnN0YXR1c19lcnJvcjsKCQkJJG1hcHBpbmdfb2JqZWN0WydsYXN0X3N5bmNfbWVzc2FnZSddID0gc3Vic3RyKCAkbWVzc2FnZSwgMCwgMjU1ICk7CgoJCQkvLyBob29rIGZvciBwdWxsIGZhaWwuCgkJCWRvX2FjdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAncHVsbF9mYWlsJywgJG9wLCAkcmVzdWx0LCAkc3luY2VkX29iamVjdCApOwoJCX0gLy8gZW5kIGlmIHN0YXRlbWVudCBjaGVja2luZyBmb3IgZXJyb3JzLgoKCQkvLyBzYXZlIHRoZSBsb2cgZW50cnkuCgkJJHRoaXMtPmxvZ2dpbmctPnNldHVwKCAkcmVzdWx0ICk7CgkJJHJlc3VsdHNbXSA9ICRyZXN1bHQ7CgoJCS8vIHVwZGF0ZSB0aGUgbWFwcGluZyBvYmplY3QuCgkJJG1hcHBpbmdfb2JqZWN0WydsYXN0X3N5bmNfYWN0aW9uJ10gPSAncHVsbCc7CgkJJG1hcHBpbmdfb2JqZWN0WydsYXN0X3N5bmMnXSAgICAgICAgPSBjdXJyZW50X3RpbWUoICdteXNxbCcgKTsKCQkkbWFwcGluZ19vYmplY3QgICAgICAgICAgICAgICAgICAgICA9ICR0aGlzLT5tYXBwaW5ncy0+dXBkYXRlX29iamVjdF9tYXAoICRtYXBwaW5nX29iamVjdCwgJG1hcHBpbmdfb2JqZWN0WydpZCddICk7CgoJCXJldHVybiAkcmVzdWx0czsKCgl9CgoJLyoqCgkgKiBEZWxldGUgcmVjb3JkcyBpbiBXb3JkUHJlc3MgZnJvbSBhIFNhbGVzZm9yY2UgcHVsbAoJICoKCSAqIEBwYXJhbSBzdHJpbmcgJHNmX3N5bmNfdHJpZ2dlciBUaGUgY3VycmVudCBvcGVyYXRpb24ncyB0cmlnZ2VyLgoJICogQHBhcmFtIGFycmF5ICAkc3luY2VkX29iamVjdCBDb21iaW5lZCBkYXRhIGZvciBmaWVsZG1hcCwgbWFwcGluZyBvYmplY3QsIGFuZCBTYWxlc2ZvcmNlIG9iamVjdCBkYXRhLgoJICogQHBhcmFtIHN0cmluZyAkd29yZHByZXNzX2lkX2ZpZWxkX25hbWUgVGhlIG5hbWUgb2YgdGhlIElEIGZpZWxkIGZvciB0aGlzIHBhcnRpY3VsYXIgV29yZFByZXNzIG9iamVjdCB0eXBlLgoJICogQHBhcmFtIGludCAgICAkc2Vjb25kcyBUaW1lb3V0IGZvciB0aGUgdHJhbnNpZW50IHZhbHVlIHRvIGRldGVybWluZSB0aGUgZGlyZWN0aW9uIGZvciBhIHN5bmMuCgkgKiBAcGFyYW0gYXJyYXkgICRtYXBwaW5nX29iamVjdHMgVGhlIGRhdGEgZm9yIHRoZSBtYXBwaW5nIG9iamVjdHMgYmV0d2VlbiB0aGUgaW5kaXZpZHVhbCBTYWxlc2ZvcmNlIGFuZCBXb3JkUHJlc3MgaXRlbXMuIFdlIG9ubHkgcGFzcyB0aGlzIGJlY2F1c2Ugb2YgdGhlIG5lZWQgdG8gY291bnQgYmVmb3JlIGRlbGV0aW5nIHJlY29yZHMuCgkgKiBAcmV0dXJuIGFycmF5ICRyZXN1bHRzIEN1cnJlbnRseSB0aGlzIGNvbnRhaW5zIGFuIGFycmF5IG9mIGxvZyBlbnRyaWVzIGZvciBlYWNoIGF0dGVtcHQuCgkgKiBAdGhyb3dzIE9iamVjdF9TeW5jX1NmX0V4Y2VwdGlvbiBFeGNlcHRpb24gJGUuCgkgKi8KCXByaXZhdGUgZnVuY3Rpb24gZGVsZXRlX2NhbGxlZF9mcm9tX3NhbGVzZm9yY2UoICRzZl9zeW5jX3RyaWdnZXIsICRzeW5jZWRfb2JqZWN0LCAkd29yZHByZXNzX2lkX2ZpZWxkX25hbWUsICRzZWNvbmRzLCAkbWFwcGluZ19vYmplY3RzICkgewoKCQkkc2FsZXNmb3JjZV9tYXBwaW5nID0gJHN5bmNlZF9vYmplY3RbJ21hcHBpbmcnXTsKCQkkbWFwcGluZ19vYmplY3QgICAgID0gJHN5bmNlZF9vYmplY3RbJ21hcHBpbmdfb2JqZWN0J107CgoJCS8vIG1ldGhvZHMgdG8gcnVuIHRoZSB3cCBkZWxldGUgb3BlcmF0aW9ucy4KCQkkcmVzdWx0cyA9IGFycmF5KCk7CgkJJG9wICAgICAgPSAnJzsKCgkJLy8gZGVsZXRpbmcgbWFwcGVkIG9iamVjdHMuCgkJaWYgKCAkc2Zfc3luY190cmlnZ2VyID09PSAkdGhpcy0+bWFwcGluZ3MtPnN5bmNfc2ZfZGVsZXRlICkgeyAvLyB0cmlnZ2VyIGlzIGEgYml0IG9wZXJhdG9yLgoJCQlpZiAoIGlzc2V0KCAkbWFwcGluZ19vYmplY3RbJ2lkJ10gKSApIHsKCgkJCQkkb3AgPSAnRGVsZXRlJzsKCgkJCQkvLyBvbmx5IGRlbGV0ZSBpZiB0aGVyZSBhcmUgbm8gYWRkaXRpb25hbCBtYXBwaW5nIG9iamVjdHMgZm9yIHRoaXMgcmVjb3JkLgoJCQkJaWYgKCAxID09PSBjb3VudCggJG1hcHBpbmdfb2JqZWN0cyApICkgewoKCQkJCQkkdGhpcy0+c3luY190cmFuc2llbnRzLT5zZXQoICdzYWxlc2ZvcmNlX3B1bGxpbmdfJyAuICRtYXBwaW5nX29iamVjdFsnc2FsZXNmb3JjZV9pZCddLCAnJywgJHNhbGVzZm9yY2VfbWFwcGluZ1snaWQnXSwgMSwgJHNlY29uZHMgKTsKCQkJCQkkdGhpcy0+c3luY190cmFuc2llbnRzLT5zZXQoICdzYWxlc2ZvcmNlX3B1bGxpbmdfb2JqZWN0X2lkJywgJycsICRzYWxlc2ZvcmNlX21hcHBpbmdbJ2lkJ10sICRtYXBwaW5nX29iamVjdFsnc2FsZXNmb3JjZV9pZCddICk7CgoJCQkJCXRyeSB7CgkJCQkJCSRyZXN1bHQgPSAkdGhpcy0+d29yZHByZXNzLT5vYmplY3RfZGVsZXRlKCAkc2FsZXNmb3JjZV9tYXBwaW5nWyd3b3JkcHJlc3Nfb2JqZWN0J10sICRtYXBwaW5nX29iamVjdFsnd29yZHByZXNzX2lkJ10gKTsKCQkJCQl9IGNhdGNoICggT2JqZWN0X1N5bmNfU2ZfRXhjZXB0aW9uICRlICkgewoJCQkJCQkkcmVzdWx0WydlcnJvcnMnXSA9ICRlLT5nZXRNZXNzYWdlKCk7CgkJCQkJfSAvLyBFbmQgdHJ5KCkgbWV0aG9kLgoKCQkJCQlpZiAoICEgaXNzZXQoICRyZXN1bHRbJ2Vycm9ycyddICkgfHwgZW1wdHkoICRyZXN1bHRbJ2Vycm9ycyddICkgKSB7CgkJCQkJCS8vIHNldCB1cCB0aGUgbG9nIGVudHJ5IGZvciBzdWNjZXNzZnVsIGRlbGV0ZS4KCQkJCQkJJHN0YXR1cyA9ICdzdWNjZXNzJzsKCQkJCQkJJHRpdGxlICA9IHNwcmludGYoCgkJCQkJCQkvLyB0cmFuc2xhdG9yczogcGxhY2Vob2xkZXJzIGFyZTogMSkgdGhlIGxvZyBzdGF0dXMsIDIpIHdoYXQgb3BlcmF0aW9uIGlzIGhhcHBlbmluZywgMykgdGhlIG5hbWUgb2YgdGhlIFdvcmRQcmVzcyBvYmplY3QgdHlwZSwgNCkgdGhlIFdvcmRQcmVzcyBpZCBmaWVsZCBuYW1lLCA1KSB0aGUgV29yZFByZXNzIG9iamVjdCBpZCB2YWx1ZSwgNikgdGhlIG5hbWUgb2YgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0LCA3KSB0aGUgU2FsZXNmb3JjZSBJZCB2YWx1ZS4KCQkJCQkJCWVzY19odG1sX18oICclMSRzOiAlMiRzIFdvcmRQcmVzcyAlMyRzIHdpdGggJTQkcyBvZiAlNSRzICglNiRzICU3JHMpJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQkJdWNmaXJzdCggZXNjX2F0dHIoICRzdGF0dXMgKSApLAoJCQkJCQkJZXNjX2F0dHIoICRvcCApLAoJCQkJCQkJZXNjX2F0dHIoICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3dvcmRwcmVzc19vYmplY3QnXSApLAoJCQkJCQkJZXNjX2F0dHIoICR3b3JkcHJlc3NfaWRfZmllbGRfbmFtZSApLAoJCQkJCQkJZXNjX2F0dHIoICRtYXBwaW5nX29iamVjdFsnd29yZHByZXNzX2lkJ10gKSwKCQkJCQkJCWVzY19hdHRyKCAkc2FsZXNmb3JjZV9tYXBwaW5nWydzYWxlc2ZvcmNlX29iamVjdCddICksCgkJCQkJCQllc2NfYXR0ciggJG1hcHBpbmdfb2JqZWN0WydzYWxlc2ZvcmNlX2lkJ10gKQoJCQkJCQkpOwoJCQkJCQkkcmVzdWx0ID0gYXJyYXkoCgkJCQkJCQkndGl0bGUnICAgPT4gJHRpdGxlLAoJCQkJCQkJJ21lc3NhZ2UnID0+ICcnLAoJCQkJCQkJJ3RyaWdnZXInID0+ICRzZl9zeW5jX3RyaWdnZXIsCgkJCQkJCQkncGFyZW50JyAgPT4gJG1hcHBpbmdfb2JqZWN0Wyd3b3JkcHJlc3NfaWQnXSwKCQkJCQkJCSdzdGF0dXMnICA9PiAkc3RhdHVzLAoJCQkJCQkpOwoKCQkJCQkJLy8gaG9vayBmb3IgcHVsbCBzdWNjZXNzLgoJCQkJCQlkb19hY3Rpb24oICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ3B1bGxfc3VjY2VzcycsICRvcCwgJHJlc3VsdCwgJHN5bmNlZF9vYmplY3QgKTsKCQkJCQl9IGVsc2UgewoJCQkJCQkkc3RhdHVzID0gJ2Vycm9yJzsKCQkJCQkJLy8gY3JlYXRlIGxvZyBlbnRyeSBmb3IgZmFpbGVkIGRlbGV0ZS4KCQkJCQkJJHRpdGxlID0gc3ByaW50ZigKCQkJCQkJCS8vIHRyYW5zbGF0b3JzOiBwbGFjZWhvbGRlcnMgYXJlOiAxKSB0aGUgbG9nIHN0YXR1cywgMikgd2hhdCBvcGVyYXRpb24gaXMgaGFwcGVuaW5nLCAzKSB0aGUgbmFtZSBvZiB0aGUgV29yZFByZXNzIG9iamVjdCB0eXBlLCA0KSB0aGUgV29yZFByZXNzIGlkIGZpZWxkIG5hbWUsIDUpIHRoZSBXb3JkUHJlc3Mgb2JqZWN0IGlkIHZhbHVlLCA2KSB0aGUgbmFtZSBvZiB0aGUgU2FsZXNmb3JjZSBvYmplY3QsIDcpIHRoZSBTYWxlc2ZvcmNlIElkIHZhbHVlLgoJCQkJCQkJZXNjX2h0bWxfXyggJyUxJHM6ICUyJHMgV29yZFByZXNzICUzJHMgd2l0aCAlNCRzIG9mICU1JHMgKCU2JHMgJTckcyknLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQl1Y2ZpcnN0KCBlc2NfYXR0ciggJHN0YXR1cyApICksCgkJCQkJCQllc2NfYXR0ciggJG9wICksCgkJCQkJCQllc2NfYXR0ciggJHNhbGVzZm9yY2VfbWFwcGluZ1snd29yZHByZXNzX29iamVjdCddICksCgkJCQkJCQllc2NfYXR0ciggJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lICksCgkJCQkJCQllc2NfYXR0ciggJG1hcHBpbmdfb2JqZWN0Wyd3b3JkcHJlc3NfaWQnXSApLAoJCQkJCQkJZXNjX2F0dHIoICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKSwKCQkJCQkJCWVzY19hdHRyKCAkbWFwcGluZ19vYmplY3RbJ3NhbGVzZm9yY2VfaWQnXSApCgkJCQkJCSk7CgoJCQkJCQkvLyBzZXQgdXAgZXJyb3IgbWVzc2FnZS4KCQkJCQkJJGRlZmF1bHRfbWVzc2FnZSA9IGVzY19odG1sX18oICdBbiBlcnJvciBvY2N1cnJlZCBwdWxsaW5nIHRoaXMgZGF0YSBmcm9tIFNhbGVzZm9yY2UuIFNlZSB0aGUgcGx1Z2luIGxvZ3MuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApOwoJCQkJCQkkbWVzc2FnZSAgICAgICAgID0gJHRoaXMtPnBhcnNlX2Vycm9yX21lc3NhZ2UoICRyZXN1bHQsICRkZWZhdWx0X21lc3NhZ2UgKTsKCgkJCQkJCSRyZXN1bHQgPSBhcnJheSgKCQkJCQkJCSd0aXRsZScgICA9PiAkdGl0bGUsCgkJCQkJCQknbWVzc2FnZScgPT4gJG1lc3NhZ2UsCgkJCQkJCQkndHJpZ2dlcicgPT4gJHNmX3N5bmNfdHJpZ2dlciwKCQkJCQkJCSdwYXJlbnQnICA9PiAkbWFwcGluZ19vYmplY3RbJ3dvcmRwcmVzc19pZCddLAoJCQkJCQkJJ3N0YXR1cycgID0+ICRzdGF0dXMsCgkJCQkJCSk7CgoJCQkJCQkvLyBob29rIGZvciBwdWxsIGZhaWwuCgkJCQkJCWRvX2FjdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAncHVsbF9mYWlsJywgJG9wLCAkcmVzdWx0LCAkc3luY2VkX29iamVjdCApOwoJCQkJCX0gLy8gZW5kIGlmIHN0YXRlbWVudCBjaGVja2luZyBmb3IgZXJyb3JzLgoKCQkJCQkvLyBzYXZlIHRoZSBsb2cgZW50cnkuCgkJCQkJJHRoaXMtPmxvZ2dpbmctPnNldHVwKCAkcmVzdWx0ICk7CgkJCQkJJHJlc3VsdHNbXSA9ICRyZXN1bHQ7CgkJCQl9IGVsc2UgewoJCQkJCS8vIGNyZWF0ZSBsb2cgZW50cnkgZm9yIGFkZGl0aW9uYWwgbWFwcGVkIGl0ZW1zLgoJCQkJCSRtb3JlX2lkcyA9IHNwcmludGYoCgkJCQkJCS8vIHRyYW5zbGF0b3JzOiBwYXJhbWV0ZXIgaXMgdGhlIG5hbWUgb2YgdGhlIFdvcmRQcmVzcyBpZCBmaWVsZCBuYW1lLgoJCQkJCQknPHA+JyAuIGVzY19odG1sX18oICdUaGUgV29yZFByZXNzIHJlY29yZCB3YXMgbm90IGRlbGV0ZWQgYmVjYXVzZSB0aGVyZSBhcmUgbXVsdGlwbGUgU2FsZXNmb3JjZSBJRHMgdGhhdCBtYXRjaCB0aGlzIFdvcmRQcmVzcyAlMSRzLikgVGhleSBhcmU6JywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApIC4gJzwvcD4nLAoJCQkJCQllc2NfYXR0ciggJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lICkKCQkJCQkpOwoKCQkJCQkkbW9yZV9pZHMgLj0gJzx1bD4nOwoJCQkJCWZvcmVhY2ggKCAkbWFwcGluZ19vYmplY3RzIGFzICRtYXRjaCApIHsKCQkJCQkJJG1vcmVfaWRzIC49ICc8bGk+JyAuICRtYXRjaFsnc2FsZXNmb3JjZV9pZCddIC4gJzwvbGk+JzsKCQkJCQl9CgkJCQkJJG1vcmVfaWRzIC49ICc8L3VsPic7CgoJCQkJCSRtb3JlX2lkcyAuPSAnPHA+JyAuIGVzY19odG1sX18oICdUaGUgbWFwIHJvdyBiZXR3ZWVuIHRoaXMgU2FsZXNmb3JjZSBvYmplY3QgYW5kIHRoZSBXb3JkUHJlc3Mgb2JqZWN0LCBhcyBzdG9yZWQgaW4gdGhlIFdvcmRQcmVzcyBkYXRhYmFzZSwgd2lsbCBiZSBkZWxldGVkLCBhbmQgdGhpcyBTYWxlc2ZvcmNlIG9iamVjdCBoYXMgYmVlbiBkZWxldGVkLCBidXQgV29yZFByZXNzIG9iamVjdCBkYXRhIHdpbGwgcmVtYWluIHVudG91Y2hlZC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgLiAnPC9wPic7CgoJCQkJCSRzdGF0dXMgPSAnbm90aWNlJzsKCQkJCQkkdGl0bGUgID0gc3ByaW50ZigKCQkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBvcGVyYXRpb24gdGhhdCBpcyBoYXBwZW5pbmcsIDIpIHRoZSBuYW1lIG9mIHRoZSBXb3JkUHJlc3Mgb2JqZWN0IHR5cGUsIDMpIHRoZSBXb3JkUHJlc3MgaWQgZmllbGQgbmFtZSwgNCkgdGhlIFdvcmRQcmVzcyBvYmplY3QgaWQgdmFsdWUsIDUpIHRoZSBuYW1lIG9mIHRoZSBTYWxlc2ZvcmNlIG9iamVjdCB0eXBlLCA2KSB0aGUgU2FsZXNmb3JjZSBJZC4KCQkJCQkJZXNjX2h0bWxfXyggJyUxJHM6ICUyJHMgb24gV29yZFByZXNzICUzJHMgd2l0aCAlNCRzIG9mICU1JHMgd2FzIHN0b3BwZWQgYmVjYXVzZSB0aGVyZSBhcmUgb3RoZXIgV29yZFByZXNzIHJlY29yZHMgbWFwcGVkIHRvIFNhbGVzZm9yY2UgJTYkcyBvZiAlNyRzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQl1Y2ZpcnN0KCBlc2NfYXR0ciggJHN0YXR1cyApICksCgkJCQkJCWVzY19hdHRyKCAkb3AgKSwKCQkJCQkJZXNjX2F0dHIoICRzYWxlc2ZvcmNlX21hcHBpbmdbJ3dvcmRwcmVzc19vYmplY3QnXSApLAoJCQkJCQllc2NfYXR0ciggJHdvcmRwcmVzc19pZF9maWVsZF9uYW1lICksCgkJCQkJCWVzY19hdHRyKCAkbWFwcGluZ19vYmplY3RbJ3dvcmRwcmVzc19pZCddICksCgkJCQkJCWVzY19hdHRyKCAkc2FsZXNmb3JjZV9tYXBwaW5nWydzYWxlc2ZvcmNlX29iamVjdCddICksCgkJCQkJCWVzY19hdHRyKCAkbWFwcGluZ19vYmplY3RbJ3NhbGVzZm9yY2VfaWQnXSApCgkJCQkJKTsKCQkJCQkkbm90aWNlID0gYXJyYXkoCgkJCQkJCSd0aXRsZScgICA9PiAkdGl0bGUsCgkJCQkJCSdtZXNzYWdlJyA9PiAkbW9yZV9pZHMsCgkJCQkJCSd0cmlnZ2VyJyA9PiAkc2Zfc3luY190cmlnZ2VyLAoJCQkJCQkncGFyZW50JyAgPT4gMCwKCQkJCQkJJ3N0YXR1cycgID0+ICRzdGF0dXMsCgkJCQkJKTsKCQkJCQkkdGhpcy0+bG9nZ2luZy0+c2V0dXAoICRub3RpY2UgKTsKCQkJCX0gLy8gRW5kIGlmKCkgb24gY291bnQKCQkJCS8vIGRlbGV0ZSB0aGUgbWFwIHJvdyBmcm9tIFdvcmRQcmVzcyBhZnRlciB0aGUgV29yZFByZXNzIHJvdyBoYXMgYmVlbiBkZWxldGVkCgkJCQkvLyB3ZSBkZWxldGUgdGhlIG1hcCByb3cgZXZlbiBpZiB0aGUgV29yZFByZXNzIGRlbGV0ZSBmYWlsZWQsIGJlY2F1c2UgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0IGlzIGdvbmUuCgkJCQkkdGhpcy0+bWFwcGluZ3MtPmRlbGV0ZV9vYmplY3RfbWFwKCAkbWFwcGluZ19vYmplY3RbJ2lkJ10gKTsKCQkJCS8vIHRoZXJlIGlzIG5vIG1hcCByb3cgaWYgd2UgZW5kIHRoaXMgaWYgc3RhdGVtZW50LgoJCQl9IC8vIEVuZCBpZigpIHN0YXRlbWVudC4KCQl9IC8vIEVuZCBpZigpIHN0YXRlbWVudC4KCgkJcmV0dXJuICRyZXN1bHRzOwoKCX0KCgkvKioKCSAqIEZvcm1hdCB0aGUgZXJyb3IgbWVzc2FnZQoJICoKCSAqIEBwYXJhbSBhcnJheSAgJHJlc3VsdCBmcm9tIHRoZSBXb3JkUHJlc3MgY2xhc3MuCgkgKiBAcGFyYW0gc3RyaW5nICRkZWZhdWx0X21lc3NhZ2UgaWYgdGhlcmUgaXMgb25lLgoJICogQHJldHVybiBzdHJpbmcgJG1lc3NhZ2Ugd2hhdCBpcyBnZXR0aW5nIHN0b3JlZC4KCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBwYXJzZV9lcnJvcl9tZXNzYWdlKCAkcmVzdWx0LCAkZGVmYXVsdF9tZXNzYWdlID0gJycgKSB7CgkJJG1lc3NhZ2UgPSAkZGVmYXVsdF9tZXNzYWdlOwoJCSRlcnJvcnMgID0gJHJlc3VsdFsnZXJyb3JzJ107CgkJLy8gdHJ5IHRvIHJldHJpZXZlIGEgdXNhYmxlIGVycm9yIG1lc3NhZ2UgdG8gc2F2ZS4KCQlpZiAoIGlzX3N0cmluZyggJGVycm9ycyApICkgewoJCQkkbWVzc2FnZSA9ICRlcnJvcnM7CgkJfSBlbHNlIHsKCQkJaWYgKCBpc193cF9lcnJvciggJGVycm9ycyApICkgewoJCQkJJG1lc3NhZ2UgPSAkZXJyb3JzLT5nZXRfZXJyb3JfbWVzc2FnZSgpOwoJCQl9IGVsc2UgewoJCQkJJG1lc3NhZ2UgPSBwcmludF9yKCAkZXJyb3JzLCB0cnVlICk7IC8vIHBocGNzOmlnbm9yZSBXb3JkUHJlc3MuUEhQLkRldmVsb3BtZW50RnVuY3Rpb25zLmVycm9yX2xvZ19wcmludF9yCgkJCX0KCQl9CgkJJG1lc3NhZ2UgPSB3cF9rc2VzX3Bvc3QoICRtZXNzYWdlICk7CgkJcmV0dXJuICRtZXNzYWdlOwoJfQoKCS8qKgoJICogQ2xlYXIgdGhlIGN1cnJlbnRseSBzdG9yZWQgcXVlcnkgZm9yIHRoZSBzcGVjaWZpZWQgY29udGVudCB0eXBlCgkgKgoJICogQHBhcmFtIHN0cmluZyAkdHlwZSBlLmcuICJDb250YWN0IiwgIkFjY291bnQiLCBldGMuCgkgKiBAcGFyYW0gaW50ICAgICRmaWVsZG1hcF9pZCBpcyB0aGUgZmllbGRtYXAgSUQgdGhhdCBnb2VzIHdpdGggdGhpcyBxdWVyeS4KCSAqLwoJcHVibGljIGZ1bmN0aW9uIGNsZWFyX2N1cnJlbnRfdHlwZV9xdWVyeSggJHR5cGUsICRmaWVsZG1hcF9pZCA9ICcnICkgewoJCS8vIHVwZGF0ZSB0aGUgbGFzdCBzeW5jIHRpbWVzdGFtcCBmb3IgdGhpcyBjb250ZW50IHR5cGUuCgkJJHRoaXMtPmluY3JlbWVudF9jdXJyZW50X3R5cGVfZGF0ZXRpbWUoICR0eXBlLCAnJywgJGZpZWxkbWFwX2lkICk7CgkJLy8gZGVsZXRlIHRoZSBvcHRpb24gdmFsdWUgZm9yIHRoZSBjdXJyZW50bHkgcHVsbGluZyBxdWVyeSBmb3IgdGhpcyB0eXBlLgoJCSR0aGlzLT5wdWxsX29wdGlvbnMtPmRlbGV0ZSggJ2N1cnJlbnRfcXVlcnknLCAkdHlwZSwgJGZpZWxkbWFwX2lkICk7CgkJLy8gZGVsZXRlIHRoZSBvcHRpb24gdmFsdWUgZm9yIHRoZSBsYXN0IHB1bGwgcmVjb3JkIGlkLgoJCSR0aGlzLT5wdWxsX29wdGlvbnMtPmRlbGV0ZSggJ2xhc3RfaWQnLCAnJywgJGZpZWxkbWFwX2lkICk7Cgl9CgoJLyoqCgkgKiBJbmNyZW1lbnQgdGhlIGN1cnJlbnRseSBydW5uaW5nIHF1ZXJ5J3MgZGF0ZXRpbWUKCSAqCgkgKiBAcGFyYW0gc3RyaW5nICAgICR0eXBlIGUuZy4gIkNvbnRhY3QiLCAiQWNjb3VudCIsIGV0Yy4KCSAqIEBwYXJhbSB0aW1lc3RhbXAgJG5leHRfcXVlcnlfbW9kaWZpZWRfZGF0ZSB0aGUgbGFzdCByZWNvcmQncyBtb2RpZmllZCBkYXRldGltZSwgb3IgdGhlIGN1cnJlbnQgdGltZSBpZiB0aGVyZSBpc24ndCBvbmUuCgkgKiBAcGFyYW0gaW50ICAgICAgICRmaWVsZG1hcF9pZCBpcyB0aGUgZmllbGRtYXAgSUQgdGhhdCBnb2VzIHdpdGggdGhpcyBxdWVyeS4KCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBpbmNyZW1lbnRfY3VycmVudF90eXBlX2RhdGV0aW1lKCAkdHlwZSwgJG5leHRfcXVlcnlfbW9kaWZpZWRfZGF0ZSA9ICcnLCAkZmllbGRtYXBfaWQgPSAnJyApIHsKCQkvLyB1cGRhdGUgdGhlIGxhc3Qgc3luYyB0aW1lc3RhbXAgZm9yIHRoaXMgY29udGVudCB0eXBlLgoJCWlmICggJycgPT09ICRuZXh0X3F1ZXJ5X21vZGlmaWVkX2RhdGUgKSB7CgkJCSRuZXh0X3F1ZXJ5X21vZGlmaWVkX2RhdGUgPSB0aW1lKCk7CgkJfSBlbHNlIHsKCQkJJG5leHRfcXVlcnlfbW9kaWZpZWRfZGF0ZSA9IHN0cnRvdGltZSggJG5leHRfcXVlcnlfbW9kaWZpZWRfZGF0ZSApOwoJCX0KCQkkdGhpcy0+cHVsbF9vcHRpb25zLT5zZXQoICdsYXN0X3N5bmMnLCAkdHlwZSwgJGZpZWxkbWFwX2lkLCAkbmV4dF9xdWVyeV9tb2RpZmllZF9kYXRlICk7Cgl9CgoJLyoqCgkgKiBDcmVhdGUgYW4gb2JqZWN0IG1hcCBiZXR3ZWVuIGEgU2FsZXNmb3JjZSBvYmplY3QgYW5kIGEgV29yZFByZXNzIG9iamVjdAoJICoKCSAqIEBwYXJhbSBhcnJheSAgJHNhbGVzZm9yY2Vfb2JqZWN0IEFycmF5IG9mIHRoZSBzYWxlc2ZvcmNlIG9iamVjdCdzIGRhdGEuCgkgKiBAcGFyYW0gc3RyaW5nICR3b3JkcHJlc3NfaWQgVW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBXb3JkUHJlc3Mgb2JqZWN0LgoJICogQHBhcmFtIGFycmF5ICAkZmllbGRfbWFwcGluZyBUaGUgcm93IHRoYXQgbWFwcyB0aGUgb2JqZWN0IHR5cGVzIHRvZ2V0aGVyLCBpbmNsdWRpbmcgd2hpY2ggZmllbGRzIG1hdGNoIHdoaWNoIG90aGVyIGZpZWxkcy4KCSAqIEByZXR1cm4gaW50ICR3cGRiLT5pbnNlcnRfaWQgVGhpcyBpcyB0aGUgZGF0YWJhc2Ugcm93IGZvciB0aGUgbWFwIG9iamVjdAoJICovCglwcml2YXRlIGZ1bmN0aW9uIGNyZWF0ZV9vYmplY3RfbWFwKCAkc2FsZXNmb3JjZV9vYmplY3QsICR3b3JkcHJlc3NfaWQsICRmaWVsZF9tYXBwaW5nICkgewoJCS8vIENyZWF0ZSBvYmplY3QgbWFwIGFuZCBzYXZlIGl0LgoJCSRtYXBwaW5nX29iamVjdCA9ICR0aGlzLT5tYXBwaW5ncy0+Y3JlYXRlX29iamVjdF9tYXAoCgkJCWFycmF5KAoJCQkJJ3dvcmRwcmVzc19pZCcgICAgICA9PiAkd29yZHByZXNzX2lkLCAvLyBXb3JkUHJlc3MgdW5pcXVlIGlkLgoJCQkJJ3NhbGVzZm9yY2VfaWQnICAgICA9PiAkc2FsZXNmb3JjZV9vYmplY3RbJ0lkJ10sIC8vIFNhbGVzZm9yY2UgdW5pcXVlIGlkLiB3ZSBkb24ndCBjYXJlIHdoYXQga2luZCBvZiBvYmplY3QgaXQgaXMgYXQgdGhpcyBwb2ludC4KCQkJCSd3b3JkcHJlc3Nfb2JqZWN0JyAgPT4gJGZpZWxkX21hcHBpbmdbJ3dvcmRwcmVzc19vYmplY3QnXSwgLy8ga2VlcCB0cmFjayBvZiB3aGF0IGtpbmQgb2YgV29yZFByZXNzIG9iamVjdCB0aGlzIGlzLgoJCQkJJ2xhc3Rfc3luYycgICAgICAgICA9PiBjdXJyZW50X3RpbWUoICdteXNxbCcgKSwKCQkJCSdsYXN0X3N5bmNfYWN0aW9uJyAgPT4gJ3B1bGwnLAoJCQkJJ2xhc3Rfc3luY19zdGF0dXMnICA9PiAkdGhpcy0+bWFwcGluZ3MtPnN0YXR1c19zdWNjZXNzLAoJCQkJJ2xhc3Rfc3luY19tZXNzYWdlJyA9PiBlc2NfaHRtbF9fKCAnTWFwcGluZyBvYmplY3QgY3JlYXRlZCB2aWEgZnVuY3Rpb246ICcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSAuIF9fRlVOQ1RJT05fXywKCQkJCSdhY3Rpb24nICAgICAgICAgICAgPT4gJ2NyZWF0ZWQnLAoJCQkpCgkJKTsKCgkJcmV0dXJuICRtYXBwaW5nX29iamVjdDsKCgl9CgoJLyoqCgkgKiBGaW5kIG91dCBpZiBwdWxsIGlzIGFsbG93ZWQgZm9yIHRoaXMgcmVjb3JkCgkgKgoJICogQHBhcmFtIHN0cmluZyAkb2JqZWN0X3R5cGUgU2FsZXNmb3JjZSBvYmplY3QgdHlwZS4KCSAqIEBwYXJhbSBhcnJheSAgJG9iamVjdCBBcnJheSBvZiB0aGUgc2FsZXNmb3JjZSBvYmplY3QncyBkYXRhLgoJICogQHBhcmFtIHN0cmluZyAkc2Zfc3luY190cmlnZ2VyIFRoZSBjdXJyZW50IG9wZXJhdGlvbidzIHRyaWdnZXIuCgkgKiBAcGFyYW0gYXJyYXkgICRzYWxlc2ZvcmNlX21hcHBpbmcgdGhlIGZpZWxkbWFwIHRoYXQgbWFwcyB0aGUgdHdvIG9iamVjdCB0eXBlcy4KCSAqIEBwYXJhbSBhcnJheSAgJG1hcF9zeW5jX3RyaWdnZXJzIHRoZSB0cmlnZ2VycyB0aGF0IGFyZSBlbmFibGVkLgoJICogQHJldHVybiBib29sICRwdWxsX2FsbG93ZWQgV2hldGhlciBhbGwgdGhpcyBzdHVmZiBhbGxvd3MgdGhlICRyZXN1bHQgdG8gYmUgcHVsbGVkIGludG8gV29yZFByZXNzCgkgKi8KCXByaXZhdGUgZnVuY3Rpb24gaXNfcHVsbF9hbGxvd2VkKCAkb2JqZWN0X3R5cGUsICRvYmplY3QsICRzZl9zeW5jX3RyaWdnZXIsICRzYWxlc2ZvcmNlX21hcHBpbmcsICRtYXBfc3luY190cmlnZ2VycyApIHsKCgkJLy8gZGVmYXVsdCBpcyBwdWxsIGlzIGFsbG93ZWQuCgkJJHB1bGxfYWxsb3dlZCA9IHRydWU7CgoJCS8vIGlmIHRoZSBjdXJyZW50IGZpZWxkbWFwIGRvZXMgbm90IGFsbG93IGNyZWF0ZSwgd2UgbmVlZCB0byBjaGVjayBpZiB0aGVyZSBpcyBhbiBvYmplY3QgbWFwIGZvciB0aGUgU2FsZXNmb3JjZSBvYmplY3QgSWQuIGlmIG5vdCwgc2V0IHB1bGxfYWxsb3dlZCB0byBmYWxzZS4KCQlpZiAoICEgaW5fYXJyYXkoICR0aGlzLT5tYXBwaW5ncy0+c3luY19zZl9jcmVhdGUsIChhcnJheSkgJG1hcF9zeW5jX3RyaWdnZXJzLCB0cnVlICkgKSB7CgkJCSRvYmplY3RfbWFwID0gJHRoaXMtPm1hcHBpbmdzLT5sb2FkX29iamVjdF9tYXBzX2J5X3NhbGVzZm9yY2VfaWQoICRvYmplY3RbJ0lkJ10sICRzYWxlc2ZvcmNlX21hcHBpbmcgKTsKCQkJaWYgKCBlbXB0eSggJG9iamVjdF9tYXAgKSApIHsKCQkJCSRwdWxsX2FsbG93ZWQgPSBmYWxzZTsKCQkJfQoJCX0KCgkJLy8gSG9vayB0byBhbGxvdyBvdGhlciBwbHVnaW5zIHRvIHByZXZlbnQgYSBwdWxsIHBlci1tYXBwaW5nLgoJCS8vIFB1dHRpbmcgdGhlIHB1bGxfYWxsb3dlZCBob29rIGhlcmUgd2lsbCBrZWVwIHRoZSBxdWV1ZSBmcm9tIHN0b3JpbmcgZGF0YSB3aGVuIGl0IGlzIG5vdCBzdXBwb3NlZCB0byBzdG9yZSBpdC4KCQkkcHVsbF9hbGxvd2VkID0gYXBwbHlfZmlsdGVycyggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAncHVsbF9vYmplY3RfYWxsb3dlZCcsICRwdWxsX2FsbG93ZWQsICRvYmplY3RfdHlwZSwgJG9iamVjdCwgJHNmX3N5bmNfdHJpZ2dlciwgJHNhbGVzZm9yY2VfbWFwcGluZyApOwoKCQkvLyBleGFtcGxlIHRvIGtlZXAgZnJvbSBwdWxsaW5nIHRoZSBDb250YWN0IHdpdGggaWQgb2YgYWJjZGVmLgoJCS8qIC8vIHBocGNzOmlnbm9yZSBTcXVpei5QSFAuQ29tbWVudGVkT3V0Q29kZS5Gb3VuZAoJCWFkZF9maWx0ZXIoICdvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZV9wdWxsX29iamVjdF9hbGxvd2VkJywgJ2NoZWNrX3VzZXInLCAxMCwgNSApOwoJCS8vIGNhbiBhbHdheXMgcmVkdWNlIHRoaXMgbnVtYmVyIGlmIGFsbCB0aGUgYXJndW1lbnRzIGFyZSBub3QgbmVjZXNzYXJ5CgkJZnVuY3Rpb24gY2hlY2tfdXNlciggJHB1bGxfYWxsb3dlZCwgJG9iamVjdF90eXBlLCAkb2JqZWN0LCAkc2Zfc3luY190cmlnZ2VyLCAkc2FsZXNmb3JjZV9tYXBwaW5nICkgewoJCQlpZiAoICdDb250YWN0JyA9PT0gJG9iamVjdF90eXBlICYmICdhYmNkZWYnID09PSAkb2JqZWN0WydJZCddICkgewoJCQkJJHB1bGxfYWxsb3dlZCA9IGZhbHNlOwoJCQl9CgkJCXJldHVybiAkcHVsbF9hbGxvd2VkOwoJCX0KCQkqLwoKCQlyZXR1cm4gJHB1bGxfYWxsb3dlZDsKCX0KCn0KIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWVzcGFjZXMiO2E6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW5jbHVkZXMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZnVuY3Rpb25zIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNvbnN0YW50cyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjbGFzc2VzIjthOjE6e3M6MzE6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGwiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfIjoxMzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzE6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGwiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czozMDoiT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozNzoiT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsIGNsYXNzLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AcGFyZW50IjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBpbXBsZW1lbnRzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AY29uc3RhbnRzIjthOjA6e31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AcHJvcGVydGllcyI7YToyMDp7czo0MToiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JHZlcnNpb24iO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQxOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokdmVyc2lvbiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6InZlcnNpb24iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mjk6IkN1cnJlbnQgdmVyc2lvbiBvZiB0aGUgcGx1Z2luIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjM4OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokZmlsZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzg6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiRmaWxlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoiZmlsZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyMDoiVGhlIG1haW4gcGx1Z2luIGZpbGUiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mjg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6Mzg6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiR3cGRiIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozODoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JHdwZGIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo0OiJ3cGRiIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjQ4OiJHbG9iYWwgb2JqZWN0IG9mIGAkd3BkYmAsIHRoZSBXb3JkUHJlc3MgZGF0YWJhc2UiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtOO31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjM4OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokc2x1ZyI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzg6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiRzbHVnIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoic2x1ZyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo1MzoiVGhlIHBsdWdpbidzIHNsdWcgc28gd2UgY2FuIGluY2x1ZGUgaXQgd2hlbiBuZWNlc3NhcnkiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDc6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiRvcHRpb25fcHJlZml4IjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NzoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JG9wdGlvbl9wcmVmaXgiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMzoib3B0aW9uX3ByZWZpeCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo1NToiVGhlIHBsdWdpbidzIHByZWZpeCB3aGVuIHNhdmluZyBvcHRpb25zIHRvIHRoZSBkYXRhYmFzZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0OTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo1MToiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JGxvZ2luX2NyZWRlbnRpYWxzIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1MToiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JGxvZ2luX2NyZWRlbnRpYWxzIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTc6ImxvZ2luX2NyZWRlbnRpYWxzIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjkwOiJMb2dpbiBjcmVkZW50aWFscyBmb3IgdGhlIFNhbGVzZm9yY2UgQVBJOyBjb21lcyBmcm9tIHdwLWNvbmZpZyBvciBmcm9tIHRoZSBwbHVnaW4gc2V0dGluZ3MiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjUzOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokc2NoZWR1bGFibGVfY2xhc3NlcyI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTM6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiRzY2hlZHVsYWJsZV9jbGFzc2VzIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6InNjaGVkdWxhYmxlX2NsYXNzZXMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6ODM6IkFycmF5IG9mIHdoYXQgY2xhc3NlcyBpbiB0aGUgcGx1Z2luIGNhbiBiZSBzY2hlZHVsZWQgdG8gb2NjdXIgd2l0aCBgd3BfY3JvbmAgZXZlbnRzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2MztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NjM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czozOToiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JHF1ZXVlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozOToiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JHF1ZXVlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NToicXVldWUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MjY6Ik9iamVjdF9TeW5jX1NmX1F1ZXVlIGNsYXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7Tjt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo3MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo0MToiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JGxvZ2dpbmciO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQxOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokbG9nZ2luZyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6ImxvZ2dpbmciO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mjg6Ik9iamVjdF9TeW5jX1NmX0xvZ2dpbmcgY2xhc3MiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtOO31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjc3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo3NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjQyOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokbWFwcGluZ3MiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQyOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokbWFwcGluZ3MiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo4OiJtYXBwaW5ncyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyODoiT2JqZWN0X1N5bmNfU2ZfTWFwcGluZyBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjg0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDM6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiR3b3JkcHJlc3MiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQzOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokd29yZHByZXNzIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6OToid29yZHByZXNzIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjMwOiJPYmplY3RfU3luY19TZl9Xb3JkUHJlc3MgY2xhc3MiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtOO31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjkxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo5MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjQ0OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokc2FsZXNmb3JjZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDQ6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiRzYWxlc2ZvcmNlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTA6InNhbGVzZm9yY2UiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Njg6Ik9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2UgY2xhc3MKVGhpcyBjb250YWlucyBTYWxlc2ZvcmNlIEFQSSBtZXRob2RzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo5OTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6OTk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo0NjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JHB1bGxfb3B0aW9ucyI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDY6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiRwdWxsX29wdGlvbnMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoicHVsbF9vcHRpb25zIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjMzOiJPYmplY3RfU3luY19TZl9QdWxsX09wdGlvbnMgY2xhc3MiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtOO31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwNjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTA2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDk6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiRzeW5jX3RyYW5zaWVudHMiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ5OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokc3luY190cmFuc2llbnRzIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6InN5bmNfdHJhbnNpZW50cyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozNjoiT2JqZWN0X1N5bmNfU2ZfU3luY19UcmFuc2llbnRzIGNsYXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7Tjt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMTM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjExMztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjQ3OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokc2NoZWR1bGVfbmFtZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDc6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiRzY2hlZHVsZV9uYW1lIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6InNjaGVkdWxlX25hbWUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mzc6IlRoZSBuYW1lIG9mIHRoZSBBY3Rpb25TY2hlZHVsZXIgcXVldWUiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTIwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo1MjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JGJhdGNoX3NvcWxfcXVlcmllcyI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTI6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiRiYXRjaF9zb3FsX3F1ZXJpZXMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxODoiYmF0Y2hfc29xbF9xdWVyaWVzIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjI5OiJXaGV0aGVyIHRvIGJhdGNoIFNPUUwgcXVlcmllcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTI3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMjc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo1MzoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JG1pbl9zb3FsX2JhdGNoX3NpemUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUzOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokbWluX3NvcWxfYmF0Y2hfc2l6ZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE5OiJtaW5fc29xbF9iYXRjaF9zaXplIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjI4OiJNaW5pbXVtIHNpemUgb2YgYSBTT1FMIGJhdGNoIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMzQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEzNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjQ3OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjokbWF4X3NvcWxfc2l6ZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDc6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiRtYXhfc29xbF9zaXplIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6Im1heF9zb3FsX3NpemUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mjg6Ik1heGltdW0gc2l6ZSBvZiBhIFNPUUwgYmF0Y2giO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE0MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTQxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NTY6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OiRtZXJnZWFibGVfcmVjb3JkX3R5cGVzIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1NjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JG1lcmdlYWJsZV9yZWNvcmRfdHlwZXMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMjoibWVyZ2VhYmxlX3JlY29yZF90eXBlcyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0NjoiVHlwZXMgb2YgU2FsZXNmb3JjZSByZWNvcmRzIHRoYXQgY2FuIGJlIG1lcmdlZCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTQ4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNDg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czozOToiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JGRlYnVnIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozOToiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6JGRlYnVnIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NToiZGVidWciO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MzU6IldoZXRoZXIgdGhlIHBsdWdpbiBpcyBpbiBkZWJ1ZyBtb2RlIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE1NTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTU1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fX1zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AbWV0aG9kcyI7YToyOTp7czo0NjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6X19jb25zdHJ1Y3QoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjI2OiJDb25zdHJ1Y3RvciBmb3IgcHVsbCBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6X19jb25zdHJ1Y3QoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJfX2NvbnN0cnVjdCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMDA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjUzOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjpiYXRjaF9zb3FsX3F1ZXJpZXMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjU0OiJXaGV0aGVyIHRvIHVzZSB0aGUgYmF0Y2hTaXplIHBhcmFtZXRlciBvbiBTT1FMIHF1ZXJpZXMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mjp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI5OiJ3aGV0aGVyIHRvIGJhdGNoIHRoZSBxdWVyaWVzLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTg6ImJhdGNoX3NvcWxfcXVlcmllcyI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjE5OiIkYmF0Y2hfc29xbF9xdWVyaWVzIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUzOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjpiYXRjaF9zb3FsX3F1ZXJpZXMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE4OiJiYXRjaF9zb3FsX3F1ZXJpZXMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjE4OiJiYXRjaF9zb3FsX3F1ZXJpZXMiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMDg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ2OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjphZGRfYWN0aW9ucygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTc0OiJDcmVhdGUgdGhlIGFjdGlvbiBob29rcyBiYXNlZCBvbiB3aGF0IG9iamVjdCBtYXBzIGV4aXN0IGZyb20gdGhlIGFkbWluIHNldHRpbmdzCnJvdXRlIGlzIGh0dHA6Ly9leGFtcGxlLmNvbS93cC1qc29uL3NhbGVzZm9yY2UtcmVzdC1hcGkvcHVsbC8gcGx1cyBwYXJhbXMgd2UgZGVjaWRlIHRvIGFjY2VwdC4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDY6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OmFkZF9hY3Rpb25zKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMToiYWRkX2FjdGlvbnMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjIyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjMwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1MzoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6ZGVwcmVjYXRlZF9hY3Rpb25zKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxODoiRGVwcmVjYXRlZCBhY3Rpb25zIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUzOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjpkZXByZWNhdGVkX2FjdGlvbnMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE4OiJkZXByZWNhdGVkX2FjdGlvbnMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjM1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjM4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo2MzoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6ZGVwcmVjYXRlZF9wdWxsX29wdGlvbl9uYW1lcygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NjU6Ik1vZGlmeSBsZWdhY3kgbmFtZWQgaW5kaXZpZHVhbCBvcHRpb24gcmVjb3JkcyBmb3Igc3luYyBvcGVyYXRpb25zIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjQ6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozMjoidGhlIHBsdWdpbidzIHN1Z2dlc3RlZCBrZXkgbmFtZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjM6ImtleSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQwOiJ0aGUgYXJyYXkgb2YgcGFyYW1ldGVycyB0byBtYWtlIHRoZSBrZXkuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NjoicGFyYW1zIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NTA6IiR2YWx1ZSB0aGUgdmFsdWUgb2YgdGhlIGl0ZW0uIEZhbHNlIGlmIGl0J3MgZW1wdHkuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e319aTozO086NDk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXERlcHJlY2F0ZWQiOjM6e3M6NzoiACoAbmFtZSI7czoxMDoiZGVwcmVjYXRlZCI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6OTI6InRoaXMgd2FzIGFkZGVkIGluIDIuMS4wIHRvIHVwZ3JhZGUgb2xkIG9wdGlvbiBrZXlzLCBidXQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHZlcnNpb24uIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcRGVwcmVjYXRlZAB2ZXJzaW9uIjtOO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2MzoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6ZGVwcmVjYXRlZF9wdWxsX29wdGlvbl9uYW1lcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6Mjg6ImRlcHJlY2F0ZWRfcHVsbF9vcHRpb25fbmFtZXMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6Mzoia2V5IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NjoicGFyYW1zIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjQ4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjU4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1ODoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6c2FsZXNmb3JjZV9wdWxsX3dlYmhvb2soKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjE2MToiUkVTVCBBUEkgY2FsbGJhY2sgZm9yIHNhbGVzZm9yY2UgcHVsbC4gUmV0dXJucyBzdGF0dXMgb2YgMjAwIGZvciBzdWNjZXNzZnVsCmF0dGVtcHQgb3IgNDAzIGZvciBhIGZhaWxlZCBwdWxsIGF0dGVtcHQgKFNGIG5vdCBhdXRob3JpemVkLCB0aHJlc2hob2xkCnJlYWNoZWQsIGV0Yy4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mjp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjY2OiJUaGlzIGlzIGEgbWVyZ2VkIG9iamVjdCBvZiBhbGwgdGhlIGFyZ3VtZW50cyBmcm9tIHRoZSBBUEkgcmVxdWVzdC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjE2OiJcV1BfUkVTVF9SZXF1ZXN0IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6IldQX1JFU1RfUmVxdWVzdCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjc6InJlcXVlc3QiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozMjoiY29kZTogMjAxCmRhdGE6CiAgc3VjY2VzcyA6IHRydWUiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU4OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjpzYWxlc2ZvcmNlX3B1bGxfd2ViaG9vaygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjM6InNhbGVzZm9yY2VfcHVsbF93ZWJob29rIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6InJlcXVlc3QiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoxNjoiXFdQX1JFU1RfUmVxdWVzdCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJXUF9SRVNUX1JlcXVlc3QiO319czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjcxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mjk5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1MDoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6c2FsZXNmb3JjZV9wdWxsKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo2NToiQ2FsbGJhY2sgZm9yIHRoZSBzdGFuZGFyZCBwdWxsIHByb2Nlc3MgdXNlZCBieSB3ZWJob29rcyBhbmQgY3Jvbi4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTA6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OnNhbGVzZm9yY2VfcHVsbCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6InNhbGVzZm9yY2VfcHVsbCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozMDQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozMjE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ5OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjpjaGVja190aHJvdHRsZSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NjY6IkRldGVybWluZXMgaWYgdGhlIFNhbGVzZm9yY2UgcHVsbCBzaG91bGQgYmUgYWxsb3dlZCwgb3IgdGhyb3R0bGVkLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo1NDoiUHJldmVudHMgdG9vIG1hbnkgcHVsbCBwcm9jZXNzZXMgZnJvbSBydW5uaW5nIGF0IG9uY2UuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjY4OiJSZXR1cm5zIGZhbHNlIGlmIHRoZSB0aW1lIGVsYXBzZWQgYmV0d2VlbiByZWNlbnQgcHVsbHMgaXMgdG9vIHNob3J0LiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0OToiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6Y2hlY2tfdGhyb3R0bGUoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE0OiJjaGVja190aHJvdHRsZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzI5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzM4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1NDoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6Z2V0X3VwZGF0ZWRfcmVjb3JkcygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NjU6IlB1bGwgdXBkYXRlZCByZWNvcmRzIGZyb20gU2FsZXNmb3JjZSBhbmQgcGxhY2UgdGhlbSBpbiB0aGUgcXVldWUuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjMxOToiRXhlY3V0ZXMgYSBTT1FMIHF1ZXJ5IGJhc2VkIG9uIGRlZmluZWQgbWFwcGluZ3MsIGxvb3BzIHRocm91Z2ggdGhlIHJlc3VsdHMsCmFuZCBwbGFjZXMgZWFjaCB1cGRhdGVkIFNGIG9iamVjdCBpbnRvIHRoZSBxdWV1ZSBmb3IgbGF0ZXIgcHJvY2Vzc2luZy4KV2UgY29weSB0aGUgY29udmVudGlvbiBmcm9tIHRoZSBEcnVwYWwgbW9kdWxlIGhlcmUsIGFuZCBydW4gYSBzZXBhcmF0ZSBTT1FMIHF1ZXJ5IGZvciBlYWNoIHR5cGUgb2Ygb2JqZWN0IGluIFNGCklmIHdlIHJldHVybiBzb21ldGhpbmcgaGVyZSwgaXQncyBiZWNhdXNlIHRoZXJlIGlzIGFuIGVycm9yLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU0OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjpnZXRfdXBkYXRlZF9yZWNvcmRzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiZ2V0X3VwZGF0ZWRfcmVjb3JkcyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzQ3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NjIzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1NjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6Z2V0X25leHRfcmVjb3JkX2JhdGNoKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyMDc6IlB1bGwgdGhlIG5leHQgYmF0Y2ggb2YgcmVjb3JkcyBmcm9tIHRoZSBTYWxlc2ZvcmNlIEFQSSwgaWYgYXBwbGljYWJsZQpFeGVjdXRlcyBhIG5leHRSZWNvcmRzVXJsIFNPUUwgcXVlcnkgYmFzZWQgb24gdGhlIHByZXZpb3VzIHJlc3VsdCwKYW5kIHBsYWNlcyBlYWNoIHVwZGF0ZWQgU0Ygb2JqZWN0IGludG8gdGhlIHF1ZXVlIGZvciBsYXRlciBwcm9jZXNzaW5nLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTo3OntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MjQ6IndoZW4gaXQgd2FzIGxhc3Qgc3luY2VkLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6OToiXGRhdGV0aW1lIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6ODoiZGF0ZXRpbWUiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo5OiJsYXN0X3N5bmMiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxMzoidGhlIGZpZWxkbWFwLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE4OiJzYWxlc2ZvcmNlX21hcHBpbmciO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MjtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyODoidGhlIHN5bmMgdHJpZ2dlciBiaXQgdmFsdWVzLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE3OiJtYXBfc3luY190cmlnZ2VycyI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTozO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI3OiJ0aGUgU2FsZXNmb3JjZSBvYmplY3QgdHlwZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6InR5cGUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6NDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo0MDoidGhlIEFQSSBwYXRoIGZvciB0aGUgU2FsZXNmb3JjZSB2ZXJzaW9uLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTI6InZlcnNpb25fcGF0aCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTo1O086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjIzOiJ0aGUgU09RTCBxdWVyeSBvcHRpb25zLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEzOiJxdWVyeV9vcHRpb25zIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjY7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MjI6InRoZSBwcmV2aW91cyByZXNwb25zZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo4OiJyZXNwb25zZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTY6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OmdldF9uZXh0X3JlY29yZF9iYXRjaCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjE6ImdldF9uZXh0X3JlY29yZF9iYXRjaCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Nzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6OToibGFzdF9zeW5jIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTg6InNhbGVzZm9yY2VfbWFwcGluZyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjE3OiJtYXBfc3luY190cmlnZ2VycyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MztPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6InR5cGUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjQ7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMjoidmVyc2lvbl9wYXRoIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aTo1O086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTM6InF1ZXJ5X29wdGlvbnMiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjY7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo4OiJyZXNwb25zZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYzODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjY4NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTM6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OmNoZWNrX29mZnNldF9xdWVyeSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTIyOiJHZXQgdGhlIG5leHQgb2Zmc2V0IHF1ZXJ5LiBJZiBjaGVjayBpcyB0cnVlLCBvbmx5IHNlZSBpZiB0aGF0IHF1ZXJ5IHdvdWxkIGhhdmUgcmVzdWx0cy4gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIFNPUUwgb2JqZWN0LiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo1NzoiV2hlbiBiYXRjaFNpemUgaXMgbm90IGluIHVzZSwgcnVuIGEgY2hlY2sgd2l0aCBhbiBvZmZzZXQuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6NDp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI3OiJ0aGUgU2FsZXNmb3JjZSBvYmplY3QgdHlwZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6InR5cGUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyOToidGhlIG1hcCBiZXR3ZWVuIG9iamVjdCB0eXBlcy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxODoic2FsZXNmb3JjZV9tYXBwaW5nIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzE6InRoZSBvcHRpb25zIGZvciB0aGUgU09RTCBxdWVyeS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMzoicXVlcnlfb3B0aW9ucyI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTozO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM2OiIkc29xbHwkZG9lc19uZXh0X29mZnNldF9oYXZlX3Jlc3VsdHMiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtOO31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUzOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjpjaGVja19vZmZzZXRfcXVlcnkoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE4OiJjaGVja19vZmZzZXRfcXVlcnkiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6InR5cGUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxODoic2FsZXNmb3JjZV9tYXBwaW5nIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTM6InF1ZXJ5X29wdGlvbnMiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo2OTU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo3MTc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ5OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjpnZXRfcHVsbF9xdWVyeSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTEwOiJHaXZlbiBhIFNPYmplY3QgdHlwZSBuYW1lLCBidWlsZCBhbiBTT1FMIHF1ZXJ5IHRvIGluY2x1ZGUgYWxsIGZpZWxkcyBmb3IgYWxsCmZpZWxkbWFwcyBtYXBwZWQgdG8gdGhhdCBTT2JqZWN0LiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTo1OntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzE6ImUuZy4gIkNvbnRhY3QiLCAiQWNjb3VudCIsIGV0Yy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6InR5cGUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo0NDoidGhlIGZpZWxkbWFwIHRoYXQgbWFwcyB0aGUgdHdvIG9iamVjdCB0eXBlcy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxODoic2FsZXNmb3JjZV9tYXBwaW5nIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NTQ6Im9yIG51bGwgaWYgbm8gbWFwcGluZ3Mgb3Igbm8gbWFwcGVkIGZpZWxkcyB3ZXJlIGZvdW5kLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzk6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1NlbGVjdF9RdWVyeSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjM4OiJPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1NlbGVjdF9RdWVyeSI7fX19aTozO086NDI6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFNlZSI6Mzp7czo3OiIAKgBuYW1lIjtzOjM6InNlZSI7czoxNDoiACoAZGVzY3JpcHRpb24iO047czo5OiIAKgByZWZlcnMiO086NTQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJlZmVyZW5jZVxGcXNlbiI6MTp7czo2MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJlZmVyZW5jZVxGcXNlbgBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQyOiJcT2JqZWN0X1N5bmNfU2ZfTWFwcGluZzo6Z2V0X21hcHBlZF9maWVsZHMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNzoiZ2V0X21hcHBlZF9maWVsZHMiO319fWk6NDtPOjQyOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xTZWUiOjM6e3M6NzoiACoAbmFtZSI7czozOiJzZWUiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtOO3M6OToiACoAcmVmZXJzIjtPOjU0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZWZlcmVuY2VcRnFzZW4iOjE6e3M6NjE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZWZlcmVuY2VcRnFzZW4AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0ODoiXE9iamVjdF9TeW5jX1NmX01hcHBpbmc6OmdldF9tYXBwZWRfcmVjb3JkX3R5cGVzIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjM6ImdldF9tYXBwZWRfcmVjb3JkX3R5cGVzIjt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0OToiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6Z2V0X3B1bGxfcXVlcnkoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE0OiJnZXRfcHVsbF9xdWVyeSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoidHlwZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjE4OiJzYWxlc2ZvcmNlX21hcHBpbmciO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjc6ImFycmF5KCkiO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo3MzA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo4NTI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjUwOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjpnZXRfcHVsbF9vZmZzZXQoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjQ2OiJEZXRlcm1pbmUgdGhlIG9mZnNldCBmb3IgdGhlIFNPUUwgcXVlcnkgdG8gcnVuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjM6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozMToiZS5nLiAiQ29udGFjdCIsICJBY2NvdW50IiwgZXRjLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NDoidHlwZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjE2OiJ0aGUgU09RTCBvYmplY3QuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NDoic29xbCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToyO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI4OiJ3aGV0aGVyIHRvIHJlc2V0IHRoZSBvZmZzZXQuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo1OiJyZXNldCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTA6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OmdldF9wdWxsX29mZnNldCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6ImdldF9wdWxsX29mZnNldCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoidHlwZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6InNvcWwiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo1OiJyZXNldCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6NToiZmFsc2UiO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo4NjI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo4Njk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjU0OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjpnZXRfcHVsbF9kYXRlX3ZhbHVlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxMzg6IkdpdmVuIGEgU09iamVjdCB0eXBlIG5hbWUsIGRldGVybWluZSB0aGUgZGF0ZXRpbWUgdmFsdWUgdGhlIFNPUUwgb2JqZWN0IHNob3VsZCB1c2UgdG8gZmlsdGVyIHJlc3VsdHMuIE9mdGVuIHRoaXMgd2lsbCBiZSBMYXN0TW9kaWZpZWREYXRlLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTo0OntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzE6ImUuZy4gIkNvbnRhY3QiLCAiQWNjb3VudCIsIGV0Yy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6InR5cGUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNjoidGhlIFNPUUwgb2JqZWN0LiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtOO31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6InNvcWwiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MjtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo0NToiaXMgdGhlIGZpZWxkbWFwIElEIHRoYXQgZ29lcyB3aXRoIHRoaXMgcXVlcnkuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMToiZmllbGRtYXBfaWQiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MztPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyNToiJHB1bGxfdHJpZ2dlcl9maWVsZF92YWx1ZSI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MTA6Ilx0aW1lc3RhbXAiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo5OiJ0aW1lc3RhbXAiO319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU0OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjpnZXRfcHVsbF9kYXRlX3ZhbHVlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiZ2V0X3B1bGxfZGF0ZV92YWx1ZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoidHlwZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6InNvcWwiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMToiZmllbGRtYXBfaWQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjI6IicnIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODc5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6OTExO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1MzoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6Z2V0X21lcmdlZF9yZWNvcmRzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozNToiR2V0IG1lcmdlZCByZWNvcmRzIGZyb20gU2FsZXNmb3JjZS4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6Njg6Ik5vdGUgdGhhdCBtZXJnZXMgY2FuIGN1cnJlbnRseSBvbmx5IHdvcmsgaWYgdGhlIFNvYXAgQVBJIGlzIGVuYWJsZWQuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTM6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OmdldF9tZXJnZWRfcmVjb3JkcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTg6ImdldF9tZXJnZWRfcmVjb3JkcyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6OTE3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6OTk2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo2MjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6cmVzcG9uZF90b19zYWxlc2ZvcmNlX21lcmdlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxMjY6IlJlc3BvbmQgdG8gU2FsZXNmb3JjZSBtZXJnZSBldmVudHMKVGhpcyBtZWFucyB3ZSB1cGRhdGUgdGhlIG1hcHBpbmcgb2JqZWN0IHRvIGNvbnRhaW4gdGhlIG5ldyBTYWxlc2ZvcmNlIElkLCBhbmQgcHVsbCBpdHMgZGF0YSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6Mzc6IndoYXQgdHlwZSBvZiBTYWxlc2ZvcmNlIG9iamVjdCBpdCBpcy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjExOiJvYmplY3RfdHlwZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI3OiJ0aGUgcmVjb3JkIHRoYXQgd2FzIG1lcmdlZC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMzoibWVyZ2VkX3JlY29yZCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjI6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OnJlc3BvbmRfdG9fc2FsZXNmb3JjZV9tZXJnZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6Mjc6InJlc3BvbmRfdG9fc2FsZXNmb3JjZV9tZXJnZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTE6Im9iamVjdF90eXBlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTM6Im1lcmdlZF9yZWNvcmQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMDA1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTA0MztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTQ6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OmdldF9kZWxldGVkX3JlY29yZHMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjM2OiJHZXQgZGVsZXRlZCByZWNvcmRzIGZyb20gc2FsZXNmb3JjZS4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6Nzc6Ik5vdGUgdGhhdCBkZWxldGlvbnMgY2FuIG9ubHkgYmUgcXVlcmllZCB2aWEgUkVTVCB3aXRoIGFuIEFQSSB2ZXJzaW9uID49IDI5LjAuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTQ6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OmdldF9kZWxldGVkX3JlY29yZHMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE5OiJnZXRfZGVsZXRlZF9yZWNvcmRzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMDQ5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTE4MjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDY6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6Om1hbnVhbF9wdWxsKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo1MDoiTWV0aG9kIGZvciBhamF4IGhvb2tzIHRvIGNhbGwgZm9yIHB1bGxpbmcgbWFudWFsbHkiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mzp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI3OiJ0aGUgU2FsZXNmb3JjZSBvYmplY3QgdHlwZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjExOiJvYmplY3RfdHlwZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI1OiJ0aGUgU2FsZXNmb3JjZSByZWNvcmQgSUQuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMzoic2FsZXNmb3JjZV9pZCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToyO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjc6IiRyZXN1bHQiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ2OiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjptYW51YWxfcHVsbCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTE6Im1hbnVhbF9wdWxsIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjExOiJvYmplY3RfdHlwZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEzOiJzYWxlc2ZvcmNlX2lkIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czoyOiInJyI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjExOTE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMjE3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo2NjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6c2FsZXNmb3JjZV9wdWxsX3Byb2Nlc3NfcmVjb3JkcygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6ODA6IlN5bmMgV29yZFByZXNzIG9iamVjdHMgYW5kIFNhbGVzZm9yY2Ugb2JqZWN0cyBmcm9tIHRoZSBxdWV1ZSB1c2luZyB0aGUgUkVTVCBBUEkuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjU6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyNjoiVHlwZSBvZiBTYWxlc2ZvcmNlIG9iamVjdC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjExOiJvYmplY3RfdHlwZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM2OiJUaGUgU2FsZXNmb3JjZSBkYXRhIG9yIGl0cyBJZCB2YWx1ZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo2OiJvYmplY3QiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MjtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyMjoiVHJpZ2dlciBmb3IgdGhpcyBzeW5jLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTU6InNmX3N5bmNfdHJpZ2dlciI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTozO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjIzOiJ0cnVlIG9yIGV4aXQgdGhlIG1ldGhvZCI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fX1pOjQ7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVGhyb3dzIjozOntzOjc6IgAqAG5hbWUiO3M6NjoidGhyb3dzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxMzoiRXhjZXB0aW9uICRlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjU6IlxPYmplY3RfU3luY19TZl9FeGNlcHRpb24iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyNDoiT2JqZWN0X1N5bmNfU2ZfRXhjZXB0aW9uIjt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2NjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6c2FsZXNmb3JjZV9wdWxsX3Byb2Nlc3NfcmVjb3JkcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MzE6InNhbGVzZm9yY2VfcHVsbF9wcm9jZXNzX3JlY29yZHMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTE6Im9iamVjdF90eXBlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6Njoib2JqZWN0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTU6InNmX3N5bmNfdHJpZ2dlciI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEyMjg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNTQ4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1MjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6Z2V0X3N5bmNlZF9vYmplY3QoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjMyOiJHZW5lcmF0ZSB0aGUgc3luY2VkX29iamVjdCBhcnJheSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTo0OntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzU6IlRoZSBkYXRhIGZvciB0aGUgU2FsZXNmb3JjZSBvYmplY3QuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6Njoib2JqZWN0IjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6ODY6IlRoZSBkYXRhIGZvciB0aGUgbWFwcGluZyBvYmplY3QgYmV0d2VlbiB0aGUgaW5kaXZpZHVhbCBTYWxlc2ZvcmNlIGFuZCBXb3JkUHJlc3MgaXRlbXMuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTQ6Im1hcHBpbmdfb2JqZWN0IjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NTE6IlRoZSBkYXRhIGZvciB0aGUgZmllbGRtYXAgYmV0d2VlbiB0aGUgb2JqZWN0IHR5cGVzLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE4OiJzYWxlc2ZvcmNlX21hcHBpbmciO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MztPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxMDc6IiRzeW5jZWRfb2JqZWN0IFRoZSBjb21iaW5lZCBhcnJheSBvZiB0aGVzZSBpdGVtcy4gSXQgYWxsb3dzIGZvciBmaWx0ZXJpbmcgb2YsIGF0IGxlYXN0LCB0aGUgbWFwcGluZ19vYmplY3QuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1MjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6Z2V0X3N5bmNlZF9vYmplY3QoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE3OiJnZXRfc3luY2VkX29iamVjdCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6Njoib2JqZWN0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTQ6Im1hcHBpbmdfb2JqZWN0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTg6InNhbGVzZm9yY2VfbWFwcGluZyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE1NTg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNTcyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo2NDoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6Y3JlYXRlX2NhbGxlZF9mcm9tX3NhbGVzZm9yY2UoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjUwOiJDcmVhdGUgcmVjb3JkcyBpbiBXb3JkUHJlc3MgZnJvbSBhIFNhbGVzZm9yY2UgcHVsbCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTo4OntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzI6IlRoZSBjdXJyZW50IG9wZXJhdGlvbidzIHRyaWdnZXIuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxNToic2Zfc3luY190cmlnZ2VyIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NzE6IkNvbWJpbmVkIGRhdGEgZm9yIGZpZWxkbWFwLCBtYXBwaW5nIG9iamVjdCwgYW5kIFNhbGVzZm9yY2Ugb2JqZWN0IGRhdGEuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTM6InN5bmNlZF9vYmplY3QiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MjtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo3MjoiQXJyYXkgb2YgbWFwcGVkIGtleSB2YWx1ZSBwYWlycyBiZXR3ZWVuIFdvcmRQcmVzcyBhbmQgU2FsZXNmb3JjZSBmaWVsZHMuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NjoicGFyYW1zIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjM7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NjM6IkFycmF5IG9mIGNyaXRlcmlhIHRvIGRldGVybWluZSB3aGF0IHRvIGRvIG9uIHVwc2VydCBvcGVyYXRpb25zLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjg6InByZW1hdGNoIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjQ7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6Njc6IlRoZSBuYW1lIG9mIHRoZSBJRCBmaWVsZCBmb3IgdGhpcyBwYXJ0aWN1bGFyIFdvcmRQcmVzcyBvYmplY3QgdHlwZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjIzOiJ3b3JkcHJlc3NfaWRfZmllbGRfbmFtZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTo1O086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjcwOiJUaW1lb3V0IGZvciB0aGUgdHJhbnNpZW50IHZhbHVlIHRvIGRldGVybWluZSB0aGUgZGlyZWN0aW9uIGZvciBhIHN5bmMuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo3OiJzZWNvbmRzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjY7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NzQ6IiRyZXN1bHRzIEN1cnJlbnRseSB0aGlzIGNvbnRhaW5zIGFuIGFycmF5IG9mIGxvZyBlbnRyaWVzIGZvciBlYWNoIGF0dGVtcHQuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fX1pOjc7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVGhyb3dzIjozOntzOjc6IgAqAG5hbWUiO3M6NjoidGhyb3dzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxMzoiRXhjZXB0aW9uICRlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjU6IlxPYmplY3RfU3luY19TZl9FeGNlcHRpb24iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyNDoiT2JqZWN0X1N5bmNfU2ZfRXhjZXB0aW9uIjt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2NDoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6Y3JlYXRlX2NhbGxlZF9mcm9tX3NhbGVzZm9yY2UoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI5OiJjcmVhdGVfY2FsbGVkX2Zyb21fc2FsZXNmb3JjZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Njp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTU6InNmX3N5bmNfdHJpZ2dlciI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEzOiJzeW5jZWRfb2JqZWN0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NjoicGFyYW1zIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aTozO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6ODoicHJlbWF0Y2giO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjQ7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoyMzoid29yZHByZXNzX2lkX2ZpZWxkX25hbWUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjU7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo3OiJzZWNvbmRzIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTU4NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE4ODU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjUxOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjpjaGVja19mb3JfdXBzZXJ0KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo2NToiRGV0ZXJtaW5lIHdoZXRoZXIgdGhlIGN1cnJlbnQgb3BlcmF0aW9uIGlzIGFuIHVwc2VydCBvciBhIGNyZWF0ZS4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mzp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjYzOiJBcnJheSBvZiBjcml0ZXJpYSB0byBkZXRlcm1pbmUgd2hhdCB0byBkbyBvbiB1cHNlcnQgb3BlcmF0aW9ucy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo4OiJwcmVtYXRjaCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjMwOiJUaGUgdmFsdWUgb2YgdGhlIFdvcmRQcmVzcyBJRC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fWk6MTtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTnVsbF8iOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMjoid29yZHByZXNzX2lkIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6Mzc6IiRvcCBXaGV0aGVyIGl0J3MgYW4gdXBzZXJ0IG9yIGNyZWF0ZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e319fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTE6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OmNoZWNrX2Zvcl91cHNlcnQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE2OiJjaGVja19mb3JfdXBzZXJ0Ijt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo4OiJwcmVtYXRjaCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEyOiJ3b3JkcHJlc3NfaWQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxODk0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTkwMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NjQ6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OnVwZGF0ZV9jYWxsZWRfZnJvbV9zYWxlc2ZvcmNlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo1MDoiVXBkYXRlIHJlY29yZHMgaW4gV29yZFByZXNzIGZyb20gYSBTYWxlc2ZvcmNlIHB1bGwiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Nzp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjMyOiJUaGUgY3VycmVudCBvcGVyYXRpb24ncyB0cmlnZ2VyLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTU6InNmX3N5bmNfdHJpZ2dlciI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjcxOiJDb21iaW5lZCBkYXRhIGZvciBmaWVsZG1hcCwgbWFwcGluZyBvYmplY3QsIGFuZCBTYWxlc2ZvcmNlIG9iamVjdCBkYXRhLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEzOiJzeW5jZWRfb2JqZWN0IjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NzI6IkFycmF5IG9mIG1hcHBlZCBrZXkgdmFsdWUgcGFpcnMgYmV0d2VlbiBXb3JkUHJlc3MgYW5kIFNhbGVzZm9yY2UgZmllbGRzLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjY6InBhcmFtcyI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTozO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjY3OiJUaGUgbmFtZSBvZiB0aGUgSUQgZmllbGQgZm9yIHRoaXMgcGFydGljdWxhciBXb3JkUHJlc3Mgb2JqZWN0IHR5cGUuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoyMzoid29yZHByZXNzX2lkX2ZpZWxkX25hbWUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6NDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo3MDoiVGltZW91dCBmb3IgdGhlIHRyYW5zaWVudCB2YWx1ZSB0byBkZXRlcm1pbmUgdGhlIGRpcmVjdGlvbiBmb3IgYSBzeW5jLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6Nzoic2Vjb25kcyI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTo1O086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjc0OiIkcmVzdWx0cyBDdXJyZW50bHkgdGhpcyBjb250YWlucyBhbiBhcnJheSBvZiBsb2cgZW50cmllcyBmb3IgZWFjaCBhdHRlbXB0LiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX19aTo2O086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFRocm93cyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InRocm93cyI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTM6IkV4Y2VwdGlvbiAkZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI1OiJcT2JqZWN0X1N5bmNfU2ZfRXhjZXB0aW9uIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjQ6Ik9iamVjdF9TeW5jX1NmX0V4Y2VwdGlvbiI7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NjQ6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OnVwZGF0ZV9jYWxsZWRfZnJvbV9zYWxlc2ZvcmNlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyOToidXBkYXRlX2NhbGxlZF9mcm9tX3NhbGVzZm9yY2UiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjU6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjE1OiJzZl9zeW5jX3RyaWdnZXIiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMzoic3luY2VkX29iamVjdCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjY6InBhcmFtcyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MztPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjIzOiJ3b3JkcHJlc3NfaWRfZmllbGRfbmFtZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6NDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6InNlY29uZHMiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxOTE0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjAyNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NjQ6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OmRlbGV0ZV9jYWxsZWRfZnJvbV9zYWxlc2ZvcmNlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo1MDoiRGVsZXRlIHJlY29yZHMgaW4gV29yZFByZXNzIGZyb20gYSBTYWxlc2ZvcmNlIHB1bGwiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Nzp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjMyOiJUaGUgY3VycmVudCBvcGVyYXRpb24ncyB0cmlnZ2VyLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTU6InNmX3N5bmNfdHJpZ2dlciI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjcxOiJDb21iaW5lZCBkYXRhIGZvciBmaWVsZG1hcCwgbWFwcGluZyBvYmplY3QsIGFuZCBTYWxlc2ZvcmNlIG9iamVjdCBkYXRhLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEzOiJzeW5jZWRfb2JqZWN0IjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6Njc6IlRoZSBuYW1lIG9mIHRoZSBJRCBmaWVsZCBmb3IgdGhpcyBwYXJ0aWN1bGFyIFdvcmRQcmVzcyBvYmplY3QgdHlwZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjIzOiJ3b3JkcHJlc3NfaWRfZmllbGRfbmFtZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTozO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjcwOiJUaW1lb3V0IGZvciB0aGUgdHJhbnNpZW50IHZhbHVlIHRvIGRldGVybWluZSB0aGUgZGlyZWN0aW9uIGZvciBhIHN5bmMuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo3OiJzZWNvbmRzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjQ7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTU5OiJUaGUgZGF0YSBmb3IgdGhlIG1hcHBpbmcgb2JqZWN0cyBiZXR3ZWVuIHRoZSBpbmRpdmlkdWFsIFNhbGVzZm9yY2UgYW5kIFdvcmRQcmVzcyBpdGVtcy4gV2Ugb25seSBwYXNzIHRoaXMgYmVjYXVzZSBvZiB0aGUgbmVlZCB0byBjb3VudCBiZWZvcmUgZGVsZXRpbmcgcmVjb3Jkcy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxNToibWFwcGluZ19vYmplY3RzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjU7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NzQ6IiRyZXN1bHRzIEN1cnJlbnRseSB0aGlzIGNvbnRhaW5zIGFuIGFycmF5IG9mIGxvZyBlbnRyaWVzIGZvciBlYWNoIGF0dGVtcHQuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fX1pOjY7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVGhyb3dzIjozOntzOjc6IgAqAG5hbWUiO3M6NjoidGhyb3dzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxMzoiRXhjZXB0aW9uICRlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjU6IlxPYmplY3RfU3luY19TZl9FeGNlcHRpb24iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyNDoiT2JqZWN0X1N5bmNfU2ZfRXhjZXB0aW9uIjt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2NDoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6ZGVsZXRlX2NhbGxlZF9mcm9tX3NhbGVzZm9yY2UoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI5OiJkZWxldGVfY2FsbGVkX2Zyb21fc2FsZXNmb3JjZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6NTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTU6InNmX3N5bmNfdHJpZ2dlciI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEzOiJzeW5jZWRfb2JqZWN0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MjM6IndvcmRwcmVzc19pZF9maWVsZF9uYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aTozO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6Nzoic2Vjb25kcyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6NDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjE1OiJtYXBwaW5nX29iamVjdHMiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMDM3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjE2ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTQ6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OnBhcnNlX2Vycm9yX21lc3NhZ2UoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjI0OiJGb3JtYXQgdGhlIGVycm9yIG1lc3NhZ2UiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mzp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI1OiJmcm9tIHRoZSBXb3JkUHJlc3MgY2xhc3MuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NjoicmVzdWx0IjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTY6ImlmIHRoZXJlIGlzIG9uZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE1OiJkZWZhdWx0X21lc3NhZ2UiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MjtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozMjoiJG1lc3NhZ2Ugd2hhdCBpcyBnZXR0aW5nIHN0b3JlZC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e319fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTQ6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OnBhcnNlX2Vycm9yX21lc3NhZ2UoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE5OiJwYXJzZV9lcnJvcl9tZXNzYWdlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo2OiJyZXN1bHQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxNToiZGVmYXVsdF9tZXNzYWdlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czoyOiInJyI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIxNzc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTkyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1OToiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6Y2xlYXJfY3VycmVudF90eXBlX3F1ZXJ5KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo2MzoiQ2xlYXIgdGhlIGN1cnJlbnRseSBzdG9yZWQgcXVlcnkgZm9yIHRoZSBzcGVjaWZpZWQgY29udGVudCB0eXBlIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjI6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozMToiZS5nLiAiQ29udGFjdCIsICJBY2NvdW50IiwgZXRjLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NDoidHlwZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQ1OiJpcyB0aGUgZmllbGRtYXAgSUQgdGhhdCBnb2VzIHdpdGggdGhpcyBxdWVyeS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjExOiJmaWVsZG1hcF9pZCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTk6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OmNsZWFyX2N1cnJlbnRfdHlwZV9xdWVyeSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjQ6ImNsZWFyX2N1cnJlbnRfdHlwZV9xdWVyeSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToyOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJ0eXBlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTE6ImZpZWxkbWFwX2lkIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czoyOiInJyI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyMDA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMjA3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo2NjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6aW5jcmVtZW50X2N1cnJlbnRfdHlwZV9kYXRldGltZSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDg6IkluY3JlbWVudCB0aGUgY3VycmVudGx5IHJ1bm5pbmcgcXVlcnkncyBkYXRldGltZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTozOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzE6ImUuZy4gIkNvbnRhY3QiLCAiQWNjb3VudCIsIGV0Yy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6InR5cGUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo3NjoidGhlIGxhc3QgcmVjb3JkJ3MgbW9kaWZpZWQgZGF0ZXRpbWUsIG9yIHRoZSBjdXJyZW50IHRpbWUgaWYgdGhlcmUgaXNuJ3Qgb25lLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MTA6Ilx0aW1lc3RhbXAiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo5OiJ0aW1lc3RhbXAiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoyNDoibmV4dF9xdWVyeV9tb2RpZmllZF9kYXRlIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NDU6ImlzIHRoZSBmaWVsZG1hcCBJRCB0aGF0IGdvZXMgd2l0aCB0aGlzIHF1ZXJ5LiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTE6ImZpZWxkbWFwX2lkIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo2NjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6aW5jcmVtZW50X2N1cnJlbnRfdHlwZV9kYXRldGltZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MzE6ImluY3JlbWVudF9jdXJyZW50X3R5cGVfZGF0ZXRpbWUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6InR5cGUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoyNDoibmV4dF9xdWVyeV9tb2RpZmllZF9kYXRlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czoyOiInJyI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjExOiJmaWVsZG1hcF9pZCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMjE2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjIyNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTI6IlxPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGw6OmNyZWF0ZV9vYmplY3RfbWFwKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo3MToiQ3JlYXRlIGFuIG9iamVjdCBtYXAgYmV0d2VlbiBhIFNhbGVzZm9yY2Ugb2JqZWN0IGFuZCBhIFdvcmRQcmVzcyBvYmplY3QiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6NDp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM4OiJBcnJheSBvZiB0aGUgc2FsZXNmb3JjZSBvYmplY3QncyBkYXRhLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE3OiJzYWxlc2ZvcmNlX29iamVjdCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQzOiJVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIFdvcmRQcmVzcyBvYmplY3QuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMjoid29yZHByZXNzX2lkIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6OTM6IlRoZSByb3cgdGhhdCBtYXBzIHRoZSBvYmplY3QgdHlwZXMgdG9nZXRoZXIsIGluY2x1ZGluZyB3aGljaCBmaWVsZHMgbWF0Y2ggd2hpY2ggb3RoZXIgZmllbGRzLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEzOiJmaWVsZF9tYXBwaW5nIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjM7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NjA6IiR3cGRiLT5pbnNlcnRfaWQgVGhpcyBpcyB0aGUgZGF0YWJhc2Ugcm93IGZvciB0aGUgbWFwIG9iamVjdCI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1MjoiXE9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbDo6Y3JlYXRlX29iamVjdF9tYXAoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE3OiJjcmVhdGVfb2JqZWN0X21hcCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTc6InNhbGVzZm9yY2Vfb2JqZWN0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTI6IndvcmRwcmVzc19pZCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEzOiJmaWVsZF9tYXBwaW5nIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjIzNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyNTE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjUwOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjppc19wdWxsX2FsbG93ZWQoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjQzOiJGaW5kIG91dCBpZiBwdWxsIGlzIGFsbG93ZWQgZm9yIHRoaXMgcmVjb3JkIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjY6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyMzoiU2FsZXNmb3JjZSBvYmplY3QgdHlwZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjExOiJvYmplY3RfdHlwZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM4OiJBcnJheSBvZiB0aGUgc2FsZXNmb3JjZSBvYmplY3QncyBkYXRhLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjY6Im9iamVjdCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToyO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjMyOiJUaGUgY3VycmVudCBvcGVyYXRpb24ncyB0cmlnZ2VyLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTU6InNmX3N5bmNfdHJpZ2dlciI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTozO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQ0OiJ0aGUgZmllbGRtYXAgdGhhdCBtYXBzIHRoZSB0d28gb2JqZWN0IHR5cGVzLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE4OiJzYWxlc2ZvcmNlX21hcHBpbmciO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6NDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozMDoidGhlIHRyaWdnZXJzIHRoYXQgYXJlIGVuYWJsZWQuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTc6Im1hcF9zeW5jX3RyaWdnZXJzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjU7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6ODM6IiRwdWxsX2FsbG93ZWQgV2hldGhlciBhbGwgdGhpcyBzdHVmZiBhbGxvd3MgdGhlICRyZXN1bHQgdG8gYmUgcHVsbGVkIGludG8gV29yZFByZXNzIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUwOiJcT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdWxsOjppc19wdWxsX2FsbG93ZWQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJpc19wdWxsX2FsbG93ZWQiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjU6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjExOiJvYmplY3RfdHlwZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjY6Im9iamVjdCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjE1OiJzZl9zeW5jX3RyaWdnZXIiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjM7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxODoic2FsZXNmb3JjZV9tYXBwaW5nIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aTo0O086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTc6Im1hcF9zeW5jX3RyaWdnZXJzIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjI2MztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyOTM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX19czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHVzZWRUcmFpdHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMjk1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBtZXRhZGF0YSI7YTowOnt9fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGludGVyZmFjZXMiO2E6MDp7fXM6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAdHJhaXRzIjthOjA6e31zOjQwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGVudW1zIjthOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG1ldGFkYXRhIjthOjA6e319";