1737877738
waR3U4bTeM%3Ac23130d9f2401a6b3d8e8cc0b318d5f5-251ed3a3bb1256726d938883353287e4
s:494048:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Njk6IkNyZWF0ZSBkZWZhdWx0IFdvcmRQcmVzcyBhZG1pbiBmdW5jdGlvbmFsaXR5IHRvIGNvbmZpZ3VyZSB0aGUgcGx1Z2luLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjU6ImNsYXNzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyMDoiT2JqZWN0X1N5bmNfU2ZfQWRtaW4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjE7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjc6InBhY2thZ2UiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjIyOiJPYmplY3RfU3luY19TYWxlc2ZvcmNlIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBoYXNoIjtzOjMyOiIyNTFlZDNhM2JiMTI1NjcyNmQ5Mzg4ODMzNTMyODdlNCI7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjMwOiJjbGFzcy1vYmplY3Qtc3luYy1zZi1hZG1pbi5waHAiO3M6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAcGF0aCI7czozODoiY2xhc3Nlcy9jbGFzcy1vYmplY3Qtc3luYy1zZi1hZG1pbi5waHAiO3M6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAc291cmNlIjtzOjEwNzM4ODoiPD9waHAKLyoqCiAqIENyZWF0ZSBkZWZhdWx0IFdvcmRQcmVzcyBhZG1pbiBmdW5jdGlvbmFsaXR5IHRvIGNvbmZpZ3VyZSB0aGUgcGx1Z2luLgogKgogKiBAY2xhc3MgICBPYmplY3RfU3luY19TZl9BZG1pbgogKiBAcGFja2FnZSBPYmplY3RfU3luY19TYWxlc2ZvcmNlCiAqLwoKZGVmaW5lZCggJ0FCU1BBVEgnICkgfHwgZXhpdDsKCi8qKgogKiBPYmplY3RfU3luY19TZl9BZG1pbiBjbGFzcy4KICovCmNsYXNzIE9iamVjdF9TeW5jX1NmX0FkbWluIHsKCgkvKioKCSAqIEN1cnJlbnQgdmVyc2lvbiBvZiB0aGUgcGx1Z2luCgkgKgoJICogQHZhciBzdHJpbmcKCSAqLwoJcHVibGljICR2ZXJzaW9uOwoKCS8qKgoJICogVGhlIG1haW4gcGx1Z2luIGZpbGUKCSAqCgkgKiBAdmFyIHN0cmluZwoJICovCglwdWJsaWMgJGZpbGU7CgoJLyoqCgkgKiBHbG9iYWwgb2JqZWN0IG9mIGAkd3BkYmAsIHRoZSBXb3JkUHJlc3MgZGF0YWJhc2UKCSAqCgkgKiBAdmFyIG9iamVjdAoJICovCglwdWJsaWMgJHdwZGI7CgoJLyoqCgkgKiBUaGUgcGx1Z2luJ3Mgc2x1ZyBzbyB3ZSBjYW4gaW5jbHVkZSBpdCB3aGVuIG5lY2Vzc2FyeQoJICoKCSAqIEB2YXIgc3RyaW5nCgkgKi8KCXB1YmxpYyAkc2x1ZzsKCgkvKioKCSAqIFRoZSBwbHVnaW4ncyBwcmVmaXggd2hlbiBzYXZpbmcgb3B0aW9ucyB0byB0aGUgZGF0YWJhc2UKCSAqCgkgKiBAdmFyIHN0cmluZwoJICovCglwdWJsaWMgJG9wdGlvbl9wcmVmaXg7CgoJLyoqCgkgKiBTdWZmaXggZm9yIGdyb3VwIG5hbWUgaW4gQWN0aW9uU2NoZWR1bGVyCgkgKgoJICogQHZhciBzdHJpbmcKCSAqLwoJcHVibGljICRhY3Rpb25fZ3JvdXBfc3VmZml4OwoKCS8qKgoJICogTG9naW4gY3JlZGVudGlhbHMgZm9yIHRoZSBTYWxlc2ZvcmNlIEFQSTsgY29tZXMgZnJvbSB3cC1jb25maWcgb3IgZnJvbSB0aGUgcGx1Z2luIHNldHRpbmdzCgkgKgoJICogQHZhciBhcnJheQoJICovCglwdWJsaWMgJGxvZ2luX2NyZWRlbnRpYWxzOwoKCS8qKgoJICogQXJyYXkgb2Ygd2hhdCBjbGFzc2VzIGluIHRoZSBwbHVnaW4gY2FuIGJlIHNjaGVkdWxlZCB0byBvY2N1ciB3aXRoIGB3cF9jcm9uYCBldmVudHMKCSAqCgkgKiBAdmFyIGFycmF5CgkgKi8KCXB1YmxpYyAkc2NoZWR1bGFibGVfY2xhc3NlczsKCgkvKioKCSAqIE9iamVjdF9TeW5jX1NmX1F1ZXVlIGNsYXNzCgkgKgoJICogQHZhciBvYmplY3QKCSAqLwoJcHVibGljICRxdWV1ZTsKCgkvKioKCSAqIE9iamVjdF9TeW5jX1NmX0xvZ2dpbmcgY2xhc3MKCSAqCgkgKiBAdmFyIG9iamVjdAoJICovCglwdWJsaWMgJGxvZ2dpbmc7CgoJLyoqCgkgKiBPYmplY3RfU3luY19TZl9NYXBwaW5nIGNsYXNzCgkgKgoJICogQHZhciBvYmplY3QKCSAqLwoJcHVibGljICRtYXBwaW5nczsKCgkvKioKCSAqIE9iamVjdF9TeW5jX1NmX1dvcmRQcmVzcyBjbGFzcwoJICoKCSAqIEB2YXIgb2JqZWN0CgkgKi8KCXB1YmxpYyAkd29yZHByZXNzOwoKCS8qKgoJICogT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZSBjbGFzcwoJICogVGhpcyBjb250YWlucyBTYWxlc2ZvcmNlIEFQSSBtZXRob2RzCgkgKgoJICogQHZhciBhcnJheQoJICovCglwdWJsaWMgJHNhbGVzZm9yY2U7CgoJLyoqCgkgKiBPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1c2ggY2xhc3MKCSAqCgkgKiBAdmFyIG9iamVjdAoJICovCglwdWJsaWMgJHB1c2g7CgoJLyoqCgkgKiBPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGwgY2xhc3MKCSAqCgkgKiBAdmFyIG9iamVjdAoJICovCglwdWJsaWMgJHB1bGw7CgoJLyoqCgkgKiBPYmplY3RfU3luY19TZl9Xb3JkUHJlc3NfVHJhbnNpZW50IGNsYXNzCgkgKgoJICogQHZhciBvYmplY3QKCSAqLwoJcHJpdmF0ZSAkc2Z3cF90cmFuc2llbnRzOwoKCS8qKgoJICogVVJMIGZyYWdtZW50IGZvciB0aGUgcGx1Z2luJ3Mgc2V0dGluZ3MgcGFnZQoJICoKCSAqIEB2YXIgc3RyaW5nCgkgKi8KCXByaXZhdGUgJGFkbWluX3NldHRpbmdzX3VybF9wYXJhbTsKCgkvKioKCSAqIERhdGEgZm9yIGFkbWluIG5vdGljZXMKCSAqCgkgKiBAdmFyIGFycmF5CgkgKi8KCXB1YmxpYyAkbm90aWNlc19kYXRhOwoKCS8qKgoJICogU2FsZXNmb3JjZSBhY2Nlc3MgdG9rZW4KCSAqCgkgKiBAdmFyIHN0cmluZwoJICovCglwcml2YXRlICRhY2Nlc3NfdG9rZW47CgoJLyoqCgkgKiBTYWxlc2ZvcmNlIGluc3RhbmNlIFVSTAoJICoKCSAqIEB2YXIgc3RyaW5nCgkgKi8KCXByaXZhdGUgJGluc3RhbmNlX3VybDsKCgkvKioKCSAqIFNhbGVzZm9yY2UgcmVmcmVzaCB0b2tlbgoJICoKCSAqIEB2YXIgc3RyaW5nCgkgKi8KCXByaXZhdGUgJHJlZnJlc2hfdG9rZW47CgoJLyoqCgkgKiBEZWZhdWx0IHBhdGggZm9yIHRoZSBTYWxlc2ZvcmNlIGF1dGhvcml6ZSBVUkwKCSAqCgkgKiBAdmFyIHN0cmluZwoJICovCglwdWJsaWMgJGRlZmF1bHRfYXV0aG9yaXplX3VybF9wYXRoOwoKCS8qKgoJICogRGVmYXVsdCBwYXRoIGZvciB0aGUgU2FsZXNmb3JjZSB0b2tlbiBVUkwKCSAqCgkgKiBAdmFyIHN0cmluZwoJICovCglwdWJsaWMgJGRlZmF1bHRfdG9rZW5fdXJsX3BhdGg7CgoJLyoqCgkgKiBXaGF0IHZlcnNpb24gb2YgdGhlIFNhbGVzZm9yY2UgQVBJIHNob3VsZCBiZSB0aGUgZGVmYXVsdCBvbiB0aGUgc2V0dGluZ3Mgc2NyZWVuLgoJICogVXNlcnMgY2FuIGVkaXQgd2hhdCB2ZXJzaW9uIGlzIHVzZWQsIGJ1dCB0aGV5IHdvbid0IHNlZSBhIGNvcnJlY3QgbGlzdCBvZiBhbGwgdGhlaXIgYXZhaWxhYmxlIHZlcnNpb25zIHVudGlsIFdvcmRQcmVzcyBoYXMKCSAqIGJlZW4gYXV0aGVudGljYXRlZCB3aXRoIFNhbGVzZm9yY2UuCgkgKgoJICogQHZhciBzdHJpbmcKCSAqIEBkZXByZWNhdGVkIGFzIG9mIDIuMi4wOyB3aWxsIGJlIHJlbW92ZWQgaW4gdmVyc2lvbiAzLjAuIFRoaXMgcHJvcGVydHkgd2lsbCBzdGF5IHVudGlsIDMuMC4wIGJlY2F1c2UgaXQgaXMgYSBwdWJsaWMgdmFsdWUgYW5kIGl0IGNvdWxkIGJlIGFjY2Vzc2VkIGJ5IG90aGVyIGNvZGUuCgkgKi8KCXB1YmxpYyAkZGVmYXVsdF9hcGlfdmVyc2lvbjsKCgkvKioKCSAqIERlZmF1bHQgbWF4IG51bWJlciBvZiBwdWxsIHJlY29yZHMuIFVzZXJzIGNhbiBlZGl0IHRoaXMuCgkgKgoJICogQHZhciBpbnQKCSAqLwoJcHVibGljICRkZWZhdWx0X3B1bGxfbGltaXQ7CgoJLyoqCgkgKiBEZWZhdWx0IHRocm90dGxlIGZvciBob3cgb2Z0ZW4gdG8gcHVsbCBmcm9tIFNhbGVzZm9yY2UuIFVzZXJzIGNhbiBlZGl0IHRoaXMuCgkgKgoJICogQHZhciBpbnQKCSAqLwoJcHVibGljICRkZWZhdWx0X3B1bGxfdGhyb3R0bGU7CgoJLyoqCgkgKiBEZWZhdWx0IGZvciB3aGV0aGVyIHRvIGxpbWl0IHRvIHRyaWdnZXJhYmxlIGl0ZW1zLiBVc2VycyBjYW4gZWRpdCB0aGlzLgoJICoKCSAqIEB2YXIgYm9vbAoJICovCglwdWJsaWMgJGRlZmF1bHRfdHJpZ2dlcmFibGU7CgoJLyoqCgkgKiBEZWZhdWx0IGZvciB3aGV0aGVyIHRvIGxpbWl0IHRvIGl0ZW1zIHRoYXQgY2FuIGJlIHVwZGF0ZWQuIFVzZXJzIGNhbiBlZGl0IHRoaXMuCgkgKgoJICogQHZhciBib29sCgkgKi8KCXB1YmxpYyAkZGVmYXVsdF91cGRhdGVhYmxlOwoKCS8qKgoJICogQ29uc3RydWN0b3IgZm9yIGFkbWluIGNsYXNzCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpIHsKCQkkdGhpcy0+dmVyc2lvbiAgICAgICAgICAgICA9IG9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCktPnZlcnNpb247CgkJJHRoaXMtPmZpbGUgICAgICAgICAgICAgICAgPSBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpLT5maWxlOwoJCSR0aGlzLT53cGRiICAgICAgICAgICAgICAgID0gb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2UoKS0+d3BkYjsKCQkkdGhpcy0+c2x1ZyAgICAgICAgICAgICAgICA9IG9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCktPnNsdWc7CgkJJHRoaXMtPm9wdGlvbl9wcmVmaXggICAgICAgPSBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpLT5vcHRpb25fcHJlZml4OwoJCSR0aGlzLT5hY3Rpb25fZ3JvdXBfc3VmZml4ID0gb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2UoKS0+YWN0aW9uX2dyb3VwX3N1ZmZpeDsKCgkJJHRoaXMtPmxvZ2luX2NyZWRlbnRpYWxzICAgPSBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpLT5sb2dpbl9jcmVkZW50aWFsczsKCQkkdGhpcy0+d29yZHByZXNzICAgICAgICAgICA9IG9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCktPndvcmRwcmVzczsKCQkkdGhpcy0+c2FsZXNmb3JjZSAgICAgICAgICA9IG9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCktPnNhbGVzZm9yY2U7CgkJJHRoaXMtPm1hcHBpbmdzICAgICAgICAgICAgPSBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpLT5tYXBwaW5nczsKCQkkdGhpcy0+cHVzaCAgICAgICAgICAgICAgICA9IG9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCktPnB1c2g7CgkJJHRoaXMtPnB1bGwgICAgICAgICAgICAgICAgPSBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpLT5wdWxsOwoJCSR0aGlzLT5sb2dnaW5nICAgICAgICAgICAgID0gb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2UoKS0+bG9nZ2luZzsKCQkkdGhpcy0+c2NoZWR1bGFibGVfY2xhc3NlcyA9IG9iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlKCktPnNjaGVkdWxhYmxlX2NsYXNzZXM7CgkJJHRoaXMtPnF1ZXVlICAgICAgICAgICAgICAgPSBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZSgpLT5xdWV1ZTsKCgkJLy8gc2V0IHRoZSBTYWxlc2ZvcmNlIEFQSSB2ZXJzaW9uLgoJCS8vIGFzIG9mIHZlcnNpb24gMi4yLjAsIHRoaXMgaXMgc2V0IGJ5IHRoZSBwbHVnaW4gYW5kIGlzIG5vdCBjb25maWd1cmFibGUgaW4gdGhlIGludGVyZmFjZS4KCQkvLyB0aGlzIGNsYXNzIHZhcmlhYmxlIHdpbGwgYmUgcmVtb3ZlZCBpbiAzLjAuMC4KCQkkdGhpcy0+ZGVmYXVsdF9hcGlfdmVyc2lvbiA9ICR0aGlzLT5sb2dpbl9jcmVkZW50aWFsc1sncmVzdF9hcGlfdmVyc2lvbiddOwoKCQkkdGhpcy0+c2Z3cF90cmFuc2llbnRzICAgICAgICAgID0gb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2UoKS0+d29yZHByZXNzLT5zZndwX3RyYW5zaWVudHM7CgkJJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSA9ICdvYmplY3Qtc3luYy1zYWxlc2ZvcmNlLWFkbWluJzsKCQkkdGhpcy0+bm90aWNlc19kYXRhICAgICAgICAgICAgID0gJHRoaXMtPm5vdGljZXNfZGF0YSgpOwoKCQkvLyBkZWZhdWx0IGF1dGhvcml6ZSB1cmwgcGF0aC4KCQkkdGhpcy0+ZGVmYXVsdF9hdXRob3JpemVfdXJsX3BhdGggPSAnL3NlcnZpY2VzL29hdXRoMi9hdXRob3JpemUnOwoJCS8vIGRlZmF1bHQgdG9rZW4gdXJsIHBhdGguCgkJJHRoaXMtPmRlZmF1bHRfdG9rZW5fdXJsX3BhdGggPSAnL3NlcnZpY2VzL29hdXRoMi90b2tlbic7CgkJLy8gZGVmYXVsdCBwdWxsIHJlY29yZCBsaW1pdC4KCQkkdGhpcy0+ZGVmYXVsdF9wdWxsX2xpbWl0ID0gMjU7CgkJLy8gZGVmYXVsdCBwdWxsIHRocm90dGxlIGZvciBhdm9pZGluZyBnb2luZyBvdmVyIGFwaSBsaW1pdHMuCgkJJHRoaXMtPmRlZmF1bHRfcHVsbF90aHJvdHRsZSA9IDU7CgkJLy8gZGVmYXVsdCBzZXR0aW5nIGZvciB0cmlnZ2VyYWJsZSBpdGVtcy4KCQkkdGhpcy0+ZGVmYXVsdF90cmlnZ2VyYWJsZSA9IHRydWU7CgkJLy8gZGVmYXVsdCBzZXR0aW5nIGZvciB1cGRhdGVhYmxlIGl0ZW1zLgoJCSR0aGlzLT5kZWZhdWx0X3VwZGF0ZWFibGUgPSB0cnVlOwoKCQkkdGhpcy0+YWRkX2FjdGlvbnMoKTsKCX0KCgkvKioKCSAqIENyZWF0ZSB0aGUgYWN0aW9uIGhvb2tzIHRvIGNyZWF0ZSB0aGUgYWRtaW4gcGFnZXMuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBhZGRfYWN0aW9ucygpIHsKCgkJLy8gc2V0dGluZ3MgbGluay4KCQlhZGRfZmlsdGVyKCAncGx1Z2luX2FjdGlvbl9saW5rcycsIGFycmF5KCAkdGhpcywgJ3BsdWdpbl9hY3Rpb25fbGlua3MnICksIDEwLCA1ICk7CgoJCS8vIENTUyBhbmQgSmF2YXNjcmlwdC4KCQlhZGRfYWN0aW9uKCAnYWRtaW5fZW5xdWV1ZV9zY3JpcHRzJywgYXJyYXkoICR0aGlzLCAnYWRtaW5fc2NyaXB0c19hbmRfc3R5bGVzJyApICk7CgoJCS8vIFNldHRpbmdzIEFQSSBmb3JtcyBhbmQgbm90aWNlcy4KCQlhZGRfYWN0aW9uKCAnYWRtaW5fbWVudScsIGFycmF5KCAkdGhpcywgJ2NyZWF0ZV9hZG1pbl9tZW51JyApICk7CgkJYWRkX2FjdGlvbiggJ2FkbWluX2luaXQnLCBhcnJheSggJHRoaXMsICdzYWxlc2ZvcmNlX3NldHRpbmdzX2Zvcm1zJyApICk7CgkJYWRkX2FjdGlvbiggJ2FkbWluX2luaXQnLCBhcnJheSggJHRoaXMsICdkaXNwbGF5X25vdGljZXMnICkgKTsKCQlhZGRfYWN0aW9uKCAnYWRtaW5fcG9zdF9wb3N0X2ZpZWxkbWFwJywgYXJyYXkoICR0aGlzLCAncHJlcGFyZV9maWVsZG1hcF9kYXRhJyApICk7CgkJYWRkX2FjdGlvbiggJ2FkbWluX3Bvc3RfZGVsZXRlX2ZpZWxkbWFwJywgYXJyYXkoICR0aGlzLCAnZGVsZXRlX2ZpZWxkbWFwJyApICk7CgoJCS8vIEFqYXggZm9yIGZpZWxkbWFwIGZvcm1zLgoJCWFkZF9hY3Rpb24oICd3cF9hamF4X2dldF9zYWxlc2ZvcmNlX29iamVjdF9kZXNjcmlwdGlvbicsIGFycmF5KCAkdGhpcywgJ2dldF9zYWxlc2ZvcmNlX29iamVjdF9kZXNjcmlwdGlvbicgKSwgMTAsIDEgKTsKCQlhZGRfYWN0aW9uKCAnd3BfYWpheF9nZXRfc2FsZXNmb3JjZV9vYmplY3RfZmllbGRzJywgYXJyYXkoICR0aGlzLCAnZ2V0X3NhbGVzZm9yY2Vfb2JqZWN0X2ZpZWxkcycgKSwgMTAsIDEgKTsKCQlhZGRfYWN0aW9uKCAnd3BfYWpheF9nZXRfd29yZHByZXNzX29iamVjdF9maWVsZHMnLCBhcnJheSggJHRoaXMsICdnZXRfd29yZHByZXNzX29iamVjdF9maWVsZHMnICksIDEwLCAxICk7CgoJCS8vIEFqYXggZXZlbnRzIHRoYXQgY2FuIGJlIG1hbnVhbGx5IGNhbGxlZC4KCQlhZGRfYWN0aW9uKCAnd3BfYWpheF9wdXNoX3RvX3NhbGVzZm9yY2UnLCBhcnJheSggJHRoaXMsICdwdXNoX3RvX3NhbGVzZm9yY2UnICksIDEwLCAzICk7CgkJYWRkX2FjdGlvbiggJ3dwX2FqYXhfcHVsbF9mcm9tX3NhbGVzZm9yY2UnLCBhcnJheSggJHRoaXMsICdwdWxsX2Zyb21fc2FsZXNmb3JjZScgKSwgMTAsIDIgKTsKCQlhZGRfYWN0aW9uKCAnd3BfYWpheF9yZWZyZXNoX21hcHBlZF9kYXRhJywgYXJyYXkoICR0aGlzLCAncmVmcmVzaF9tYXBwZWRfZGF0YScgKSwgMTAsIDEgKTsKCQlhZGRfYWN0aW9uKCAnd3BfYWpheF9jbGVhcl9zZndwX2NhY2hlJywgYXJyYXkoICR0aGlzLCAnY2xlYXJfc2Z3cF9jYWNoZScgKSApOwoJCWFkZF9hY3Rpb24oICd3cF9hamF4X2RlbGV0ZV9zYWxlc2ZvcmNlX2FwaV92ZXJzaW9uJywgYXJyYXkoICR0aGlzLCAnZGVsZXRlX3NhbGVzZm9yY2VfYXBpX3ZlcnNpb24nICkgKTsKCgkJLy8gd2UgYWRkIGEgU2FsZXNmb3JjZSBib3ggb24gdXNlciBwcm9maWxlcy4KCQlhZGRfYWN0aW9uKCAnZWRpdF91c2VyX3Byb2ZpbGUnLCBhcnJheSggJHRoaXMsICdzaG93X3NhbGVzZm9yY2VfdXNlcl9maWVsZHMnICksIDEwLCAxICk7CgkJYWRkX2FjdGlvbiggJ3Nob3dfdXNlcl9wcm9maWxlJywgYXJyYXkoICR0aGlzLCAnc2hvd19zYWxlc2ZvcmNlX3VzZXJfZmllbGRzJyApLCAxMCwgMSApOwoKCQkvLyBhbmQgd2UgY2FuIHVwZGF0ZSBTYWxlc2ZvcmNlIGZpZWxkcyBvbiB0aGUgdXNlciBwcm9maWxlIGJveC4KCQlhZGRfYWN0aW9uKCAncGVyc29uYWxfb3B0aW9uc191cGRhdGUnLCBhcnJheSggJHRoaXMsICdzYXZlX3NhbGVzZm9yY2VfdXNlcl9maWVsZHMnICksIDEwLCAxICk7CgkJYWRkX2FjdGlvbiggJ2VkaXRfdXNlcl9wcm9maWxlX3VwZGF0ZScsIGFycmF5KCAkdGhpcywgJ3NhdmVfc2FsZXNmb3JjZV91c2VyX2ZpZWxkcycgKSwgMTAsIDEgKTsKCgkJLy8gd2hlbiBlaXRoZXIgZmllbGQgZm9yIHNjaGVkdWxlIHNldHRpbmdzIGNoYW5nZXMuCgkJZm9yZWFjaCAoICR0aGlzLT5zY2hlZHVsYWJsZV9jbGFzc2VzIGFzICRrZXkgPT4gJHZhbHVlICkgewoJCQkvLyBpZiB0aGUgdXNlciBkb2Vzbid0IGhhdmUgYW55IGFjdGlvbiBzY2hlZHVsZSB0YXNrcywgbGV0J3Mgbm90IGxlYXZlIHRoZW0gZW1wdHkuCgkJCWFkZF9maWx0ZXIoICdwcmVfdXBkYXRlX29wdGlvbl8nIC4gJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAka2V5IC4gJ19zY2hlZHVsZV9udW1iZXInLCBhcnJheSggJHRoaXMsICdpbml0aWFsX2FjdGlvbl9zY2hlZHVsZScgKSwgMTAsIDMgKTsKCQkJYWRkX2ZpbHRlciggJ3ByZV91cGRhdGVfb3B0aW9uXycgLiAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICRrZXkgLiAnX3NjaGVkdWxlX3VuaXQnLCBhcnJheSggJHRoaXMsICdpbml0aWFsX2FjdGlvbl9zY2hlZHVsZScgKSwgMTAsIDMgKTsKCgkJCS8vIHRoaXMgaXMgaWYgdGhlIHVzZXIgaXMgY2hhbmdpbmcgdGhlaXIgdGFza3MuCgkJCWFkZF9maWx0ZXIoICd1cGRhdGVfb3B0aW9uXycgLiAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICRrZXkgLiAnX3NjaGVkdWxlX251bWJlcicsIGFycmF5KCAkdGhpcywgJ2NoYW5nZV9hY3Rpb25fc2NoZWR1bGUnICksIDEwLCAzICk7CgkJCWFkZF9maWx0ZXIoICd1cGRhdGVfb3B0aW9uXycgLiAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICRrZXkgLiAnX3NjaGVkdWxlX3VuaXQnLCBhcnJheSggJHRoaXMsICdjaGFuZ2VfYWN0aW9uX3NjaGVkdWxlJyApLCAxMCwgMyApOwoJCX0KCgkJLy8gd2hlbiBBY3Rpb25TY2hlZHVsZXIgcnVucyBpdHMgbWlncmF0aW9uLCByZXNhdmUgdGhlIHNjaGVkdWxlIG9wdGlvbnMuCgkJYWRkX2FjdGlvbiggJ2FjdGlvbl9zY2hlZHVsZXIvbWlncmF0aW9uX2NvbXBsZXRlJywgYXJyYXkoICR0aGlzLCAncmVzYXZlX2FjdGlvbl9zY2hlZHVsZXMnICkgKTsKCgkJLy8gaGFuZGxlIHBvc3QgcmVxdWVzdHMgZm9yIG9iamVjdCBtYXBzLgoJCWFkZF9hY3Rpb24oICdhZG1pbl9wb3N0X2RlbGV0ZV9vYmplY3RfbWFwJywgYXJyYXkoICR0aGlzLCAnZGVsZXRlX29iamVjdF9tYXAnICkgKTsKCQlhZGRfYWN0aW9uKCAnYWRtaW5fcG9zdF9wb3N0X29iamVjdF9tYXAnLCBhcnJheSggJHRoaXMsICdwcmVwYXJlX29iamVjdF9tYXBfZGF0YScgKSApOwoKCQkvLyBpbXBvcnQgYW5kIGV4cG9ydCBwbHVnaW4gZGF0YS4KCQlhZGRfYWN0aW9uKCAnYWRtaW5fcG9zdF9vYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZV9pbXBvcnQnLCBhcnJheSggJHRoaXMsICdpbXBvcnRfanNvbl9maWxlJyApICk7CgkJYWRkX2FjdGlvbiggJ2FkbWluX3Bvc3Rfb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2VfZXhwb3J0JywgYXJyYXkoICR0aGlzLCAnZXhwb3J0X2pzb25fZmlsZScgKSApOwoKCX0KCgkvKioKCSAqIERpc3BsYXkgYSBTZXR0aW5ncyBsaW5rIG9uIHRoZSBtYWluIFBsdWdpbnMgcGFnZQoJICoKCSAqIEBwYXJhbSBhcnJheSAgJGxpbmtzIHRoZSBhcnJheSBvZiBsaW5rcyBmb3IgdGhlIG1haW4gcGx1Z2lucyBwYWdlLgoJICogQHBhcmFtIHN0cmluZyAkZmlsZSB0aGUgZmlsZW5hbWUuCgkgKiBAcmV0dXJuIGFycmF5ICRsaW5rcyB0aGUgYXJyYXkgb2YgbGlua3MgZm9yIHRoZSBtYWluIHBsdWdpbnMgcGFnZQoJICovCglwdWJsaWMgZnVuY3Rpb24gcGx1Z2luX2FjdGlvbl9saW5rcyggJGxpbmtzLCAkZmlsZSApIHsKCQlpZiAoIHBsdWdpbl9iYXNlbmFtZSggJHRoaXMtPmZpbGUgKSA9PT0gJGZpbGUgKSB7CgkJCSRzZXR0aW5ncyA9ICc8YSBocmVmPSInIC4gZ2V0X2FkbWluX3VybCgpIC4gJ29wdGlvbnMtZ2VuZXJhbC5waHA/cGFnZT0nIC4gJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSAuICciPicgLiBfXyggJ1NldHRpbmdzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApIC4gJzwvYT4nOwoJCQlhcnJheV91bnNoaWZ0KCAkbGlua3MsICRzZXR0aW5ncyApOwoJCX0KCQlyZXR1cm4gJGxpbmtzOwoJfQoKCS8qKgoJICogQWRtaW4gc3R5bGVzLiBMb2FkIHRoZSBDU1MgYW5kIEphdmFTY3JpcHQgZm9yIHRoZSBwbHVnaW4ncyBzZXR0aW5ncwoJICovCglwdWJsaWMgZnVuY3Rpb24gYWRtaW5fc2NyaXB0c19hbmRfc3R5bGVzKCkgewoKCQkvLyBEZXZlbG9wZXJzIG1pZ2h0IG5vdCB3YW50IHRvIGJvdGhlciB3aXRoIHNlbGVjdDIgb3Igc2VsZWN0d29vLCBzbyB3ZSBhbGxvdyB0aGF0IHRvIGJlIGNoYW5nZWFibGUuCgkJJHNlbGVjdF9saWJyYXJ5ID0gYXBwbHlfZmlsdGVycyggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAnc2VsZWN0X2xpYnJhcnknLCAnc2VsZWN0d29vJyApOwoKCQkvKgoJCSAqIGV4YW1wbGUgdG8gbW9kaWZ5IHRoZSBzZWxlY3QgbGlicmFyeQoJCSAqIGFkZF9maWx0ZXIoICdvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZV9zZWxlY3RfbGlicmFyeScsICdzZWxlY3RfbGlicmFyeScsIDEwLCAxICk7CgkJICogZnVuY3Rpb24gc2VsZWN0X2xpYnJhcnkoICRzZWxlY3RfbGlicmFyeSApIHsKCQkgKiAJJHNlbGVjdF9saWJyYXJ5ID0gJ3NlbGVjdDInOwoJCSAqICAvLyB0aGlzIGNvdWxkIGFsc28gYmUgZW1wdHk7IGluIHRoYXQgY2FzZSB3ZSB3b3VsZCBqdXN0IHVzZSBkZWZhdWx0IGJyb3dzZXIgc2VsZWN0CgkJICogCXJldHVybiAkc2VsZWN0X2xpYnJhcnk7CgkJICogfQoJCSovCgoJCSRqYXZhc2NyaXB0X2RlcGVuZGVuY2llcyA9IGFycmF5KCAnanF1ZXJ5JyApOwoJCSRjc3NfZGVwZW5kZW5jaWVzICAgICAgICA9IGFycmF5KCk7CgkJaWYgKCAnJyAhPT0gJHNlbGVjdF9saWJyYXJ5ICkgewoJCQl3cF9lbnF1ZXVlX3NjcmlwdCggJHNlbGVjdF9saWJyYXJ5IC4gJ2pzJywgcGx1Z2luc191cmwoICdhc3NldHMvanMvdmVuZG9yLycgLiAkc2VsZWN0X2xpYnJhcnkgLiAnLm1pbi5qcycsICR0aGlzLT5maWxlICksIGFycmF5KCAnanF1ZXJ5JyApLCBmaWxlbXRpbWUoIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICdhc3NldHMvanMvdmVuZG9yLycgLiAkc2VsZWN0X2xpYnJhcnkgLiAnLm1pbi5qcycgKSwgdHJ1ZSApOwoJCQkkamF2YXNjcmlwdF9kZXBlbmRlbmNpZXNbXSA9ICRzZWxlY3RfbGlicmFyeSAuICdqcyc7CgkJCXdwX2VucXVldWVfc3R5bGUoICRzZWxlY3RfbGlicmFyeSAuICdjc3MnLCBwbHVnaW5zX3VybCggJ2Fzc2V0cy9jc3MvdmVuZG9yLycgLiAkc2VsZWN0X2xpYnJhcnkgLiAnLm1pbi5jc3MnLCAkdGhpcy0+ZmlsZSApLCBhcnJheSgpLCBmaWxlbXRpbWUoIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICdhc3NldHMvY3NzL3ZlbmRvci8nIC4gJHNlbGVjdF9saWJyYXJ5IC4gJy5taW4uY3NzJyApLCAnYWxsJyApOwoJCQkkY3NzX2RlcGVuZGVuY2llc1tdID0gJHNlbGVjdF9saWJyYXJ5IC4gJ2Nzcyc7CgkJfQoKCQl3cF9lbnF1ZXVlX3NjcmlwdCggJHRoaXMtPnNsdWcgLiAnLWFkbWluJywgcGx1Z2luc191cmwoICdhc3NldHMvanMvb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UtYWRtaW4ubWluLmpzJywgJHRoaXMtPmZpbGUgKSwgJGphdmFzY3JpcHRfZGVwZW5kZW5jaWVzLCBmaWxlbXRpbWUoIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICdhc3NldHMvanMvb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UtYWRtaW4ubWluLmpzJyApLCB0cnVlICk7CgkJd3BfZW5xdWV1ZV9zdHlsZSggJHRoaXMtPnNsdWcgLiAnLWFkbWluJywgcGx1Z2luc191cmwoICdhc3NldHMvY3NzL29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlLWFkbWluLmNzcycsICR0aGlzLT5maWxlICksICRjc3NfZGVwZW5kZW5jaWVzLCBmaWxlbXRpbWUoIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICdhc3NldHMvY3NzL29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlLWFkbWluLmNzcycgKSwgJ2FsbCcgKTsKCX0KCgkvKioKCSAqIEluaXRpYWwgcmVjdXJyaW5nIHRhc2tzIGZvciBBY3Rpb25TY2hlZHVsZXIKCSAqCgkgKiBAcGFyYW0gc3RyaW5nICRuZXdfc2NoZWR1bGUgdGhlIG5ldywgdW5zZXJpYWxpemVkIG9wdGlvbiB2YWx1ZS4KCSAqIEBwYXJhbSBzdHJpbmcgJG9sZF9zY2hlZHVsZSB0aGUgb2xkIG9wdGlvbiB2YWx1ZS4KCSAqIEBwYXJhbSBzdHJpbmcgJG9wdGlvbl9uYW1lIG9wdGlvbiBuYW1lLgoJICogQHJldHVybiBzdHJpbmcgJG5ld19zY2hlZHVsZQoJICovCglwdWJsaWMgZnVuY3Rpb24gaW5pdGlhbF9hY3Rpb25fc2NoZWR1bGUoICRuZXdfc2NoZWR1bGUsICRvbGRfc2NoZWR1bGUsICRvcHRpb25fbmFtZSApIHsKCgkJLy8gZ2V0IHRoZSBjdXJyZW50IHNjaGVkdWxlIG5hbWUgZnJvbSB0aGUgdGFzaywgYmFzZWQgb24gcGF0dGVybiBpbiB0aGUgZm9yZWFjaC4KCQlwcmVnX21hdGNoKCAnLycgLiAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICcoLiopX3NjaGVkdWxlLycsICRvcHRpb25fbmFtZSwgJG1hdGNoZXMgKTsKCQkkc2NoZWR1bGVfbmFtZSAgICAgPSAkbWF0Y2hlc1sxXTsKCQkkYWN0aW9uX2dyb3VwX25hbWUgPSAkc2NoZWR1bGVfbmFtZSAuICR0aGlzLT5hY3Rpb25fZ3JvdXBfc3VmZml4OwoKCQkvLyBtYWtlIHN1cmUgdGhlcmUgYXJlIG5vIHRhc2tzIGFscmVhZHkuCgkJJGN1cnJlbnRfdGFza3MgPSBhc19nZXRfc2NoZWR1bGVkX2FjdGlvbnMoCgkJCWFycmF5KAoJCQkJJ2hvb2snICA9PiAkdGhpcy0+c2NoZWR1bGFibGVfY2xhc3Nlc1sgJHNjaGVkdWxlX25hbWUgXVsnaW5pdGlhbGl6ZXInXSwKCQkJCSdncm91cCcgPT4gJGFjdGlvbl9ncm91cF9uYW1lLAoJCQkpLAoJCQlBUlJBWV9BCgkJKTsKCgkJLy8gZXhpdCBpZiB0aGVyZSBhcmUgYWxyZWFkeSB0YXNrczsgdGhleSdsbCBiZSBzYXZlZCBpZiB0aGUgb3B0aW9uIGRhdGEgY2hhbmdlZC4KCQlpZiAoICEgZW1wdHkoICRjdXJyZW50X3Rhc2tzICkgKSB7CgkJCXJldHVybiAkbmV3X3NjaGVkdWxlOwoJCX0KCgkJJHRoaXMtPnNldF9hY3Rpb25fc2NoZWR1bGUoICRzY2hlZHVsZV9uYW1lLCAkYWN0aW9uX2dyb3VwX25hbWUgKTsKCgkJcmV0dXJuICRuZXdfc2NoZWR1bGU7CgoJfQoKCS8qKgoJICogVXBkYXRlIHJlY3VycmluZyB0YXNrcyBmb3IgQWN0aW9uU2NoZWR1bGVyIGlmIG9wdGlvbnMgY2hhbmdlCgkgKgoJICogQHBhcmFtIHN0cmluZyAkb2xkX3NjaGVkdWxlIHRoZSBvbGQgb3B0aW9uIHZhbHVlLgoJICogQHBhcmFtIHN0cmluZyAkbmV3X3NjaGVkdWxlIHRoZSBuZXcsIHVuc2VyaWFsaXplZCBvcHRpb24gdmFsdWUuCgkgKiBAcGFyYW0gc3RyaW5nICRvcHRpb25fbmFtZSBvcHRpb24gbmFtZS4KCSAqLwoJcHVibGljIGZ1bmN0aW9uIGNoYW5nZV9hY3Rpb25fc2NoZWR1bGUoICRvbGRfc2NoZWR1bGUsICRuZXdfc2NoZWR1bGUsICRvcHRpb25fbmFtZSApIHsKCgkJLy8gdGhpcyBtZXRob2QgZG9lcyBub3QgcnVuIGlmIHRoZSBvcHRpb24ncyBkYXRhIGlzIHVuY2hhbmdlZC4KCgkJLy8gZ2V0IHRoZSBjdXJyZW50IHNjaGVkdWxlIG5hbWUgZnJvbSB0aGUgdGFzaywgYmFzZWQgb24gcGF0dGVybiBpbiB0aGUgZm9yZWFjaC4KCQlwcmVnX21hdGNoKCAnLycgLiAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICcoLiopX3NjaGVkdWxlLycsICRvcHRpb25fbmFtZSwgJG1hdGNoZXMgKTsKCQkkc2NoZWR1bGVfbmFtZSAgICAgPSAkbWF0Y2hlc1sxXTsKCQkkYWN0aW9uX2dyb3VwX25hbWUgPSAkc2NoZWR1bGVfbmFtZSAuICR0aGlzLT5hY3Rpb25fZ3JvdXBfc3VmZml4OwoKCQkkdGhpcy0+c2V0X2FjdGlvbl9zY2hlZHVsZSggJHNjaGVkdWxlX25hbWUsICRhY3Rpb25fZ3JvdXBfbmFtZSApOwoKCX0KCgkvKioKCSAqIFNldCB1cCByZWN1cnJpbmcgdGFza3MgZm9yIEFjdGlvblNjaGVkdWxlcgoJICoKCSAqIEBwYXJhbSBzdHJpbmcgJHNjaGVkdWxlX25hbWUgdGhlIG5hbWUgb2YgdGhlIHNjaGVkdWxlLgoJICogQHBhcmFtIHN0cmluZyAkYWN0aW9uX2dyb3VwX25hbWUgdGhlIGdyb3VwJ3MgbmFtZS4KCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBzZXRfYWN0aW9uX3NjaGVkdWxlKCAkc2NoZWR1bGVfbmFtZSwgJGFjdGlvbl9ncm91cF9uYW1lICkgewoJCS8vIGV4aXQgaWYgdGhlcmUgaXMgbm8gaW5pdGlhbGl6ZXIgcHJvcGVydHkgb24gdGhpcyBzY2hlZHVsZS4KCQlpZiAoICEgaXNzZXQoICR0aGlzLT5zY2hlZHVsYWJsZV9jbGFzc2VzWyAkc2NoZWR1bGVfbmFtZSBdWydpbml0aWFsaXplciddICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCS8vIGNhbmNlbCBwcmV2aW91cyB0YXNrLgoJCSR0aGlzLT5xdWV1ZS0+Y2FuY2VsKAoJCQkkdGhpcy0+c2NoZWR1bGFibGVfY2xhc3Nlc1sgJHNjaGVkdWxlX25hbWUgXVsnaW5pdGlhbGl6ZXInXSwKCQkJYXJyYXkoKSwKCQkJJGFjdGlvbl9ncm91cF9uYW1lCgkJKTsKCgkJLy8gY3JlYXRlIG5ldyByZWN1cnJpbmcgdGFzayBmb3IgQWN0aW9uU2NoZWR1bGVyIHRvIGNoZWNrIGZvciBkYXRhIHRvIHB1bGwgZnJvbSBTYWxlc2ZvcmNlLgoJCSR0aGlzLT5xdWV1ZS0+c2NoZWR1bGVfcmVjdXJyaW5nKAoJCQl0aW1lKCksIC8vIHBsdWdpbiBzZWVtcyB0byBleHBlY3QgVVRDLgoJCQkkdGhpcy0+cXVldWUtPmdldF9mcmVxdWVuY3koICRzY2hlZHVsZV9uYW1lLCAnc2Vjb25kcycgKSwKCQkJJHRoaXMtPnNjaGVkdWxhYmxlX2NsYXNzZXNbICRzY2hlZHVsZV9uYW1lIF1bJ2luaXRpYWxpemVyJ10sCgkJCWFycmF5KCksCgkJCSRhY3Rpb25fZ3JvdXBfbmFtZQoJCSk7Cgl9CgoJLyoqCgkgKiBXaGVuIGl0IGZpbmlzaGVzIGl0cyBtaWdyYXRpb24sIHJlc2F2ZSB0aGUgc2NoZWR1bGVkIHRhc2tzIGZvciBBY3Rpb25TY2hlZHVsZXIuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiByZXNhdmVfYWN0aW9uX3NjaGVkdWxlcygpIHsKCQkvLyBmb3IgZWFjaCBzY2hlZHVsYWJsZSBhY3Rpb24sIGdvIGFoZWFkIGFuZCByZXNhdmUgaXQuCgkJJHNjaGVkdWxlc191cGRhdGVkICA9IGFycmF5KCk7CgkJJHNjaGVkdWxlc19yZXN0b3JlZCA9IGFycmF5KCk7CgkJZm9yZWFjaCAoICR0aGlzLT5zY2hlZHVsYWJsZV9jbGFzc2VzIGFzICRrZXkgPT4gJHZhbHVlICkgewoJCQkvLyBtYWtlIHN1cmUgaXQgaGFzIGFuIGluaXRpYWxpemVyIHByb3BlcnR5OyB0aGlzIGlzIHVzZWQgb24gcmVjdXJyaW5nIHRhc2tzLgoJCQlpZiAoIGlzc2V0KCAkdmFsdWVbJ2luaXRpYWxpemVyJ10gKSApIHsKCQkJCS8vIHRvZ2dsZSB0aGUgc2NoZWR1bGUgbnVtYmVyIHNldHRpbmcuCgkJCQkkc2NoZWR1bGVfb3B0aW9uX25hbWUgID0gJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAka2V5IC4gJ19zY2hlZHVsZV9udW1iZXInOwoJCQkJJHByZXZpb3VzX29wdGlvbl92YWx1ZSA9IGdldF9vcHRpb24oICRzY2hlZHVsZV9vcHRpb25fbmFtZSwgMCApOwoJCQkJJHByZXZpb3VzX29wdGlvbl92YWx1ZSA9IGZpbHRlcl92YXIoICRwcmV2aW91c19vcHRpb25fdmFsdWUsIEZJTFRFUl9TQU5JVElaRV9OVU1CRVJfSU5UICk7CgkJCQkkbmV3X29wdGlvbl92YWx1ZSAgICAgID0gJHByZXZpb3VzX29wdGlvbl92YWx1ZSArIDE7CgkJCQkkc2NoZWR1bGVfdXBkYXRlZCAgICAgID0gdXBkYXRlX29wdGlvbiggJHNjaGVkdWxlX29wdGlvbl9uYW1lLCAkbmV3X29wdGlvbl92YWx1ZSApOwoJCQkJaWYgKCB0cnVlID09PSAkc2NoZWR1bGVfdXBkYXRlZCApIHsKCQkJCQkkc2NoZWR1bGVzX3VwZGF0ZWRbXSA9ICRrZXk7CgkJCQkJJHNjaGVkdWxlX3Jlc3RvcmVkICAgPSB1cGRhdGVfb3B0aW9uKCAkc2NoZWR1bGVfb3B0aW9uX25hbWUsICRwcmV2aW91c19vcHRpb25fdmFsdWUgKTsKCQkJCQlpZiAoIHRydWUgPT09ICRzY2hlZHVsZV9yZXN0b3JlZCApIHsKCQkJCQkJJHNjaGVkdWxlc19yZXN0b3JlZFtdID0gJGtleTsKCQkJCQl9CgkJCQl9CgkJCX0KCQl9CgoJCS8vIGNyZWF0ZSBhIGxvZyBlbnRyeSBmcm9tIHRoZSB1cGRhdGVkIHNjaGVkdWxlZCB0YXNrcy4KCQlpZiAoICEgZW1wdHkoICRzY2hlZHVsZXNfdXBkYXRlZCApIHx8ICEgZW1wdHkoICRzY2hlZHVsZXNfcmVzdG9yZWQgKSApIHsKCQkJJHN0YXR1cyA9ICdzdWNjZXNzJzsKCQl9IGVsc2UgewoJCQkkc3RhdHVzID0gJ2Vycm9yJzsKCQl9CgoJCSRib2R5ID0gc3ByaW50ZiggZXNjX2h0bWxfXyggJ1RoZXNlIGFyZSB0aGUgc2NoZWR1bGVkIHRhc2tzIHRoYXQgd2VyZSB1cGRhdGVkOiAnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgLiAnPHVsPicgKTsKCQlmb3JlYWNoICggJHNjaGVkdWxlc191cGRhdGVkIGFzICRzY2hlZHVsZV91cGRhdGVkICkgewoJCQkkYm9keSAuPSBzcHJpbnRmKAoJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBzY2hlZHVsZSBuYW1lLgoJCQkJJzxsaT4nIC4gZXNjX2h0bWxfXyggJ1NjaGVkdWxlIG5hbWU6ICUxJHMuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApIC4gJzwvbGk+JywKCQkJCWVzY19hdHRyKCAkc2NoZWR1bGVfdXBkYXRlZCApCgkJCSk7CgkJfQoJCSRib2R5IC49ICc8L3VsPic7CgoJCSRib2R5IC49IHNwcmludGYoIGVzY19odG1sX18oICdUaGVzZSBhcmUgdGhlIHNjaGVkdWxlZCB0YXNrcyB0aGF0IGhhdmUgdGhlIHNhbWUgZnJlcXVlbmN5IGFzIHRoZXkgaGFkIHByZS1taWdyYXRpb246ICcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSAuICc8dWw+JyApOwoJCWZvcmVhY2ggKCAkc2NoZWR1bGVzX3Jlc3RvcmVkIGFzICRzY2hlZHVsZV9yZXN0b3JlZCApIHsKCQkJJGJvZHkgLj0gc3ByaW50ZigKCQkJCS8vIHRyYW5zbGF0b3JzOiBwbGFjZWhvbGRlcnMgYXJlOiAxKSB0aGUgc2NoZWR1bGUgbmFtZS4KCQkJCSc8bGk+JyAuIGVzY19odG1sX18oICdTY2hlZHVsZSBuYW1lOiAlMSRzLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSAuICc8L2xpPicsCgkJCQllc2NfYXR0ciggJHNjaGVkdWxlX3Jlc3RvcmVkICkKCQkJKTsKCQl9CgkJJGJvZHkgLj0gJzwvdWw+JzsKCgkJJGJvZHkgLj0gc3ByaW50ZiggZXNjX2h0bWxfXyggJ0lmIGFueSB0YXNrcyB3ZXJlIG5vdCB1cGRhdGVkLCBvciB3ZXJlIG5vdCBhYmxlIHRvIGtlZXAgdGhlIHNhbWUgZnJlcXVlbmN5IHRoZXkgaGFkIGJlZm9yZSwgZ28gdG8gdGhlIFNjaGVkdWxpbmcgdGFiIHRvIHVwZGF0ZSB0aGVtLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSApOwoJCSRib2R5IC49IHNwcmludGYoCgkJCS8vIHRyYW5zbGF0b3JzOiAlMSRzIGlzIHRoZSBzY2hlZHVsZSBzZXR0aW5ncyBVUkwuCgkJCXdwX2tzZXNfcG9zdCggJ0lmIGFueSB0YXNrcyB3ZXJlIG5vdCB1cGRhdGVkLCBvciB3ZXJlIG5vdCBhYmxlIHRvIGtlZXAgdGhlIHNhbWUgZnJlcXVlbmN5IHRoZXkgaGFkIGJlZm9yZSwgZ28gdG8gdGhlIDxhIGhyZWY9IicgLiBhZG1pbl91cmwoICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9b2JqZWN0LXN5bmMtc2FsZXNmb3JjZS1hZG1pbiZ0YWI9c2NoZWR1bGUnICkgLiAnIj4lMSRzPC9hPiB0YWIgdG8gdXBkYXRlIHRoZW0uJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQllc2NfaHRtbF9fKCAnU2NoZWR1bGluZycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKQoJCSk7CgoJCSR0aGlzLT5sb2dnaW5nLT5zZXR1cCgKCQkJc3ByaW50ZigKCQkJCS8vIHRyYW5zbGF0b3JzOiAlMSRzIGlzIHRoZSBsb2cgc3RhdHVzLCAlMiRzIGlzIHRoZSBuYW1lIG9mIGEgV29yZFByZXNzIG9iamVjdC4gJTMkcyBpcyB0aGUgaWQgb2YgdGhhdCBvYmplY3QuCgkJCQllc2NfaHRtbF9fKCAnJTEkcyBBY3Rpb25TY2hlZHVsZXI6IHRoZSBBY3Rpb25TY2hlZHVsZXIgbGlicmFyeSBoYXMgY29tcGxldGVkIGl0cyBtaWdyYXRpb24uIFNlZSB0aGUgbG9nIGVudHJ5IGNvbnRlbnQgZm9yIHN0YXR1cyBvbiBlYWNoIHJlY3VycmluZyB0YXNrLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCXVjZmlyc3QoIGVzY19hdHRyKCAkc3RhdHVzICkgKQoJCQkpLAoJCQkkYm9keSwKCQkJMCwKCQkJMCwKCQkJJHN0YXR1cwoJCSk7Cgl9CgoJLyoqCgkgKiBDcmVhdGUgdGhlIFdvcmRQcmVzcyBhZG1pbiBvcHRpb25zIHBhZ2UKCSAqLwoJcHVibGljIGZ1bmN0aW9uIGNyZWF0ZV9hZG1pbl9tZW51KCkgewoJCSR0aXRsZSA9IF9fKCAnU2FsZXNmb3JjZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsKCQlhZGRfb3B0aW9uc19wYWdlKCAkdGl0bGUsICR0aXRsZSwgJ2NvbmZpZ3VyZV9zYWxlc2ZvcmNlJywgJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSwgYXJyYXkoICR0aGlzLCAnc2hvd19hZG1pbl9wYWdlJyApICk7Cgl9CgoJLyoqCgkgKiBSZW5kZXIgdGhlIGFkbWluIHBhZ2VzIGluIFdvcmRQcmVzcy4gVGhpcyBhbHNvIGFsbG93cyBvdGhlciBwbHVnaW5zIHRvIGFkZCB0YWJzIHRvIHRoaXMgcGx1Z2luJ3Mgc2V0dGluZ3Mgc2NyZWVuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBzaG93X2FkbWluX3BhZ2UoKSB7CgkJJGdldF9kYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9HRVQsIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcgKTsKCQllY2hvICc8ZGl2IGNsYXNzPSJ3cmFwIj4nOwoJCWVjaG8gJzxoMT4nIC4gZXNjX2h0bWwoIGdldF9hZG1pbl9wYWdlX3RpdGxlKCkgKSAuICc8L2gxPic7CgkJJGFsbG93ZWQgPSAkdGhpcy0+Y2hlY2tfd29yZHByZXNzX2FkbWluX3Blcm1pc3Npb25zKCk7CgkJaWYgKCBmYWxzZSA9PT0gJGFsbG93ZWQgKSB7CgkJCXJldHVybjsKCQl9CgkJJHRhYnMgPSBhcnJheSgKCQkJJ3NldHRpbmdzJyAgICAgID0+IF9fKCAnU2V0dGluZ3MnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCSdhdXRob3JpemUnICAgICA9PiBfXyggJ0F1dGhvcml6ZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJJ2ZpZWxkbWFwcycgICAgID0+IF9fKCAnRmllbGRtYXBzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQknc2NoZWR1bGUnICAgICAgPT4gX18oICdTY2hlZHVsaW5nJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQknaW1wb3J0LWV4cG9ydCcgPT4gX18oICdJbXBvcnQgJmFtcDsgRXhwb3J0JywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCSk7IC8vIHRoaXMgY3JlYXRlcyB0aGUgdGFicyBmb3IgdGhlIGFkbWluLgoKCQkvLyBvcHRpb25hbGx5IG1ha2UgdGFiKHMpIGZvciBsb2dnaW5nIGFuZCBsb2cgc2V0dGluZ3MuCgkJJGxvZ2dpbmdfZW5hYmxlZCAgICAgID0gZ2V0X29wdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAnZW5hYmxlX2xvZ2dpbmcnLCBmYWxzZSApOwoJCSR0YWJzWydsb2dfc2V0dGluZ3MnXSA9IF9fKCAnTG9nIFNldHRpbmdzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApOwoKCQkkbWFwcGluZ19lcnJvcnMgICAgICAgPSAkdGhpcy0+bWFwcGluZ3MtPmdldF9mYWlsZWRfb2JqZWN0X21hcHMoKTsKCQkkbWFwcGluZ19lcnJvcnNfdG90YWwgPSBpc3NldCggJG1hcHBpbmdfZXJyb3JzWyd0b3RhbCddICkgPyAkbWFwcGluZ19lcnJvcnNbJ3RvdGFsJ10gOiAwOwoJCWlmICggMCA8ICRtYXBwaW5nX2Vycm9yc190b3RhbCApIHsKCQkJJHRhYnNbJ21hcHBpbmdfZXJyb3JzJ10gPSBfXyggJ01hcHBpbmcgRXJyb3JzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApOwoJCX0KCgkJLy8gZmlsdGVyIGZvciBleHRlbmRpbmcgdGhlIHRhYnMgYXZhaWxhYmxlIG9uIHRoZSBwYWdlCgkJLy8gY3VycmVudGx5IGl0IHdpbGwgZ28gaW50byB0aGUgZGVmYXVsdCBzd2l0Y2ggY2FzZSBmb3IgJHRhYi4KCQkkdGFicyA9IGFwcGx5X2ZpbHRlcnMoICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ3NldHRpbmdzX3RhYnMnLCAkdGFicyApOwoKCQkkdGFiID0gaXNzZXQoICRnZXRfZGF0YVsndGFiJ10gKSA/IHNhbml0aXplX2tleSggJGdldF9kYXRhWyd0YWInXSApIDogJ3NldHRpbmdzJzsKCQkkdGhpcy0+dGFicyggJHRhYnMsICR0YWIgKTsKCgkJJGNvbnN1bWVyX2tleSAgICA9ICR0aGlzLT5sb2dpbl9jcmVkZW50aWFsc1snY29uc3VtZXJfa2V5J107CgkJJGNvbnN1bWVyX3NlY3JldCA9ICR0aGlzLT5sb2dpbl9jcmVkZW50aWFsc1snY29uc3VtZXJfc2VjcmV0J107CgkJJGNhbGxiYWNrX3VybCAgICA9ICR0aGlzLT5sb2dpbl9jcmVkZW50aWFsc1snY2FsbGJhY2tfdXJsJ107CgoJCWlmICggdHJ1ZSAhPT0gJHRoaXMtPnNhbGVzZm9yY2VbJ2lzX2F1dGhvcml6ZWQnXSApIHsKCQkJJHVybCAgICAgPSBlc2NfdXJsKCAkY2FsbGJhY2tfdXJsICk7CgkJCSRhbmNob3IgID0gZXNjX2h0bWxfXyggJ0F1dGhvcml6ZSB0YWInLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICk7CgkJCSRtZXNzYWdlID0gc3ByaW50ZiggJ1NhbGVzZm9yY2UgbmVlZHMgdG8gYmUgYXV0aG9yaXplZCB0byBjb25uZWN0IHRvIHRoaXMgd2Vic2l0ZS4gVXNlIHRoZSA8YSBocmVmPSIlcyI+JXM8L2E+IHRvIGNvbm5lY3QuJywgJHVybCwgJGFuY2hvciApOwoJCQlyZXF1aXJlIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICcvdGVtcGxhdGVzL2FkbWluL2Vycm9yLnBocCc7CgkJfQoKCQlpZiAoIDAgPT09IGNvdW50KCAkdGhpcy0+bWFwcGluZ3MtPmdldF9maWVsZG1hcHMoKSApICkgewoJCQkkdXJsICAgICA9IGVzY191cmwoIGdldF9hZG1pbl91cmwoIG51bGwsICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9JyAuICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gLiAnJnRhYj1maWVsZG1hcHMnICkgKTsKCQkJJGFuY2hvciAgPSBlc2NfaHRtbF9fKCAnRmllbGRtYXBzIHRhYicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsKCQkJJG1lc3NhZ2UgPSBzcHJpbnRmKCAnTm8gZmllbGRtYXBzIGV4aXN0IHlldC4gVXNlIHRoZSA8YSBocmVmPSIlcyI+JXM8L2E+IHRvIG1hcCBXb3JkUHJlc3MgYW5kIFNhbGVzZm9yY2Ugb2JqZWN0cyB0byBlYWNoIG90aGVyLicsICR1cmwsICRhbmNob3IgKTsKCQkJcmVxdWlyZSBwbHVnaW5fZGlyX3BhdGgoICR0aGlzLT5maWxlICkgLiAnL3RlbXBsYXRlcy9hZG1pbi9lcnJvci5waHAnOwoJCX0KCgkJdHJ5IHsKCQkJc3dpdGNoICggJHRhYiApIHsKCQkJCWNhc2UgJ2F1dGhvcml6ZSc6CgkJCQkJaWYgKCBpc3NldCggJGdldF9kYXRhWydjb2RlJ10gKSApIHsKCQkJCQkJLy8gdGhpcyBzdHJpbmcgaXMgYW4gb2F1dGggdG9rZW4uCgkJCQkJCSRkYXRhICAgICAgICAgID0gZXNjX2h0bWwoIHdwX3Vuc2xhc2goICRnZXRfZGF0YVsnY29kZSddICkgKTsKCQkJCQkJJGlzX2F1dGhvcml6ZWQgPSAkdGhpcy0+c2FsZXNmb3JjZVsnc2ZhcGknXS0+cmVxdWVzdF90b2tlbiggJGRhdGEgKTsKCQkJCQkJPz4KCQkJCQkJPHNjcmlwdD53aW5kb3cubG9jYXRpb24gPSAnPD9waHAgZWNobyBlc2NfdXJsX3JhdyggJGNhbGxiYWNrX3VybCApOyA/Pic8L3NjcmlwdD4KCQkJCQkJPD9waHAKCQkJCQl9IGVsc2VpZiAoIHRydWUgPT09ICR0aGlzLT5zYWxlc2ZvcmNlWydpc19hdXRob3JpemVkJ10gKSB7CgkJCQkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vYXV0aG9yaXplZC5waHAnOwoJCQkJCQkJJHRoaXMtPnN0YXR1cyggJHRoaXMtPnNhbGVzZm9yY2VbJ3NmYXBpJ10gKTsKCQkJCQl9IGVsc2VpZiAoIHRydWUgPT09IGlzX29iamVjdCggJHRoaXMtPnNhbGVzZm9yY2VbJ3NmYXBpJ10gKSAmJiBpc3NldCggJGNvbnN1bWVyX2tleSApICYmIGlzc2V0KCAkY29uc3VtZXJfc2VjcmV0ICkgKSB7CgkJCQkJCT8+CgkJCQkJCTxwPjxhIGNsYXNzPSJidXR0b24gYnV0dG9uLXByaW1hcnkiIGhyZWY9Ijw/cGhwIGVjaG8gZXNjX3VybCggJHRoaXMtPnNhbGVzZm9yY2VbJ3NmYXBpJ10tPmdldF9hdXRob3JpemF0aW9uX2NvZGUoKSApOyA/PiI+PD9waHAgZWNobyBlc2NfaHRtbF9fKCAnQ29ubmVjdCB0byBTYWxlc2ZvcmNlJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApOyA/PjwvYT48L3A+CgkJCQkJCTw/cGhwCgkJCQkJfSBlbHNlIHsKCQkJCQkJJHVybCAgICA9IGVzY191cmwoIGdldF9hZG1pbl91cmwoIG51bGwsICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9JyAuICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gLiAnJnRhYj1zZXR0aW5ncycgKSApOwoJCQkJCQkkYW5jaG9yID0gZXNjX2h0bWxfXyggJ1NldHRpbmdzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApOwoJCQkJCQkvLyB0cmFuc2xhdG9yczogcGxhY2Vob2xkZXJzIGFyZSBmb3IgdGhlIHNldHRpbmdzIHRhYiBsaW5rOiAxKSB0aGUgdXJsLCBhbmQgMikgdGhlIGFuY2hvciB0ZXh0LgoJCQkJCQkkbWVzc2FnZSA9IHNwcmludGYoIGVzY19odG1sX18oICdTYWxlc2ZvcmNlIG5lZWRzIHRvIGJlIGF1dGhvcml6ZWQgdG8gY29ubmVjdCB0byB0aGlzIHdlYnNpdGUgYnV0IHRoZSBjcmVkZW50aWFscyBhcmUgbWlzc2luZy4gVXNlIHRoZSA8YSBocmVmPSIlMSRzIj4lMiRzPC9hPiB0YWIgdG8gYWRkIHRoZW0uJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLCAkdXJsLCAkYW5jaG9yICk7CgkJCQkJCXJlcXVpcmVfb25jZSBwbHVnaW5fZGlyX3BhdGgoICR0aGlzLT5maWxlICkgLiAnL3RlbXBsYXRlcy9hZG1pbi9lcnJvci5waHAnOwoJCQkJCX0KCQkJCQlicmVhazsKCQkJCWNhc2UgJ2ZpZWxkbWFwcyc6CgkJCQkJaWYgKCBpc3NldCggJGdldF9kYXRhWydtZXRob2QnXSApICkgewoKCQkJCQkJJG1ldGhvZCAgICAgID0gc2FuaXRpemVfa2V5KCAkZ2V0X2RhdGFbJ21ldGhvZCddICk7CgkJCQkJCSRlcnJvcl91cmwgICA9IGdldF9hZG1pbl91cmwoIG51bGwsICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9JyAuICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gLiAnJnRhYj1maWVsZG1hcHMmbWV0aG9kPScgLiAkbWV0aG9kICk7CgkJCQkJCSRzdWNjZXNzX3VybCA9IGdldF9hZG1pbl91cmwoIG51bGwsICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9JyAuICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gLiAnJnRhYj1maWVsZG1hcHMnICk7CgoJCQkJCQkkZGlzYWJsZV9tYXBwZWRfZmllbGRzID0gZ2V0X29wdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAnZGlzYWJsZV9tYXBwZWRfZmllbGRzJywgZmFsc2UgKTsKCQkJCQkJJGRpc2FibGVfbWFwcGVkX2ZpZWxkcyA9IGZpbHRlcl92YXIoICRkaXNhYmxlX21hcHBlZF9maWVsZHMsIEZJTFRFUl9WQUxJREFURV9CT09MRUFOICk7CgkJCQkJCSRmaWVsZG1hcF9jbGFzcyAgICAgICAgPSAnZmllbGRtYXAnOwoJCQkJCQlpZiAoIHRydWUgPT09ICRkaXNhYmxlX21hcHBlZF9maWVsZHMgKSB7CgkJCQkJCQkkZmllbGRtYXBfY2xhc3MgLj0gJyBmaWVsZG1hcC1kaXNhYmxlLW1hcHBlZC1maWVsZHMnOwoJCQkJCQl9CgoJCQkJCQlpZiAoIGlzc2V0KCAkZ2V0X2RhdGFbJ3RyYW5zaWVudCddICkgKSB7CgkJCQkJCQkkdHJhbnNpZW50ID0gc2FuaXRpemVfa2V5KCAkZ2V0X2RhdGFbJ3RyYW5zaWVudCddICk7CgkJCQkJCQkkcG9zdGVkICAgID0gJHRoaXMtPnNmd3BfdHJhbnNpZW50cy0+Z2V0KCAkdHJhbnNpZW50ICk7CgkJCQkJCX0KCgkJCQkJCWlmICggaXNzZXQoICRwb3N0ZWQgKSAmJiBpc19hcnJheSggJHBvc3RlZCApICkgewoJCQkJCQkJJG1hcCA9ICRwb3N0ZWQ7CgkJCQkJCX0gZWxzZWlmICggJ2VkaXQnID09PSAkbWV0aG9kIHx8ICdjbG9uZScgPT09ICRtZXRob2QgfHwgJ2RlbGV0ZScgPT09ICRtZXRob2QgKSB7CgkJCQkJCQkkbWFwID0gJHRoaXMtPm1hcHBpbmdzLT5nZXRfZmllbGRtYXBzKCBpc3NldCggJGdldF9kYXRhWydpZCddICkgPyBzYW5pdGl6ZV9rZXkoICRnZXRfZGF0YVsnaWQnXSApIDogJycgKTsKCQkJCQkJfQoKCQkJCQkJaWYgKCAnYWRkJyA9PT0gJG1ldGhvZCB8fCAoIGlzc2V0KCAkbWFwICkgJiYgaXNfYXJyYXkoICRtYXAgKSAmJiBpc3NldCggJG1hcFsnaWQnXSApICkgKSB7CgkJCQkJCQlpZiAoIGlzc2V0KCAkbWFwICkgJiYgaXNfYXJyYXkoICRtYXAgKSAmJiBpc3NldCggJG1hcFsnaWQnXSApICkgewoJCQkJCQkJCSRsYWJlbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9ICRtYXBbJ2xhYmVsJ107CgkJCQkJCQkJJGZpZWxkbWFwX3N0YXR1cyAgICAgICAgICAgICAgICAgICAgID0gJG1hcFsnZmllbGRtYXBfc3RhdHVzJ107CgkJCQkJCQkJJHNhbGVzZm9yY2Vfb2JqZWN0ICAgICAgICAgICAgICAgICAgID0gJG1hcFsnc2FsZXNmb3JjZV9vYmplY3QnXTsKCQkJCQkJCQkkc2FsZXNmb3JjZV9yZWNvcmRfdHlwZXNfYWxsb3dlZCAgICAgPSBtYXliZV91bnNlcmlhbGl6ZSggJG1hcFsnc2FsZXNmb3JjZV9yZWNvcmRfdHlwZXNfYWxsb3dlZCddICk7CgkJCQkJCQkJJHNhbGVzZm9yY2VfcmVjb3JkX3R5cGVfZGVmYXVsdCAgICAgID0gJG1hcFsnc2FsZXNmb3JjZV9yZWNvcmRfdHlwZV9kZWZhdWx0J107CgkJCQkJCQkJJHdvcmRwcmVzc19vYmplY3QgICAgICAgICAgICAgICAgICAgID0gJG1hcFsnd29yZHByZXNzX29iamVjdCddOwoJCQkJCQkJCSRwdWxsX3RyaWdnZXJfZmllbGQgICAgICAgICAgICAgICAgICA9ICRtYXBbJ3B1bGxfdHJpZ2dlcl9maWVsZCddOwoJCQkJCQkJCSRmaWVsZG1hcF9maWVsZHMgICAgICAgICAgICAgICAgICAgICA9ICRtYXBbJ2ZpZWxkcyddOwoJCQkJCQkJCSRzeW5jX3RyaWdnZXJzICAgICAgICAgICAgICAgICAgICAgICA9ICRtYXBbJ3N5bmNfdHJpZ2dlcnMnXTsKCQkJCQkJCQkkYWx3YXlzX2RlbGV0ZV9vYmplY3RfbWFwc19vbl9kZWxldGUgPSAkbWFwWydhbHdheXNfZGVsZXRlX29iamVjdF9tYXBzX29uX2RlbGV0ZSddOwoJCQkJCQkJCSRwdXNoX2FzeW5jICAgICAgICAgICAgICAgICAgICAgICAgICA9ICRtYXBbJ3B1c2hfYXN5bmMnXTsKCQkJCQkJCQkkcHVzaF9kcmFmdHMgICAgICAgICAgICAgICAgICAgICAgICAgPSAkbWFwWydwdXNoX2RyYWZ0cyddOwoJCQkJCQkJCSRwdWxsX3RvX2RyYWZ0cyAgICAgICAgICAgICAgICAgICAgICA9ICRtYXBbJ3B1bGxfdG9fZHJhZnRzJ107CgkJCQkJCQkJJHdlaWdodCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID0gJG1hcFsnd2VpZ2h0J107CgkJCQkJCQl9CgkJCQkJCQlpZiAoICdhZGQnID09PSAkbWV0aG9kIHx8ICdlZGl0JyA9PT0gJG1ldGhvZCB8fCAnY2xvbmUnID09PSAkbWV0aG9kICkgewoJCQkJCQkJCXJlcXVpcmVfb25jZSBwbHVnaW5fZGlyX3BhdGgoICR0aGlzLT5maWxlICkgLiAnL3RlbXBsYXRlcy9hZG1pbi9maWVsZG1hcHMtYWRkLWVkaXQtY2xvbmUucGhwJzsKCQkJCQkJCX0gZWxzZWlmICggJ2RlbGV0ZScgPT09ICRtZXRob2QgKSB7CgkJCQkJCQkJcmVxdWlyZV9vbmNlIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICcvdGVtcGxhdGVzL2FkbWluL2ZpZWxkbWFwcy1kZWxldGUucGhwJzsKCQkJCQkJCX0KCQkJCQkJfSBlbHNlIHsKCQkJCQkJCSRub19maWVsZG1hcF91cmwgPSBnZXRfYWRtaW5fdXJsKCBudWxsLCAnb3B0aW9ucy1nZW5lcmFsLnBocD9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9ZmllbGRtYXBzJm1pc3NpbmdfZmllbGRtYXA9dHJ1ZScgKTsKCQkJCQkJCXdwX3NhZmVfcmVkaXJlY3QoICRub19maWVsZG1hcF91cmwgKTsKCQkJCQkJCWV4aXQoKTsKCQkJCQkJfQoJCQkJCX0gZWxzZSB7CgkJCQkJCSRmaWVsZG1hcHMgPSAkdGhpcy0+bWFwcGluZ3MtPmdldF9maWVsZG1hcHMoKTsKCQkJCQkJcmVxdWlyZV9vbmNlIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICcvdGVtcGxhdGVzL2FkbWluL2ZpZWxkbWFwcy1saXN0LnBocCc7CgkJCQkJfSAvLyBFbmQgaWYgc3RhdGVtZW50LgoJCQkJCWJyZWFrOwoJCQkJY2FzZSAnbG9nb3V0JzoKCQkJCQkkdGhpcy0+bG9nb3V0KCk7CgkJCQkJYnJlYWs7CgkJCQljYXNlICdjbGVhcl9jYWNoZSc6CgkJCQkJJHRoaXMtPmNsZWFyX2NhY2hlKCk7CgkJCQkJYnJlYWs7CgkJCQljYXNlICdjbGVhcl9zY2hlZHVsZSc6CgkJCQkJaWYgKCBpc3NldCggJGdldF9kYXRhWydzY2hlZHVsZV9uYW1lJ10gKSApIHsKCQkJCQkJJHNjaGVkdWxlX25hbWUgPSBzYW5pdGl6ZV9rZXkoICRnZXRfZGF0YVsnc2NoZWR1bGVfbmFtZSddICk7CgkJCQkJfQoJCQkJCSR0aGlzLT5jbGVhcl9zY2hlZHVsZSggJHNjaGVkdWxlX25hbWUgKTsKCQkJCQlicmVhazsKCQkJCWNhc2UgJ3NldHRpbmdzJzoKCQkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vc2V0dGluZ3MucGhwJzsKCQkJCQlicmVhazsKCQkJCWNhc2UgJ21hcHBpbmdfZXJyb3JzJzoKCQkJCQlpZiAoIGlzc2V0KCAkZ2V0X2RhdGFbJ21ldGhvZCddICkgKSB7CgoJCQkJCQkkbWV0aG9kICAgICAgPSBzYW5pdGl6ZV9rZXkoICRnZXRfZGF0YVsnbWV0aG9kJ10gKTsKCQkJCQkJJGVycm9yX3VybCAgID0gZ2V0X2FkbWluX3VybCggbnVsbCwgJ29wdGlvbnMtZ2VuZXJhbC5waHA/cGFnZT0nIC4gJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSAuICcmdGFiPW1hcHBpbmdfZXJyb3JzJm1ldGhvZD0nIC4gJG1ldGhvZCApOwoJCQkJCQkkc3VjY2Vzc191cmwgPSBnZXRfYWRtaW5fdXJsKCBudWxsLCAnb3B0aW9ucy1nZW5lcmFsLnBocD9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9bWFwcGluZ19lcnJvcnMnICk7CgoJCQkJCQlpZiAoIGlzc2V0KCAkZ2V0X2RhdGFbJ21hcF90cmFuc2llbnQnXSApICkgewoJCQkJCQkJJHRyYW5zaWVudCA9IHNhbml0aXplX2tleSggJGdldF9kYXRhWydtYXBfdHJhbnNpZW50J10gKTsKCQkJCQkJCSRwb3N0ZWQgICAgPSAkdGhpcy0+c2Z3cF90cmFuc2llbnRzLT5nZXQoICR0cmFuc2llbnQgKTsKCQkJCQkJfQoKCQkJCQkJaWYgKCBpc3NldCggJHBvc3RlZCApICYmIGlzX2FycmF5KCAkcG9zdGVkICkgKSB7CgkJCQkJCQkkbWFwX3JvdyA9ICRwb3N0ZWQ7CgkJCQkJCX0gZWxzZWlmICggJ2VkaXQnID09PSAkbWV0aG9kIHx8ICdkZWxldGUnID09PSAkbWV0aG9kICkgewoJCQkJCQkJJG1hcF9yb3cgPSAkdGhpcy0+bWFwcGluZ3MtPmdldF9mYWlsZWRfb2JqZWN0X21hcCggaXNzZXQoICRnZXRfZGF0YVsnaWQnXSApID8gc2FuaXRpemVfa2V5KCAkZ2V0X2RhdGFbJ2lkJ10gKSA6ICcnICk7CgkJCQkJCX0KCgkJCQkJCWlmICggaXNzZXQoICRtYXBfcm93ICkgJiYgaXNfYXJyYXkoICRtYXBfcm93ICkgKSB7CgkJCQkJCQkkc2FsZXNmb3JjZV9pZCAgICA9ICRtYXBfcm93WydzYWxlc2ZvcmNlX2lkJ107CgkJCQkJCQkkd29yZHByZXNzX2lkICAgICA9ICRtYXBfcm93Wyd3b3JkcHJlc3NfaWQnXTsKCQkJCQkJCSR3b3JkcHJlc3Nfb2JqZWN0ID0gJG1hcF9yb3dbJ3dvcmRwcmVzc19vYmplY3QnXTsKCQkJCQkJfQoKCQkJCQkJaWYgKCAnZWRpdCcgPT09ICRtZXRob2QgKSB7CgkJCQkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vbWFwcGluZy1lcnJvcnMtZWRpdC5waHAnOwoJCQkJCQl9IGVsc2VpZiAoICdkZWxldGUnID09PSAkbWV0aG9kICkgewoJCQkJCQkJcmVxdWlyZV9vbmNlIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICcvdGVtcGxhdGVzL2FkbWluL21hcHBpbmctZXJyb3JzLWRlbGV0ZS5waHAnOwoJCQkJCQl9CgkJCQkJfSBlbHNlIHsKCgkJCQkJCWlmICggaXNzZXQoICRnZXRfZGF0YVsnbWFwcGluZ19lcnJvcl90cmFuc2llbnQnXSApICkgewoJCQkJCQkJJHRyYW5zaWVudCA9IHNhbml0aXplX2tleSggJGdldF9kYXRhWydtYXBwaW5nX2Vycm9yX3RyYW5zaWVudCddICk7CgkJCQkJCQkkcG9zdGVkICAgID0gJHRoaXMtPnNmd3BfdHJhbnNpZW50cy0+Z2V0KCAkdHJhbnNpZW50ICk7CgkJCQkJCX0KCgkJCQkJCSRpZHNfc3RyaW5nID0gJyc7CgkJCQkJCSRpZHMgICAgICAgID0gYXJyYXkoKTsKCQkJCQkJaWYgKCBpc3NldCggJHBvc3RlZFsnZGVsZXRlJ10gKSApIHsKCQkJCQkJCSRpZHNfc3RyaW5nID0gbWF5YmVfc2VyaWFsaXplKCAkcG9zdGVkWydkZWxldGUnXSApOwoJCQkJCQkJJGlkcyAgICAgICAgPSAkcG9zdGVkWydkZWxldGUnXTsKCQkJCQkJfQoKCQkJCQkJJGVycm9yX3VybCAgID0gZ2V0X2FkbWluX3VybCggbnVsbCwgJ29wdGlvbnMtZ2VuZXJhbC5waHA/cGFnZT0nIC4gJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSAuICcmdGFiPW1hcHBpbmdfZXJyb3JzJmlkcz0nIC4gJGlkc19zdHJpbmcgKTsKCQkJCQkJJHN1Y2Nlc3NfdXJsID0gZ2V0X2FkbWluX3VybCggbnVsbCwgJ29wdGlvbnMtZ2VuZXJhbC5waHA/cGFnZT0nIC4gJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSAuICcmdGFiPW1hcHBpbmdfZXJyb3JzJyApOwoJCQkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vbWFwcGluZy1lcnJvcnMucGhwJzsKCQkJCQl9CgkJCQkJYnJlYWs7CgkJCQljYXNlICdpbXBvcnQtZXhwb3J0JzoKCQkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vaW1wb3J0LWV4cG9ydC5waHAnOwoJCQkJCWJyZWFrOwoJCQkJZGVmYXVsdDoKCQkJCQkkaW5jbHVkZV9zZXR0aW5ncyA9IGFwcGx5X2ZpbHRlcnMoICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ3NldHRpbmdzX3RhYl9pbmNsdWRlX3NldHRpbmdzJywgdHJ1ZSwgJHRhYiApOwoJCQkJCSRjb250ZW50X2JlZm9yZSAgID0gYXBwbHlfZmlsdGVycyggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAnc2V0dGluZ3NfdGFiX2NvbnRlbnRfYmVmb3JlJywgbnVsbCwgJHRhYiApOwoJCQkJCSRjb250ZW50X2FmdGVyICAgID0gYXBwbHlfZmlsdGVycyggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAnc2V0dGluZ3NfdGFiX2NvbnRlbnRfYWZ0ZXInLCBudWxsLCAkdGFiICk7CgkJCQkJaWYgKCBudWxsICE9PSAkY29udGVudF9iZWZvcmUgKSB7CgkJCQkJCWVjaG8gZXNjX2h0bWwoICRjb250ZW50X2JlZm9yZSApOwoJCQkJCX0KCQkJCQlpZiAoIHRydWUgPT09ICRpbmNsdWRlX3NldHRpbmdzICkgewoJCQkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vc2V0dGluZ3MucGhwJzsKCQkJCQl9CgkJCQkJaWYgKCBudWxsICE9PSAkY29udGVudF9hZnRlciApIHsKCQkJCQkJZWNobyBlc2NfaHRtbCggJGNvbnRlbnRfYWZ0ZXIgKTsKCQkJCQl9CgkJCQkJYnJlYWs7CgkJCX0gLy8gRW5kIHN3aXRjaCBzdGF0ZW1lbnQuCgkJfSBjYXRjaCAoIE9iamVjdF9TeW5jX1NmX0V4Y2VwdGlvbiAkZXggKSB7CgkJCWVjaG8gc3ByaW50ZigKCQkJCSc8cD5FcnJvciA8c3Ryb25nPiUxJHM8L3N0cm9uZz46ICUyJHM8L3A+JywKCQkJCWFic2ludCggJGV4LT5nZXRDb2RlKCkgKSwKCQkJCWVzY19odG1sKCAkZXgtPmdldE1lc3NhZ2UoKSApCgkJCSk7CgkJfSAvLyBFbmQgdHJ5IGZvciBtZW51L3BhZ2Ugc2V0dXAuCgkJZWNobyAnPC9kaXY+JzsKCX0KCgkvKioKCSAqIENyZWF0ZSBkZWZhdWx0IFdvcmRQcmVzcyBhZG1pbiBzZXR0aW5ncyBmb3JtLiBUaGlzIHJ1bnMgdGhlIFNldHRpbmdzIHBhZ2UuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBzYWxlc2ZvcmNlX3NldHRpbmdzX2Zvcm1zKCkgewoJCSRnZXRfZGF0YSA9IGZpbHRlcl9pbnB1dF9hcnJheSggSU5QVVRfR0VULCBGSUxURVJfU0FOSVRJWkVfU1RSSU5HICk7CgkJJHBhZ2UgICAgID0gaXNzZXQoICRnZXRfZGF0YVsndGFiJ10gKSA/IHNhbml0aXplX2tleSggJGdldF9kYXRhWyd0YWInXSApIDogJ3NldHRpbmdzJzsKCQkkc2VjdGlvbiAgPSBpc3NldCggJGdldF9kYXRhWyd0YWInXSApID8gc2FuaXRpemVfa2V5KCAkZ2V0X2RhdGFbJ3RhYiddICkgOiAnc2V0dGluZ3MnOwoKCQkkaW5wdXRfY2FsbGJhY2tfZGVmYXVsdCAgID0gYXJyYXkoICR0aGlzLCAnZGlzcGxheV9pbnB1dF9maWVsZCcgKTsKCQkkaW5wdXRfY2hlY2tib3hlc19kZWZhdWx0ID0gYXJyYXkoICR0aGlzLCAnZGlzcGxheV9jaGVja2JveGVzJyApOwoJCSRpbnB1dF9zZWxlY3RfZGVmYXVsdCAgICAgPSBhcnJheSggJHRoaXMsICdkaXNwbGF5X3NlbGVjdCcgKTsKCQkkbGlua19kZWZhdWx0ICAgICAgICAgICAgID0gYXJyYXkoICR0aGlzLCAnZGlzcGxheV9saW5rJyApOwoKCQkkYWxsX2ZpZWxkX2NhbGxiYWNrcyA9IGFycmF5KAoJCQkndGV4dCcgICAgICAgPT4gJGlucHV0X2NhbGxiYWNrX2RlZmF1bHQsCgkJCSdjaGVja2JveGVzJyA9PiAkaW5wdXRfY2hlY2tib3hlc19kZWZhdWx0LAoJCQknc2VsZWN0JyAgICAgPT4gJGlucHV0X3NlbGVjdF9kZWZhdWx0LAoJCQknbGluaycgICAgICAgPT4gJGxpbmtfZGVmYXVsdCwKCQkpOwoKCQkkdGhpcy0+ZmllbGRzX3NldHRpbmdzKCAnc2V0dGluZ3MnLCAnc2V0dGluZ3MnLCAkYWxsX2ZpZWxkX2NhbGxiYWNrcyApOwoJCSR0aGlzLT5maWVsZHNfZmllbGRtYXBzKCAnZmllbGRtYXBzJywgJ29iamVjdHMnICk7CgkJJHRoaXMtPmZpZWxkc19zY2hlZHVsaW5nKCAnc2NoZWR1bGUnLCAnc2NoZWR1bGUnLCAkYWxsX2ZpZWxkX2NhbGxiYWNrcyApOwoJCSR0aGlzLT5maWVsZHNfbG9nX3NldHRpbmdzKCAnbG9nX3NldHRpbmdzJywgJ2xvZ19zZXR0aW5ncycsICRhbGxfZmllbGRfY2FsbGJhY2tzICk7CgkJJHRoaXMtPmZpZWxkc19lcnJvcnMoICdtYXBwaW5nX2Vycm9ycycsICdtYXBwaW5nX2Vycm9ycycsICRhbGxfZmllbGRfY2FsbGJhY2tzICk7Cgl9CgoJLyoqCgkgKiBGaWVsZHMgZm9yIHRoZSBTZXR0aW5ncyB0YWIKCSAqIFRoaXMgcnVucyBhZGRfc2V0dGluZ3Nfc2VjdGlvbiBvbmNlLCBhcyB3ZWxsIGFzIGFkZF9zZXR0aW5nc19maWVsZCBhbmQgcmVnaXN0ZXJfc2V0dGluZyBtZXRob2RzIGZvciBlYWNoIG9wdGlvbgoJICoKCSAqIEBwYXJhbSBzdHJpbmcgJHBhZ2Ugd2hhdCBwYWdlIHdlJ3JlIG9uLgoJICogQHBhcmFtIHN0cmluZyAkc2VjdGlvbiB3aGF0IHNlY3Rpb24gb2YgdGhlIHBhZ2UuCgkgKiBAcGFyYW0gYXJyYXkgICRjYWxsYmFja3MgbWV0aG9kIHRvIGNhbGwuCgkgKi8KCXByaXZhdGUgZnVuY3Rpb24gZmllbGRzX3NldHRpbmdzKCAkcGFnZSwgJHNlY3Rpb24sICRjYWxsYmFja3MgKSB7CgkJYWRkX3NldHRpbmdzX3NlY3Rpb24oICRwYWdlLCB1Y3dvcmRzKCAkcGFnZSApLCBudWxsLCAkcGFnZSApOwoJCSRzYWxlc2ZvcmNlX3NldHRpbmdzID0gYXJyYXkoCgkJCSdjb25zdW1lcl9rZXknICAgICAgICAgICAgICAgICAgID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ0NvbnN1bWVyIEtleScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ3RleHQnLAoJCQkJCSd2YWxpZGF0ZScgPT4gJ3Nhbml0aXplX3ZhbGlkYXRlX3RleHQnLAoJCQkJCSdkZXNjJyAgICAgPT4gJycsCgkJCQkJJ2NvbnN0YW50JyA9PiAnT0JKRUNUX1NZTkNfU0ZfU0FMRVNGT1JDRV9DT05TVU1FUl9LRVknLAoJCQkJKSwKCgkJCSksCgkJCSdjb25zdW1lcl9zZWNyZXQnICAgICAgICAgICAgICAgID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ0NvbnN1bWVyIFNlY3JldCcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ3RleHQnLAoJCQkJCSd2YWxpZGF0ZScgPT4gJ3Nhbml0aXplX3ZhbGlkYXRlX3RleHQnLAoJCQkJCSdkZXNjJyAgICAgPT4gJycsCgkJCQkJJ2NvbnN0YW50JyA9PiAnT0JKRUNUX1NZTkNfU0ZfU0FMRVNGT1JDRV9DT05TVU1FUl9TRUNSRVQnLAoJCQkJKSwKCQkJKSwKCQkJJ2NhbGxiYWNrX3VybCcgICAgICAgICAgICAgICAgICAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnQ2FsbGJhY2sgVVJMJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAndXJsJywKCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV92YWxpZGF0ZV90ZXh0JywKCQkJCQknZGVzYycgICAgID0+IHNwcmludGYoCgkJCQkJCS8vIHRyYW5zbGF0b3JzOiAlMSRzIGlzIHRoZSBhZG1pbiBVUkwgZm9yIHRoZSBBdXRob3JpemUgdGFiLgoJCQkJCQlfXyggJ0luIG1vc3QgY2FzZXMsIHlvdSB3aWxsIHdhbnQgdG8gdXNlICUxJHMgZm9yIHRoaXMgdmFsdWUuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQlnZXRfYWRtaW5fdXJsKCBudWxsLCAnb3B0aW9ucy1nZW5lcmFsLnBocD9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9YXV0aG9yaXplJyApCgkJCQkJKSwKCQkJCQknY29uc3RhbnQnID0+ICdPQkpFQ1RfU1lOQ19TRl9TQUxFU0ZPUkNFX0NBTExCQUNLX1VSTCcsCgkJCQkpLAoJCQkpLAoJCQknbG9naW5fYmFzZV91cmwnICAgICAgICAgICAgICAgICA9PiBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdMb2dpbiBCYXNlIFVSTCcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ3VybCcsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnc2FuaXRpemVfdmFsaWRhdGVfdGV4dCcsCgkJCQkJJ2Rlc2MnICAgICA9PiBzcHJpbnRmKAoJCQkJCQkvLyB0cmFuc2xhdG9yczogMSkgcHJvZHVjdGlvbiBzYWxlc2ZvcmNlIGxvZ2luLCAyKSBzYW5kYm94IHNhbGVzZm9yY2UgbG9naW4uCgkJCQkJCV9fKCAnRm9yIG1vc3QgU2FsZXNmb3JjZSBzZXR1cHMsIHlvdSBzaG91bGQgdXNlICUxJHMgZm9yIHByb2R1Y3Rpb24gYW5kICUyJHMgZm9yIHNhbmRib3guIElmIHlvdSB0cnkgdG8gdXNlIGFuIGluc3RhbmNlIG5hbWUgYXMgdGhlIFVSTCwgeW91IG1heSBlbmNvdW50ZXIgU2FsZXNmb3JjZSBlcnJvcnMuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQllc2NfdXJsKCAnaHR0cHM6Ly9sb2dpbi5zYWxlc2ZvcmNlLmNvbScgKSwKCQkJCQkJZXNjX3VybCggJ2h0dHBzOi8vdGVzdC5zYWxlc2ZvcmNlLmNvbScgKQoJCQkJCSksCgkJCQkJJ2NvbnN0YW50JyA9PiAnT0JKRUNUX1NZTkNfU0ZfU0FMRVNGT1JDRV9MT0dJTl9CQVNFX1VSTCcsCgkJCQkpLAoJCQkpLAoJCQknYXV0aG9yaXplX3VybF9wYXRoJyAgICAgICAgICAgICA9PiBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdBdXRob3JpemUgVVJMIFBhdGgnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3RleHQnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICd0ZXh0JywKCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV92YWxpZGF0ZV90ZXh0JywKCQkJCQknZGVzYycgICAgID0+IF9fKCAnRm9yIG1vc3QgU2FsZXNmb3JjZSBpbnN0YWxscywgdGhpcyBzaG91bGQgbm90IGJlIGNoYW5nZWQuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCSdjb25zdGFudCcgPT4gJ09CSkVDVF9TWU5DX1NGX1NBTEVTRk9SQ0VfQVVUSE9SSVpFX1VSTF9QQVRIJywKCQkJCQknZGVmYXVsdCcgID0+ICR0aGlzLT5kZWZhdWx0X2F1dGhvcml6ZV91cmxfcGF0aCwKCQkJCSksCgkJCSksCgkJCSd0b2tlbl91cmxfcGF0aCcgICAgICAgICAgICAgICAgID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ1Rva2VuIFVSTCBQYXRoJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAndGV4dCcsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnc2FuaXRpemVfdmFsaWRhdGVfdGV4dCcsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ0ZvciBtb3N0IFNhbGVzZm9yY2UgaW5zdGFsbHMsIHRoaXMgc2hvdWxkIG5vdCBiZSBjaGFuZ2VkLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknY29uc3RhbnQnID0+ICdPQkpFQ1RfU1lOQ19TRl9TQUxFU0ZPUkNFX1RPS0VOX1VSTF9QQVRIJywKCQkJCQknZGVmYXVsdCcgID0+ICR0aGlzLT5kZWZhdWx0X3Rva2VuX3VybF9wYXRoLAoJCQkJKSwKCQkJKSwKCQkJJ29iamVjdF9maWx0ZXJzJyAgICAgICAgICAgICAgICAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnTGltaXQgU2FsZXNmb3JjZSBPYmplY3RzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWydjaGVja2JveGVzJ10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnY2hlY2tib3hlcycsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnc2FuaXRpemVfdmFsaWRhdGVfdGV4dCcsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ0FsbG93cyB5b3UgdG8gbGltaXQgd2hpY2ggU2FsZXNmb3JjZSBvYmplY3RzIGNhbiBiZSBtYXBwZWQnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2l0ZW1zJyAgICA9PiBhcnJheSgKCQkJCQkJJ3RyaWdnZXJhYmxlJyA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyAgICA9PiBfXyggJ09ubHkgVHJpZ2dlcmFibGUgb2JqZWN0cycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSdpZCcgICAgICA9PiAndHJpZ2dlcmFibGUnLAoJCQkJCQkJJ2Rlc2MnICAgID0+ICcnLAoJCQkJCQkJJ2RlZmF1bHQnID0+ICR0aGlzLT5kZWZhdWx0X3RyaWdnZXJhYmxlLAoJCQkJCQkpLAoJCQkJCQkndXBkYXRlYWJsZScgID0+IGFycmF5KAoJCQkJCQkJJ3RleHQnICAgID0+IF9fKCAnT25seSBVcGRhdGVhYmxlIG9iamVjdHMnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQknaWQnICAgICAgPT4gJ3VwZGF0ZWFibGUnLAoJCQkJCQkJJ2Rlc2MnICAgID0+ICcnLAoJCQkJCQkJJ2RlZmF1bHQnID0+ICR0aGlzLT5kZWZhdWx0X3VwZGF0ZWFibGUsCgkJCQkJCSksCgkJCQkJKSwKCQkJCSksCgkJCSksCgkJCSdzYWxlc2ZvcmNlX2ZpZWxkX2Rpc3BsYXlfdmFsdWUnID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ1NhbGVzZm9yY2UgRmllbGQgRGlzcGxheSBWYWx1ZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1snc2VsZWN0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnc2VsZWN0JywKCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV92YWxpZGF0ZV90ZXh0JywKCQkJCQknZGVzYycgICAgID0+IF9fKCAnV2hlbiBjaG9vc2luZyBTYWxlc2ZvcmNlIGZpZWxkcyB0byBtYXAsIHRoaXMgdmFsdWUgZGV0ZXJtaW5lcyBob3cgdGhlIGRyb3Bkb3duIHdpbGwgaWRlbnRpZnkgU2FsZXNmb3JjZSBmaWVsZHMuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCSdjb25zdGFudCcgPT4gJycsCgkJCQkJJ2l0ZW1zJyAgICA9PiBhcnJheSgKCQkJCQkJJ2ZpZWxkX2xhYmVsJyA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyAgPT4gX18oICdGaWVsZCBMYWJlbCcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSd2YWx1ZScgPT4gJ2ZpZWxkX2xhYmVsJywKCQkJCQkJKSwKCQkJCQkJJ2FwaV9uYW1lJyAgICA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyAgPT4gX18oICdBUEkgTmFtZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSd2YWx1ZScgPT4gJ2FwaV9uYW1lJywKCQkJCQkJKSwKCQkJCQkpLAoJCQkJKSwKCQkJKSwKCQkJJ2Rpc2FibGVfbWFwcGVkX2ZpZWxkcycgICAgICAgICAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnUHJldmVudCBEdXBsaWNhdGUgRmllbGQgTWFwcGluZz8nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3RleHQnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICdjaGVja2JveCcsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnc2FuaXRpemVfdGV4dF9maWVsZCcsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ0lmIGNoZWNrZWQsIGFueSBXb3JkUHJlc3Mgb3IgU2FsZXNmb3JjZSBmaWVsZCB0aGF0IGhhcyBhbHJlYWR5IGJlZW4gbWFwcGVkLCBvciB0aGF0IGlzIHNlbGVjdGVkIHdoaWxlIGNyZWF0aW5nIG9yIGVkaXRpbmcgYSBmaWVsZG1hcCwgY2Fubm90IGJlIG1hcHBlZCBhZ2Fpbi4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJCSksCgkJCSksCgkJCSdwdWxsX3F1ZXJ5X2xpbWl0JyAgICAgICAgICAgICAgID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ1B1bGwgUXVlcnkgUmVjb3JkIExpbWl0JywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnbnVtYmVyJywKCQkJCQkndmFsaWRhdGUnID0+ICdhYnNpbnQnLAoJCQkJCSdkZXNjJyAgICAgPT4gX18oICdMaW1pdCB0aGUgbnVtYmVyIG9mIHJlY29yZHMgdGhhdCBjYW4gYmUgcHVsbGVkIGZyb20gU2FsZXNmb3JjZSBpbiBhIHNpbmdsZSBxdWVyeS4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJCQknZGVmYXVsdCcgID0+ICR0aGlzLT5kZWZhdWx0X3B1bGxfbGltaXQsCgkJCQkpLAoJCQkpLAoJCQkncHVsbF90aHJvdHRsZScgICAgICAgICAgICAgICAgICA9PiBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdQdWxsIFRocm90dGxlIChJbiBTZWNvbmRzKScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ251bWJlcicsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnc2FuaXRpemVfdmFsaWRhdGVfdGV4dCcsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ051bWJlciBvZiBzZWNvbmRzIHRvIHdhaXQgYmV0d2VlbiByZXBlYXRlZCBzYWxlc2ZvcmNlIHB1bGxzLiBQcmV2ZW50cyB0aGUgd2Vic2VydmVyIGZyb20gYmVjb21pbmcgb3ZlcmxvYWRlZCBpbiBjYXNlIG9mIHRvbyBtYW55IGNyb24gcnVucywgb3Igd2ViaG9vayB1c2FnZS4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJCQknZGVmYXVsdCcgID0+ICR0aGlzLT5kZWZhdWx0X3B1bGxfdGhyb3R0bGUsCgkJCQkpLAoJCQkpLAoJCSk7CgoJCS8vIG9ubHkgc2hvdyBzb2FwIHNldHRpbmdzIGlmIHRoZSBzb2FwIGV4dGVuc2lvbiBpcyBlbmFibGVkIG9uIHRoZSBzZXJ2ZXIuCgkJaWYgKCB0cnVlID09PSAkdGhpcy0+c2FsZXNmb3JjZVsnc29hcF9hdmFpbGFibGUnXSApIHsKCQkJJHNhbGVzZm9yY2Vfc2V0dGluZ3NbJ3VzZV9zb2FwJ10gICAgICAgPSBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdFbmFibGUgdGhlIFNhbGVzZm9yY2UgU09BUCBBUEk/JywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdjbGFzcycgICAgPT4gJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlLWVuYWJsZS1zb2FwJywKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnY2hlY2tib3gnLAoJCQkJCSd2YWxpZGF0ZScgPT4gJ3Nhbml0aXplX3RleHRfZmllbGQnLAoJCQkJCSdkZXNjJyAgICAgPT4gX18oICdDaGVjayB0aGlzIHRvIGVuYWJsZSB0aGUgU09BUCBBUEkgYW5kIHVzZSBpdCBpbnN0ZWFkIG9mIHRoZSBSRVNUIEFQSSB3aGVuIHRoZSBwbHVnaW4gc3VwcG9ydHMgaXQuIGh0dHBzOi8vZGV2ZWxvcGVyLnNhbGVzZm9yY2UuY29tL2Jsb2dzL3RlY2gtcHVicy8yMDExLzEwL3NhbGVzZm9yY2UtYXBpcy13aGF0LXRoZXktYXJlLXdoZW4tdG8tdXNlLXRoZW0uaHRtbCB0byBjb21wYXJlIHRoZSB0d28uIE5vdGU6IGlmIHlvdSBuZWVkIHRvIGRldGVjdCBTYWxlc2ZvcmNlIG1lcmdlcyBpbiB0aGlzIHBsdWdpbiwgeW91IHdpbGwgbmVlZCB0byBlbmFibGUgU09BUC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJCSksCgkJCSk7CgkJCSRzYWxlc2ZvcmNlX3NldHRpbmdzWydzb2FwX3dzZGxfcGF0aCddID0gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnUGF0aCB0byBTT0FQIFdTREwgRmlsZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknY2xhc3MnICAgID0+ICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZS1zb2FwLXdzZGwtcGF0aCcsCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ3RleHQnLAoJCQkJCSd2YWxpZGF0ZScgPT4gJ3Nhbml0aXplX3RleHRfZmllbGQnLAoJCQkJCSdkZXNjJyAgICAgPT4gX18oICdPcHRpb25hbGx5IGFkZCBhIHBhdGggdG8geW91ciBvd24gV1NETCBmaWxlLiBJZiB5b3UgZG8gbm90LCB0aGUgcGx1Z2luIHdpbGwgdXNlIHRoZSBkZWZhdWx0IHBhcnRuZXIud3NkbC54bWwgZnJvbSB0aGUgRm9yY2UuY29tIHRvb2xraXQuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCSdjb25zdGFudCcgPT4gJycsCgkJCQkpLAoJCQkpOwoJCX0KCgkJJHNhbGVzZm9yY2Vfc2V0dGluZ3NbJ2RlYnVnX21vZGUnXSAgICAgICAgICAgICAgID0gYXJyYXkoCgkJCSd0aXRsZScgICAgPT4gX18oICdEZWJ1ZyBNb2RlPycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkndHlwZScgICAgID0+ICdjaGVja2JveCcsCgkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV90ZXh0X2ZpZWxkJywKCQkJCSdkZXNjJyAgICAgPT4gX18oICdEZWJ1ZyBtb2RlIGFjdGl2YXRlcyBsb2dnaW5nIGZvciBwbHVnaW4gZXZlbnRzIGxpa2UgU2FsZXNmb3JjZSBBUEkgcmVxdWVzdHMgYW5kIFdvcmRQcmVzcyBkYXRhIG9wZXJhdGlvbnMuIFRoaXMgY2FuIGNyZWF0ZSBhIGxvdCBvZiBsb2cgZW50cmllczsgaXQgaXMgbm90IHJlY29tbWVuZGVkIHRvIHVzZSBpdCBsb25nLXRlcm0gaW4gYSBwcm9kdWN0aW9uIGVudmlyb25tZW50LicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjb25zdGFudCcgPT4gJycsCgkJCSksCgkJKTsKCQkkc2FsZXNmb3JjZV9zZXR0aW5nc1snZGVsZXRlX2RhdGFfb25fdW5pbnN0YWxsJ10gPSBhcnJheSgKCQkJJ3RpdGxlJyAgICA9PiBfXyggJ0RlbGV0ZSBQbHVnaW4gRGF0YSBvbiBVbmluc3RhbGw/JywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3RleHQnXSwKCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCSd0eXBlJyAgICAgPT4gJ2NoZWNrYm94JywKCQkJCSd2YWxpZGF0ZScgPT4gJ3Nhbml0aXplX3RleHRfZmllbGQnLAoJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ0lmIGNoZWNrZWQsIHRoZSBwbHVnaW4gd2lsbCBkZWxldGUgdGhlIHRhYmxlcyBhbmQgb3RoZXIgZGF0YSBpdCBjcmVhdGVzIHdoZW4geW91IHVuaW5zdGFsbCBpdC4gVW5jaGVja2luZyB0aGlzIGZpZWxkIGNhbiBiZSB1c2VmdWwgaWYgeW91IG5lZWQgdG8gcmVhY3RpdmF0ZSB0aGUgcGx1Z2luIGZvciBhbnkgcmVhc29uIHdpdGhvdXQgbG9zaW5nIGRhdGEuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJKSwKCQkpOwoKCQlmb3JlYWNoICggJHNhbGVzZm9yY2Vfc2V0dGluZ3MgYXMgJGtleSA9PiAkYXR0cmlidXRlcyApIHsKCQkJJGlkICAgICAgID0gJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAka2V5OwoJCQkkbmFtZSAgICAgPSAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICRrZXk7CgkJCSR0aXRsZSAgICA9ICRhdHRyaWJ1dGVzWyd0aXRsZSddOwoJCQkkY2FsbGJhY2sgPSAkYXR0cmlidXRlc1snY2FsbGJhY2snXTsKCQkJJHZhbGlkYXRlID0gJGF0dHJpYnV0ZXNbJ2FyZ3MnXVsndmFsaWRhdGUnXTsKCQkJJHBhZ2UgICAgID0gJGF0dHJpYnV0ZXNbJ3BhZ2UnXTsKCQkJJHNlY3Rpb24gID0gJGF0dHJpYnV0ZXNbJ3NlY3Rpb24nXTsKCQkJJGNsYXNzICAgID0gaXNzZXQoICRhdHRyaWJ1dGVzWydjbGFzcyddICkgPyAkYXR0cmlidXRlc1snY2xhc3MnXSA6ICcnOwoJCQkkYXJncyAgICAgPSBhcnJheV9tZXJnZSgKCQkJCSRhdHRyaWJ1dGVzWydhcmdzJ10sCgkJCQlhcnJheSgKCQkJCQkndGl0bGUnICAgICA9PiAkdGl0bGUsCgkJCQkJJ2lkJyAgICAgICAgPT4gJGlkLAoJCQkJCSdsYWJlbF9mb3InID0+ICRpZCwKCQkJCQknbmFtZScgICAgICA9PiAkbmFtZSwKCQkJCQknY2xhc3MnICAgICA9PiAkY2xhc3MsCgkJCQkpCgkJCSk7CgoJCQkvLyBpZiB0aGVyZSBpcyBhIGNvbnN0YW50IGFuZCBpdCBpcyBkZWZpbmVkLCBkb24ndCBydW4gYSB2YWxpZGF0ZSBmdW5jdGlvbi4KCQkJaWYgKCBpc3NldCggJGF0dHJpYnV0ZXNbJ2FyZ3MnXVsnY29uc3RhbnQnXSApICYmIGRlZmluZWQoICRhdHRyaWJ1dGVzWydhcmdzJ11bJ2NvbnN0YW50J10gKSApIHsKCQkJCSR2YWxpZGF0ZSA9ICcnOwoJCQl9CgoJCQlhZGRfc2V0dGluZ3NfZmllbGQoICRpZCwgJHRpdGxlLCAkY2FsbGJhY2ssICRwYWdlLCAkc2VjdGlvbiwgJGFyZ3MgKTsKCQkJcmVnaXN0ZXJfc2V0dGluZyggJHBhZ2UsICRpZCwgYXJyYXkoICR0aGlzLCAkdmFsaWRhdGUgKSApOwoJCX0KCX0KCgkvKioKCSAqIEZpZWxkcyBmb3IgdGhlIEZpZWxkbWFwcyB0YWIKCSAqIFRoaXMgcnVucyBhZGRfc2V0dGluZ3Nfc2VjdGlvbiBvbmNlLCBhcyB3ZWxsIGFzIGFkZF9zZXR0aW5nc19maWVsZCBhbmQgcmVnaXN0ZXJfc2V0dGluZyBtZXRob2RzIGZvciBlYWNoIG9wdGlvbgoJICoKCSAqIEBwYXJhbSBzdHJpbmcgJHBhZ2Ugd2hhdCBwYWdlIHdlJ3JlIG9uLgoJICogQHBhcmFtIHN0cmluZyAkc2VjdGlvbiB3aGF0IHNlY3Rpb24gb2YgdGhlIHBhZ2UuCgkgKiBAcGFyYW0gc3RyaW5nICRpbnB1dF9jYWxsYmFjayBtZXRob2QgdG8gY2FsbC4KCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBmaWVsZHNfZmllbGRtYXBzKCAkcGFnZSwgJHNlY3Rpb24sICRpbnB1dF9jYWxsYmFjayA9ICcnICkgewoJCWFkZF9zZXR0aW5nc19zZWN0aW9uKCAkcGFnZSwgdWN3b3JkcyggJHBhZ2UgKSwgbnVsbCwgJHBhZ2UgKTsKCX0KCgkvKioKCSAqIEZpZWxkcyBmb3IgdGhlIFNjaGVkdWxpbmcgdGFiCgkgKiBUaGlzIHJ1bnMgYWRkX3NldHRpbmdzX3NlY3Rpb24gb25jZSwgYXMgd2VsbCBhcyBhZGRfc2V0dGluZ3NfZmllbGQgYW5kIHJlZ2lzdGVyX3NldHRpbmcgbWV0aG9kcyBmb3IgZWFjaCBvcHRpb24KCSAqCgkgKiBAcGFyYW0gc3RyaW5nICRwYWdlIHdoYXQgcGFnZSB3ZSdyZSBvbi4KCSAqIEBwYXJhbSBzdHJpbmcgJHNlY3Rpb24gd2hhdCBzZWN0aW9uIG9mIHRoZSBwYWdlLgoJICogQHBhcmFtIGFycmF5ICAkY2FsbGJhY2tzIG1ldGhvZCB0byBjYWxsLgoJICovCglwcml2YXRlIGZ1bmN0aW9uIGZpZWxkc19zY2hlZHVsaW5nKCAkcGFnZSwgJHNlY3Rpb24sICRjYWxsYmFja3MgKSB7CgoJCWFkZF9zZXR0aW5nc19zZWN0aW9uKCAnYmF0Y2gnLCBfXyggJ0JhdGNoIFNldHRpbmdzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLCBudWxsLCAkcGFnZSApOwoJCSRzZWN0aW9uICAgICAgICAgICA9ICdiYXRjaCc7CgkJJHNjaGVkdWxlX3NldHRpbmdzID0gYXJyYXkoCgkJCSdhY3Rpb25fc2NoZWR1bGVyX2JhdGNoX3NpemUnICAgICAgICAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnQmF0Y2ggU2l6ZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ251bWJlcicsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnYWJzaW50JywKCQkJCQknZGVmYXVsdCcgID0+IDUsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ1NldCBob3cgbWFueSBhY3Rpb25zIChjaGVja2luZyBmb3IgZGF0YSBjaGFuZ2VzLCBzeW5jaW5nIGEgcmVjb3JkLCBldGMuIGFsbCBjb3VudCBhcyBpbmRpdmlkdWFsIGFjdGlvbnMpIGNhbiBiZSBydW4gaW4gYSBiYXRjaC4gU3RhcnQgd2l0aCBhIGxvdyBudW1iZXIgaGVyZSwgbGlrZSA1LCBpZiB5b3UgYXJlIHVuc3VyZS4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJCSksCgoJCQkpLAoJCQknYWN0aW9uX3NjaGVkdWxlcl9jb25jdXJyZW50X2JhdGNoZXMnID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ0NvbmN1cnJlbnQgQmF0Y2hlcycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ251bWJlcicsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnYWJzaW50JywKCQkJCQknZGVmYXVsdCcgID0+IDMsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ1NldCBob3cgbWFueSBiYXRjaGVzIG9mIGFjdGlvbnMgY2FuIGJlIHJ1biBhdCBvbmNlLiBTdGFydCB3aXRoIGEgbG93IG51bWJlciBoZXJlLCBsaWtlIDMsIGlmIHlvdSBhcmUgdW5zdXJlLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknY29uc3RhbnQnID0+ICcnLAoJCQkJKSwKCQkJKSwKCQkpOwoKCQlmb3JlYWNoICggJHRoaXMtPnNjaGVkdWxhYmxlX2NsYXNzZXMgYXMgJGtleSA9PiAkdmFsdWUgKSB7CgkJCWFkZF9zZXR0aW5nc19zZWN0aW9uKCAka2V5LCAkdmFsdWVbJ2xhYmVsJ10sIG51bGwsICRwYWdlICk7CgkJCWlmICggaXNzZXQoICR2YWx1ZVsnaW5pdGlhbGl6ZXInXSApICkgewoJCQkJJHNjaGVkdWxlX3NldHRpbmdzWyAka2V5IC4gJ19zY2hlZHVsZV9udW1iZXInIF0gPSBhcnJheSgKCQkJCQkndGl0bGUnICAgID0+IF9fKCAnUnVuIFNjaGVkdWxlIEV2ZXJ5JywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQkJJ3NlY3Rpb24nICA9PiAka2V5LAoJCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJCSd0eXBlJyAgICAgPT4gJ251bWJlcicsCgkJCQkJCSd2YWxpZGF0ZScgPT4gJ2Fic2ludCcsCgkJCQkJCSdkZXNjJyAgICAgPT4gJycsCgkJCQkJCSdjb25zdGFudCcgPT4gJycsCgkJCQkJKSwKCQkJCSk7CgkJCQkkc2NoZWR1bGVfc2V0dGluZ3NbICRrZXkgLiAnX3NjaGVkdWxlX3VuaXQnIF0gICA9IGFycmF5KAoJCQkJCSd0aXRsZScgICAgPT4gX18oICdUaW1lIFVuaXQnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWydzZWxlY3QnXSwKCQkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJCSdzZWN0aW9uJyAgPT4gJGtleSwKCQkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCQkndHlwZScgICAgID0+ICdzZWxlY3QnLAoJCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV92YWxpZGF0ZV90ZXh0JywKCQkJCQkJJ2Rlc2MnICAgICA9PiAnJywKCQkJCQkJJ2l0ZW1zJyAgICA9PiBhcnJheSgKCQkJCQkJCSdtaW51dGVzJyA9PiBhcnJheSgKCQkJCQkJCQkndGV4dCcgID0+IF9fKCAnTWludXRlcycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCQkndmFsdWUnID0+ICdtaW51dGVzJywKCQkJCQkJCSksCgkJCQkJCQknaG91cnMnICAgPT4gYXJyYXkoCgkJCQkJCQkJJ3RleHQnICA9PiBfXyggJ0hvdXJzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQkJCSd2YWx1ZScgPT4gJ2hvdXJzJywKCQkJCQkJCSksCgkJCQkJCQknZGF5cycgICAgPT4gYXJyYXkoCgkJCQkJCQkJJ3RleHQnICA9PiBfXyggJ0RheXMnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQkJJ3ZhbHVlJyA9PiAnZGF5cycsCgkJCQkJCQkpLAoJCQkJCQkpLAoJCQkJCSksCgkJCQkpOwoJCQl9CgkJCSRzY2hlZHVsZV9zZXR0aW5nc1sgJGtleSAuICdfY2xlYXJfYnV0dG9uJyBdID0gYXJyYXkoCgkJCQkvLyB0cmFuc2xhdG9yczogJHRoaXMtPmdldF9zY2hlZHVsZV9jb3VudCBpcyBhbiBpbnRlZ2VyIHNob3dpbmcgaG93IG1hbnkgaXRlbXMgYXJlIGluIHRoZSBjdXJyZW50IHF1ZXVlLgoJCQkJJ3RpdGxlJyAgICA9PiBzcHJpbnRmKCAnVGhpcyBRdWV1ZSBIYXMgJyAuIF9uKCAnJXMgSXRlbScsICclcyBJdGVtcycsICR0aGlzLT5nZXRfc2NoZWR1bGVfY291bnQoICRrZXkgKSwgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLCAkdGhpcy0+Z2V0X3NjaGVkdWxlX2NvdW50KCAka2V5ICkgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1snbGluayddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJGtleSwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ2xhYmVsJyAgICAgID0+IF9fKCAnQ2xlYXIgdGhpcyBxdWV1ZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknZGVzYycgICAgICAgPT4gJycsCgkJCQkJJ3VybCcgICAgICAgID0+IGVzY191cmwoICc/cGFnZT0nIC4gJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSAuICcmYW1wO3RhYj1jbGVhcl9zY2hlZHVsZSZhbXA7c2NoZWR1bGVfbmFtZT0nIC4gJGtleSApLAoJCQkJCSdsaW5rX2NsYXNzJyA9PiAnYnV0dG9uIGJ1dHRvbi1zZWNvbmRhcnknLAoJCQkJKSwKCQkJKTsKCQkJZm9yZWFjaCAoICRzY2hlZHVsZV9zZXR0aW5ncyBhcyAka2V5ID0+ICRhdHRyaWJ1dGVzICkgewoJCQkJJGlkICAgICAgID0gJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAka2V5OwoJCQkJJG5hbWUgICAgID0gJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAka2V5OwoJCQkJJHRpdGxlICAgID0gJGF0dHJpYnV0ZXNbJ3RpdGxlJ107CgkJCQkkY2FsbGJhY2sgPSAkYXR0cmlidXRlc1snY2FsbGJhY2snXTsKCQkJCSRwYWdlICAgICA9ICRhdHRyaWJ1dGVzWydwYWdlJ107CgkJCQkkc2VjdGlvbiAgPSAkYXR0cmlidXRlc1snc2VjdGlvbiddOwoJCQkJJGFyZ3MgICAgID0gYXJyYXlfbWVyZ2UoCgkJCQkJJGF0dHJpYnV0ZXNbJ2FyZ3MnXSwKCQkJCQlhcnJheSgKCQkJCQkJJ3RpdGxlJyAgICAgPT4gJHRpdGxlLAoJCQkJCQknaWQnICAgICAgICA9PiAkaWQsCgkJCQkJCSdsYWJlbF9mb3InID0+ICRpZCwKCQkJCQkJJ25hbWUnICAgICAgPT4gJG5hbWUsCgkJCQkJKQoJCQkJKTsKCQkJCWFkZF9zZXR0aW5nc19maWVsZCggJGlkLCAkdGl0bGUsICRjYWxsYmFjaywgJHBhZ2UsICRzZWN0aW9uLCAkYXJncyApOwoJCQkJcmVnaXN0ZXJfc2V0dGluZyggJHBhZ2UsICRpZCApOwoJCQl9CgkJfSAvLyBFbmQgZm9yZWFjaCBzdGF0ZW1lbnQuCgl9CgoJLyoqCgkgKiBGaWVsZHMgZm9yIHRoZSBMb2cgU2V0dGluZ3MgdGFiCgkgKiBUaGlzIHJ1bnMgYWRkX3NldHRpbmdzX3NlY3Rpb24gb25jZSwgYXMgd2VsbCBhcyBhZGRfc2V0dGluZ3NfZmllbGQgYW5kIHJlZ2lzdGVyX3NldHRpbmcgbWV0aG9kcyBmb3IgZWFjaCBvcHRpb24KCSAqCgkgKiBAcGFyYW0gc3RyaW5nICRwYWdlIHdoYXQgcGFnZSB3ZSdyZSBvbi4KCSAqIEBwYXJhbSBzdHJpbmcgJHNlY3Rpb24gd2hhdCBzZWN0aW9uIG9mIHRoZSBwYWdlLgoJICogQHBhcmFtIGFycmF5ICAkY2FsbGJhY2tzIG1ldGhvZCB0byBjYWxsLgoJICovCglwcml2YXRlIGZ1bmN0aW9uIGZpZWxkc19sb2dfc2V0dGluZ3MoICRwYWdlLCAkc2VjdGlvbiwgJGNhbGxiYWNrcyApIHsKCQlhZGRfc2V0dGluZ3Nfc2VjdGlvbiggJHBhZ2UsIHVjd29yZHMoIHN0cl9yZXBsYWNlKCAnXycsICcgJywgJHBhZ2UgKSApLCBudWxsLCAkcGFnZSApOwoJCSRsb2dfc2V0dGluZ3MgPSBhcnJheSgKCQkJJ2VuYWJsZV9sb2dnaW5nJyAgICAgICAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnRW5hYmxlIExvZ2dpbmc/JywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnY2hlY2tib3gnLAoJCQkJCSd2YWxpZGF0ZScgPT4gJ2Fic2ludCcsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ1RoaXMgZGV0ZXJtaW5lcyB3aGV0aGVyIHRvIGNyZWF0ZSBwbHVnaW4gbG9nIGV2ZW50cyBpbiBzdGFuZGFyZCBvcGVyYXRpb24uIElmIERlYnVnIE1vZGUgaXMgZW5hYmxlZCBpbiB0aGUgcGx1Z2luIHNldHRpbmdzLCBsb2dnaW5nIHdpbGwgb2NjdXIgcmVnYXJkbGVzcyBvZiB0aGlzIHNldHRpbmcuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCSdjb25zdGFudCcgPT4gJycsCgkJCQkpLAoJCQkpLAoJCQknc3RhdHVzZXNfdG9fbG9nJyAgICAgICA9PiBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdTdGF0dXNlcyB0byBMb2cnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ2NoZWNrYm94ZXMnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICdjaGVja2JveGVzJywKCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV92YWxpZGF0ZV90ZXh0JywKCQkJCQknZGVzYycgICAgID0+ICcnLAoJCQkJCSdpdGVtcycgICAgPT4gYXJyYXkoCgkJCQkJCSdlcnJvcicgICA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyA9PiBfXyggJ0Vycm9yJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQkJJ2lkJyAgID0+ICdlcnJvcicsCgkJCQkJCQknZGVzYycgPT4gJycsCgkJCQkJCSksCgkJCQkJCSdzdWNjZXNzJyA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyA9PiBfXyggJ1N1Y2Nlc3MnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQknaWQnICAgPT4gJ3N1Y2Nlc3MnLAoJCQkJCQkJJ2Rlc2MnID0+ICcnLAoJCQkJCQkpLAoJCQkJCQknbm90aWNlJyAgPT4gYXJyYXkoCgkJCQkJCQkndGV4dCcgPT4gX18oICdOb3RpY2UnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQknaWQnICAgPT4gJ25vdGljZScsCgkJCQkJCQknZGVzYycgPT4gJycsCgkJCQkJCSksCgkJCQkJKSwKCQkJCSksCgkJCSksCgkJCSdwcnVuZV9sb2dzJyAgICAgICAgICAgID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ0F1dG9tYXRpY2FsbHkgRGVsZXRlIE9sZCBMb2cgRW50cmllcz8nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3RleHQnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICdjaGVja2JveCcsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnYWJzaW50JywKCQkJCQknZGVzYycgICAgID0+ICcnLAoJCQkJCSdjb25zdGFudCcgPT4gJycsCgkJCQkpLAoJCQkpLAoJCQknbG9nc19ob3dfb2xkJyAgICAgICAgICA9PiBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdBZ2UgdG8gRGVsZXRlIExvZyBFbnRyaWVzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAndGV4dCcsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnc2FuaXRpemVfdmFsaWRhdGVfdGV4dCcsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ0lmIGF1dG9tYXRpYyBkZWxldGluZyBpcyBlbmFibGVkLCBpdCB3aWxsIGFmZmVjdCBsb2dzIHRoaXMgb2xkLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknZGVmYXVsdCcgID0+ICcyIHdlZWtzJywKCQkJCQknY29uc3RhbnQnID0+ICcnLAoJCQkJKSwKCQkJKSwKCQkJJ2xvZ3NfaG93X29mdGVuX251bWJlcicgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnQ2hlY2sgRm9yIE9sZCBMb2dzIEV2ZXJ5JywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnbnVtYmVyJywKCQkJCQkndmFsaWRhdGUnID0+ICdhYnNpbnQnLAoJCQkJCSdkZXNjJyAgICAgPT4gJycsCgkJCQkJJ2RlZmF1bHQnICA9PiAnMScsCgkJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJCSksCgkJCSksCgkJCSdsb2dzX2hvd19vZnRlbl91bml0JyAgID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ1RpbWUgVW5pdCcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1snc2VsZWN0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnc2VsZWN0JywKCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV92YWxpZGF0ZV90ZXh0JywKCQkJCQknZGVzYycgICAgID0+IF9fKCAnVGhlc2UgdHdvIGZpZWxkcyBhcmUgaG93IG9mdGVuIHRoZSBzaXRlIHdpbGwgY2hlY2sgZm9yIGxvZ3MgdG8gZGVsZXRlLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknaXRlbXMnICAgID0+IGFycmF5KAoJCQkJCQknbWludXRlcycgPT4gYXJyYXkoCgkJCQkJCQkndGV4dCcgID0+IF9fKCAnTWludXRlcycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSd2YWx1ZScgPT4gJ21pbnV0ZXMnLAoJCQkJCQkpLAoJCQkJCQknaG91cnMnICAgPT4gYXJyYXkoCgkJCQkJCQkndGV4dCcgID0+IF9fKCAnSG91cnMnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQkndmFsdWUnID0+ICdob3VycycsCgkJCQkJCSksCgkJCQkJCSdkYXlzJyAgICA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyAgPT4gX18oICdEYXlzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQkJJ3ZhbHVlJyA9PiAnZGF5cycsCgkJCQkJCSksCgkJCQkJKSwKCQkJCSksCgkJCSksCgkJCSdsb2dzX2hvd19tYW55X251bWJlcicgID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ0NsZWFyIFRoaXMgTWFueSBMb2cgRW50cmllcycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ251bWJlcicsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnYWJzaW50JywKCQkJCQknZGVzYycgICAgID0+IF9fKCAnVGhpcyBudW1iZXIgaXMgaG93IG1hbnkgbG9nIGVudHJpZXMgdGhlIHBsdWdpbiB3aWxsIHRyeSB0byBjbGVhciBhdCBhIHRpbWUuIElmIHlvdSBkbyBub3QgZW50ZXIgYSBudW1iZXIsIHRoZSBkZWZhdWx0IGlzIDEwMC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2RlZmF1bHQnICA9PiAnMTAwJywKCQkJCQknY29uc3RhbnQnID0+ICcnLAoJCQkJKSwKCQkJKSwKCQkJJ3RyaWdnZXJzX3RvX2xvZycgICAgICAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnVHJpZ2dlcnMgdG8gTG9nJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWydjaGVja2JveGVzJ10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnY2hlY2tib3hlcycsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnc2FuaXRpemVfdmFsaWRhdGVfdGV4dCcsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ1RoZXNlIGFyZSB0aGUgdHJpZ2dlcnMgdG8gbG9nLiBXaGVuIHRoZSBwbHVnaW4gaXMgaW4gZGVidWcgbW9kZSAoc2VlIHRoZSBzZXR0aW5ncyB0YWIpLCBhbGwgdHJpZ2dlcnMgd2lsbCBiZSBjb25zaWRlcmVkIHRvIGJlIHRyaWdnZXJzIHRvIGxvZywgZXZlbiBpZiB0aGV5IGFyZSBub3QgY2hlY2tlZCBoZXJlLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknaXRlbXMnICAgID0+IGFycmF5KAoJCQkJCQkkdGhpcy0+bWFwcGluZ3MtPnN5bmNfd29yZHByZXNzX2NyZWF0ZSA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyA9PiBfXyggJ1dvcmRQcmVzcyBDcmVhdGUnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQknaWQnICAgPT4gJ3dvcmRwcmVzc19jcmVhdGUnLAoJCQkJCQkJJ2Rlc2MnID0+ICcnLAoJCQkJCQkpLAoJCQkJCQkkdGhpcy0+bWFwcGluZ3MtPnN5bmNfd29yZHByZXNzX3VwZGF0ZSA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyA9PiBfXyggJ1dvcmRQcmVzcyBVcGRhdGUnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQknaWQnICAgPT4gJ3dvcmRwcmVzc191cGRhdGUnLAoJCQkJCQkJJ2Rlc2MnID0+ICcnLAoJCQkJCQkpLAoJCQkJCQkkdGhpcy0+bWFwcGluZ3MtPnN5bmNfd29yZHByZXNzX2RlbGV0ZSA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyA9PiBfXyggJ1dvcmRQcmVzcyBEZWxldGUnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQknaWQnICAgPT4gJ3dvcmRwcmVzc19kZWxldGUnLAoJCQkJCQkJJ2Rlc2MnID0+ICcnLAoJCQkJCQkpLAoJCQkJCQkkdGhpcy0+bWFwcGluZ3MtPnN5bmNfc2ZfY3JlYXRlID0+IGFycmF5KAoJCQkJCQkJJ3RleHQnID0+IF9fKCAnU2FsZXNmb3JjZSBDcmVhdGUnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQknaWQnICAgPT4gJ3NmX2NyZWF0ZScsCgkJCQkJCQknZGVzYycgPT4gJycsCgkJCQkJCSksCgkJCQkJCSR0aGlzLT5tYXBwaW5ncy0+c3luY19zZl91cGRhdGUgPT4gYXJyYXkoCgkJCQkJCQkndGV4dCcgPT4gX18oICdTYWxlc2ZvcmNlIFVwZGF0ZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSdpZCcgICA9PiAnc2ZfdXBkYXRlJywKCQkJCQkJCSdkZXNjJyA9PiAnJywKCQkJCQkJKSwKCQkJCQkJJHRoaXMtPm1hcHBpbmdzLT5zeW5jX3NmX2RlbGV0ZSA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyA9PiBfXyggJ1NhbGVzZm9yY2UgRGVsZXRlJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQkJJ2lkJyAgID0+ICdzZl9kZWxldGUnLAoJCQkJCQkJJ2Rlc2MnID0+ICcnLAoJCQkJCQkpLAoJCQkJCSksCgkJCQkpLAoJCQkpLAoJCSk7CgkJZm9yZWFjaCAoICRsb2dfc2V0dGluZ3MgYXMgJGtleSA9PiAkYXR0cmlidXRlcyApIHsKCQkJJGlkICAgICAgID0gJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAka2V5OwoJCQkkbmFtZSAgICAgPSAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICRrZXk7CgkJCSR0aXRsZSAgICA9ICRhdHRyaWJ1dGVzWyd0aXRsZSddOwoJCQkkY2FsbGJhY2sgPSAkYXR0cmlidXRlc1snY2FsbGJhY2snXTsKCQkJJHBhZ2UgICAgID0gJGF0dHJpYnV0ZXNbJ3BhZ2UnXTsKCQkJJHNlY3Rpb24gID0gJGF0dHJpYnV0ZXNbJ3NlY3Rpb24nXTsKCQkJJGFyZ3MgICAgID0gYXJyYXlfbWVyZ2UoCgkJCQkkYXR0cmlidXRlc1snYXJncyddLAoJCQkJYXJyYXkoCgkJCQkJJ3RpdGxlJyAgICAgPT4gJHRpdGxlLAoJCQkJCSdpZCcgICAgICAgID0+ICRpZCwKCQkJCQknbGFiZWxfZm9yJyA9PiAkaWQsCgkJCQkJJ25hbWUnICAgICAgPT4gJG5hbWUsCgkJCQkpCgkJCSk7CgkJCWFkZF9zZXR0aW5nc19maWVsZCggJGlkLCAkdGl0bGUsICRjYWxsYmFjaywgJHBhZ2UsICRzZWN0aW9uLCAkYXJncyApOwoJCQlyZWdpc3Rlcl9zZXR0aW5nKCAkcGFnZSwgJGlkICk7CgkJfQoJfQoKCS8qKgoJICogRmllbGRzIGZvciB0aGUgTWFwcGluZyBFcnJvcnMgdGFiCgkgKiBUaGlzIHJ1bnMgYWRkX3NldHRpbmdzX3NlY3Rpb24gb25jZSwgYXMgd2VsbCBhcyBhZGRfc2V0dGluZ3NfZmllbGQgYW5kIHJlZ2lzdGVyX3NldHRpbmcgbWV0aG9kcyBmb3IgZWFjaCBvcHRpb24KCSAqCgkgKiBAcGFyYW0gc3RyaW5nICRwYWdlIHdoYXQgcGFnZSB3ZSdyZSBvbi4KCSAqIEBwYXJhbSBzdHJpbmcgJHNlY3Rpb24gd2hhdCBzZWN0aW9uIG9mIHRoZSBwYWdlLgoJICogQHBhcmFtIGFycmF5ICAkY2FsbGJhY2tzIG1ldGhvZCB0byBjYWxsLgoJICovCglwcml2YXRlIGZ1bmN0aW9uIGZpZWxkc19lcnJvcnMoICRwYWdlLCAkc2VjdGlvbiwgJGNhbGxiYWNrcyApIHsKCgkJYWRkX3NldHRpbmdzX3NlY3Rpb24oICRzZWN0aW9uLCBfXyggJ01hcHBpbmcgRXJyb3IgU2V0dGluZ3MnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksIG51bGwsICRwYWdlICk7CgkJJGVycm9yX3NldHRpbmdzID0gYXJyYXkoCgkJCSdlcnJvcnNfcGVyX3BhZ2UnID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ0Vycm9ycyBwZXIgcGFnZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ251bWJlcicsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnYWJzaW50JywKCQkJCQknZGVmYXVsdCcgID0+IDUwLAoJCQkJCSdkZXNjJyAgICAgPT4gX18oICdTZXQgaG93IG1hbnkgbWFwcGluZyBlcnJvcnMgdG8gc2hvdyBvbiBhIHNpbmdsZSBwYWdlLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknY29uc3RhbnQnID0+ICcnLAoJCQkJKSwKCQkJKSwKCQkpOwoKCQlmb3JlYWNoICggJGVycm9yX3NldHRpbmdzIGFzICRrZXkgPT4gJGF0dHJpYnV0ZXMgKSB7CgkJCSRpZCAgICAgICA9ICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJGtleTsKCQkJJG5hbWUgICAgID0gJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAka2V5OwoJCQkkdGl0bGUgICAgPSAkYXR0cmlidXRlc1sndGl0bGUnXTsKCQkJJGNhbGxiYWNrID0gJGF0dHJpYnV0ZXNbJ2NhbGxiYWNrJ107CgkJCSRwYWdlICAgICA9ICRhdHRyaWJ1dGVzWydwYWdlJ107CgkJCSRzZWN0aW9uICA9ICRhdHRyaWJ1dGVzWydzZWN0aW9uJ107CgkJCSRhcmdzICAgICA9IGFycmF5X21lcmdlKAoJCQkJJGF0dHJpYnV0ZXNbJ2FyZ3MnXSwKCQkJCWFycmF5KAoJCQkJCSd0aXRsZScgICAgID0+ICR0aXRsZSwKCQkJCQknaWQnICAgICAgICA9PiAkaWQsCgkJCQkJJ2xhYmVsX2ZvcicgPT4gJGlkLAoJCQkJCSduYW1lJyAgICAgID0+ICRuYW1lLAoJCQkJKQoJCQkpOwoJCQlhZGRfc2V0dGluZ3NfZmllbGQoICRpZCwgJHRpdGxlLCAkY2FsbGJhY2ssICRwYWdlLCAkc2VjdGlvbiwgJGFyZ3MgKTsKCQkJcmVnaXN0ZXJfc2V0dGluZyggJHBhZ2UsICRpZCApOwoJCX0gLy8gRW5kIGZvcmVhY2goKSBtZXRob2QuCgl9CgoJLyoqCgkgKiBDcmVhdGUgYW5kIHJldHVybiB0aGUgZGF0YSBmb3Igbm90aWNlcy4KCSAqCgkgKiBAcmV0dXJuIGFycmF5ICRub3RpY2VzIGlzIHRoZSBhcnJheSBvZiBub3RpY2VzLgoJICovCglwdWJsaWMgZnVuY3Rpb24gbm90aWNlc19kYXRhKCkgewoJCSRub3RpY2VzID0gYXJyYXkoCgkJCSdwZXJtaXNzaW9uJyAgICAgICAgICAgICAgPT4gYXJyYXkoCgkJCQknY29uZGl0aW9uJyAgID0+ICggZmFsc2UgPT09ICR0aGlzLT5jaGVja193b3JkcHJlc3NfYWRtaW5fcGVybWlzc2lvbnMoKSApLAoJCQkJJ21lc3NhZ2UnICAgICA9PiBfXyggIllvdXIgYWNjb3VudCBkb2VzIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gZWRpdCB0aGUgT2JqZWN0IFN5bmMgZm9yIFNhbGVzZm9yY2UgcGx1Z2luJ3Mgc2V0dGluZ3MuIiwgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ3R5cGUnICAgICAgICA9PiAnZXJyb3InLAoJCQkJJ2Rpc21pc3NpYmxlJyA9PiBmYWxzZSwKCQkJKSwKCQkJJ25vdF9zZWN1cmUnICAgICAgICAgICAgICA9PiBhcnJheSgKCQkJCSdjb25kaXRpb24nICAgPT4gKCBmYWxzZSA9PT0gJHRoaXMtPmNoZWNrX3dvcmRwcmVzc19zc2woKSAmJiBmYWxzZSA9PT0gJHRoaXMtPmNoZWNrX3dvcmRwcmVzc19zc2xfc3VwcG9ydCgpICksCgkJCQknbWVzc2FnZScgICAgID0+IGVzY19odG1sX18oICdBdCBsZWFzdCB0aGUgYWRtaW4gYXJlYSBvZiB5b3VyIHdlYnNpdGUgbXVzdCB1c2UgSFRUUFMgdG8gY29ubmVjdCB3aXRoIFNhbGVzZm9yY2UuIFdvcmRQcmVzcyByZXBvcnRzIHRoYXQgeW91ciBzaXRlIGVudmlyb25tZW50IGRvZXMgbm90LCBhbmQgY2Fubm90LCB1c2UgSFRUUFMuIFlvdSBtYXkgbmVlZCB0byB3b3JrIHdpdGggeW91ciBob3N0aW5nIGNvbXBhbnkgdG8gbWFrZSB0aGUgc3dpdGNoIGJlZm9yZSB5b3UgY2FuIHVzZSB0aGlzIHBsdWdpbi4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkndHlwZScgICAgICAgID0+ICdlcnJvcicsCgkJCQknZGlzbWlzc2libGUnID0+IGZhbHNlLAoJCQkpLAoJCQknc2VjdXJlX3N1cHBvcnRlZCcgICAgICAgID0+IGFycmF5KAoJCQkJJ2NvbmRpdGlvbicgICA9PiAoIGZhbHNlID09PSAkdGhpcy0+Y2hlY2tfd29yZHByZXNzX3NzbCgpICYmIHRydWUgPT09ICR0aGlzLT5jaGVja193b3JkcHJlc3Nfc3NsX3N1cHBvcnQoKSApLAoJCQkJJ21lc3NhZ2UnICAgICA9PiBzcHJpbnRmKAoJCQkJCS8vIHRyYW5zbGF0b3JzOiAxKSBpcyB0aGUgc2l0ZSBoZWFsdGggVVJMLCBhbmQgMikgaXMgdGhlIHRleHQgZm9yIHRoZSBzaXRlIGhlYWx0aCBwYWdlIHRpdGxlLgoJCQkJCV9fKCAnWW91ciB3ZWJzaXRlIGlzIG5vdCBjdXJyZW50bHkgdXNpbmcgSFRUUFMsIGJ1dCB5b3VyIGVudmlyb25tZW50IGRvZXMgc3VwcG9ydCBpdC4gVmlzaXQgeW91ciB3ZWJzaXRlXCdzIDxhIGhyZWY9IiUxJHMiPiUyJHM8L2E+IGZvciBtb3JlIGluZm9ybWF0aW9uLiBJZiB5b3UgaGF2ZSBqdXN0IG1pZ3JhdGVkIHRvIEhUVFBTLCBXb3JkUHJlc3MgbWF5IHRha2Ugc29tZSB0aW1lIHRvIHVwZGF0ZSB0aGlzIGRldGVjdGlvbi4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJZXNjX3VybCggYWRtaW5fdXJsKCAnc2l0ZS1oZWFsdGgucGhwJyApICksCgkJCQkJZXNjX2h0bWxfXyggJ1NpdGUgSGVhbHRoIHNjcmVlbicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKQoJCQkJKSwKCQkJCSd0eXBlJyAgICAgICAgPT4gJ2Vycm9yJywKCQkJCSdkaXNtaXNzaWJsZScgPT4gZmFsc2UsCgkJCSksCgkJCSdkZXByZWNhdGVkX2FwaV92ZXJzaW9uJyAgPT4gYXJyYXkoCgkJCQknY29uZGl0aW9uJyAgID0+ICggaXNzZXQoICR0aGlzLT5sb2dpbl9jcmVkZW50aWFsc1sndXNpbmdfZGVwcmVjYXRlZF9vcHRpb24nXSApICYmIHRydWUgPT09ICR0aGlzLT5sb2dpbl9jcmVkZW50aWFsc1sndXNpbmdfZGVwcmVjYXRlZF9vcHRpb24nXSApLAoJCQkJJ21lc3NhZ2UnICAgICA9PiBzcHJpbnRmKAoJCQkJCS8vIHRyYW5zbGF0b3JzOiAxKSBpcyB0aGUgdmVyc2lvbiBudW1iZXIgb2YgdGhlIFNhbGVzZm9yY2UgUkVTVCBBUEksIDIpIGlzIHRoZSBvcHRpb24ga2V5IGZvciB3aGVyZSB0aGUgZGVwcmVjYXRlZCB2ZXJzaW9uIGlzIHN0b3JlZCwgMykgaXMgdGhlIHByZWZpeGVkIG9wdGlvbnMgdGFibGUgbmFtZSwgNCkgaXMgdGhlIGxpbmsgdG8gZGVsZXRlIHRoZSBvcHRpb24sIDUpIGlzIHRoZSBkZWZhdWx0IEFQSSB2ZXJzaW9uIHRvIHVzZSwgYW5kIDYpIGlzIHRoZSBuYW1lIG9mIHRoZSB3cC1jb25maWcgdmFsdWUuCgkJCQkJZXNjX2h0bWxfXyggJ09iamVjdCBTeW5jIGZvciBTYWxlc2ZvcmNlIGlzIHVzaW5nIHZlcnNpb24gJTEkcyBvZiB0aGUgU2FsZXNmb3JjZSBSRVNUIEFQSSwgd2hpY2ggaXMgY29uZmlndXJlZCBmcm9tIGEgcHJldmlvdXMgdmVyc2lvbi4gVGhpcyB2YWx1ZSBpcyBubyBsb25nZXIgY29uZmlndXJhYmxlIGluIHRoZSBwbHVnaW4gc2V0dGluZ3MsIGFuZCBpbiB2ZXJzaW9uIDMuMC4wLCBwcmV2aW91c2x5IHNhdmVkIHZhbHVlcyB3aWxsIGJlIHJlbW92ZWQuIFlvdSBjYW4gZGVsZXRlIHRoZSAlMiRzIGZpZWxkIGZyb20gdGhlICUzJHMgdGFibGUgb24geW91ciBvd24sIHVzZSAlNCRzLCBzZXQgaXQgdG8gJTUkcyBzbyB0aGUgcGx1Z2luIGNhbiBkZWxldGUgaXQsIG9yIHdhaXQgdW50aWwgdGhhdCByZWxlYXNlLiBJZiB0aGUgJTYkcyB2YWx1ZSBpcyBpbiB5b3VyIHdwLWNvbmZpZy5waHAgZmlsZSBpbnN0ZWFkLCB5b3Ugc2hvdWxkIGRlbGV0ZSBpdCBmcm9tIHRoZXJlIGFzIHdlbGwuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCWVzY19hdHRyKCAkdGhpcy0+bG9naW5fY3JlZGVudGlhbHNbJ3Jlc3RfYXBpX3ZlcnNpb24nXSApLAoJCQkJCSc8Y29kZT4nIC4gZXNjX2F0dHIoICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ2FwaV92ZXJzaW9uJyApIC4gJzwvY29kZT4nLAoJCQkJCSc8Y29kZT4nIC4gZXNjX2F0dHIoICR0aGlzLT53cGRiLT5wcmVmaXggLiAnb3B0aW9ucycgKSAuICc8L2NvZGU+JywKCQkJCQknPGEgaHJlZj0iIyIgaWQ9InNhbGVzZm9yY2UtZGVsZXRlLXJlc3QtYXBpLXZlcnNpb24iPnRoaXMgbGluayB0aGF0IHdpbGwgYXR0ZW1wdCB0byBkZWxldGUgaXQ8L2E+JywKCQkJCQknPGNvZGU+JyAuIGVzY19hdHRyKCBPQkpFQ1RfU1lOQ19TRl9ERUZBVUxUX0FQSV9WRVJTSU9OICkgLiAnPC9jb2RlPicsCgkJCQkJJzxjb2RlPicgLiBlc2NfYXR0ciggJ09CSkVDVF9TWU5DX1NGX0RFRkFVTFRfQVBJX1ZFUlNJT04nICkgLiAnPC9jb2RlPicKCQkJCSksCgkJCQkndHlwZScgICAgICAgID0+ICdlcnJvcicsCgkJCQknZGlzbWlzc2libGUnID0+IHRydWUsCgkJCSksCgkJCSdmaWVsZG1hcCcgICAgICAgICAgICAgICAgPT4gYXJyYXkoCgkJCQknY29uZGl0aW9uJyAgID0+IGlzc2V0KCAkZ2V0X2RhdGFbJ3RyYW5zaWVudCddICksCgkJCQknbWVzc2FnZScgICAgID0+IGVzY19odG1sX18oICdFcnJvcnMga2VwdCB0aGlzIGZpZWxkbWFwIGZyb20gYmVpbmcgc2F2ZWQuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ3R5cGUnICAgICAgICA9PiAnZXJyb3InLAoJCQkJJ2Rpc21pc3NpYmxlJyA9PiB0cnVlLAoJCQkpLAoJCQknZmllbGRtYXBfbWlzc2luZycgICAgICAgID0+IGFycmF5KAoJCQkJJ2NvbmRpdGlvbicgICA9PiBpc3NldCggJGdldF9kYXRhWydtaXNzaW5nX2ZpZWxkbWFwJ10gKSwKCQkJCSdtZXNzYWdlJyAgICAgPT4gX18oICdUaGVyZSBpcyBubyBmaWVsZG1hcCB3aXRoIHRoZSBzdXBwbGllZCBJRC4gSW5zdGVhZCwgdGhlIGxpc3Qgb2YgYWxsIGF2YWlsYWJsZSBmaWVsZG1hcHMgaXMgZGlzcGxheWVkLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSd0eXBlJyAgICAgICAgPT4gJ2Vycm9yJywKCQkJCSdkaXNtaXNzaWJsZScgPT4gdHJ1ZSwKCQkJKSwKCQkJJ29iamVjdF9tYXAnICAgICAgICAgICAgICA9PiBhcnJheSgKCQkJCSdjb25kaXRpb24nICAgPT4gaXNzZXQoICRnZXRfZGF0YVsnbWFwX3RyYW5zaWVudCddICksCgkJCQknbWVzc2FnZScgICAgID0+IGVzY19odG1sX18oICdFcnJvcnMga2VwdCB0aGlzIG9iamVjdCBtYXAgZnJvbSBiZWluZyBzYXZlZC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkndHlwZScgICAgICAgID0+ICdlcnJvcicsCgkJCQknZGlzbWlzc2libGUnID0+IHRydWUsCgkJCSksCgkJCSdkYXRhX3NhdmVkJyAgICAgICAgICAgICAgPT4gYXJyYXkoCgkJCQknY29uZGl0aW9uJyAgID0+IGlzc2V0KCAkZ2V0X2RhdGFbJ2RhdGFfc2F2ZWQnXSApICYmICd0cnVlJyA9PT0gJGdldF9kYXRhWydkYXRhX3NhdmVkJ10sCgkJCQknbWVzc2FnZScgICAgID0+IGVzY19odG1sX18oICdUaGlzIGRhdGEgd2FzIHN1Y2Nlc3NmdWxseSBzYXZlZC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkndHlwZScgICAgICAgID0+ICdzdWNjZXNzJywKCQkJCSdkaXNtaXNzaWJsZScgPT4gdHJ1ZSwKCQkJKSwKCQkJJ2RhdGFfc2F2ZV9wYXJ0aWFsJyAgICAgICA9PiBhcnJheSgKCQkJCSdjb25kaXRpb24nICAgPT4gaXNzZXQoICRnZXRfZGF0YVsnZGF0YV9zYXZlZCddICkgJiYgJ3BhcnRpYWwnID09PSAkZ2V0X2RhdGFbJ2RhdGFfc2F2ZWQnXSwKCQkJCSdtZXNzYWdlJyAgICAgPT4gX18oICdUaGlzIGRhdGEgd2FzIHBhcnRpYWxseSBzdWNjZXNzZnVsbHkgc2F2ZWQuIFRoaXMgbWVhbnMgc29tZSBvZiB0aGUgZGF0YSB3YXMgdW5hYmxlIHRvIHNhdmUuIElmIHlvdSBoYXZlIGVuYWJsZWQgbG9nZ2luZyBvciBkZWJ1ZyBtb2RlIGluIHRoZSBwbHVnaW4gc2V0dGluZ3MsIHRoZXJlIHNob3VsZCBiZSBhIGxvZyBlbnRyeSB3aXRoIGZ1cnRoZXIgZGV0YWlscy4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkndHlwZScgICAgICAgID0+ICdlcnJvcicsCgkJCQknZGlzbWlzc2libGUnID0+IHRydWUsCgkJCSksCgkJCSdkYXRhX3NhdmVfZXJyb3InICAgICAgICAgPT4gYXJyYXkoCgkJCQknY29uZGl0aW9uJyAgID0+IGlzc2V0KCAkZ2V0X2RhdGFbJ2RhdGFfc2F2ZWQnXSApICYmICdmYWxzZScgPT09ICRnZXRfZGF0YVsnZGF0YV9zYXZlZCddLAoJCQkJJ21lc3NhZ2UnICAgICA9PiBlc2NfaHRtbF9fKCAnVGhpcyBkYXRhIHdhcyBub3Qgc3VjY2Vzc2Z1bGx5IHNhdmVkLiBUcnkgYWdhaW4uJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ3R5cGUnICAgICAgICA9PiAnZXJyb3InLAoJCQkJJ2Rpc21pc3NpYmxlJyA9PiB0cnVlLAoJCQkpLAoJCQknbWFwcGluZ19lcnJvcl90cmFuc2llbnQnID0+IGFycmF5KAoJCQkJJ2NvbmRpdGlvbicgICA9PiBpc3NldCggJGdldF9kYXRhWydtYXBwaW5nX2Vycm9yX3RyYW5zaWVudCddICksCgkJCQknbWVzc2FnZScgICAgID0+IGVzY19odG1sX18oICdFcnJvcnMga2VwdCB0aGVzZSBtYXBwaW5nIGVycm9ycyBmcm9tIGJlaW5nIGRlbGV0ZWQuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ3R5cGUnICAgICAgICA9PiAnZXJyb3InLAoJCQkJJ2Rpc21pc3NpYmxlJyA9PiB0cnVlLAoJCQkpLAoJCSk7CgkJcmV0dXJuICRub3RpY2VzOwoJfQoKCS8qKgoJICogQ3JlYXRlIHRoZSBub3RpY2VzLCBzZXR0aW5ncywgYW5kIGNvbmRpdGlvbnMgYnkgd2hpY2ggYWRtaW4gbm90aWNlcyBzaG91bGQgYXBwZWFyCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBkaXNwbGF5X25vdGljZXMoKSB7CgoJCS8vIGJlZm9yZSBhIG5vdGljZSBpcyBkaXNwbGF5ZWQsIHdlIHNob3VsZCBtYWtlIHN1cmUgd2UgYXJlIG9uIGEgcGFnZSByZWxhdGVkIHRvIHRoaXMgcGx1Z2luLgoJCWlmICggISBpc3NldCggJF9HRVRbJ3BhZ2UnXSApIHx8ICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gIT09ICRfR0VUWydwYWdlJ10gKSB7CgkJCXJldHVybjsKCQl9CgoJCSRnZXRfZGF0YSA9IGZpbHRlcl9pbnB1dF9hcnJheSggSU5QVVRfR0VULCBGSUxURVJfU0FOSVRJWkVfU1RSSU5HICk7CgkJJG5vdGljZXMgID0gJHRoaXMtPm5vdGljZXNfZGF0YSgpOwoKCQlmb3JlYWNoICggJG5vdGljZXMgYXMgJGtleSA9PiAkdmFsdWUgKSB7CgoJCQkkY29uZGl0aW9uID0gKGJvb2wpICR2YWx1ZVsnY29uZGl0aW9uJ107CgkJCSRtZXNzYWdlICAgPSAkdmFsdWVbJ21lc3NhZ2UnXTsKCgkJCWlmICggaXNzZXQoICR2YWx1ZVsnZGlzbWlzc2libGUnXSApICkgewoJCQkJJGRpc21pc3NpYmxlID0gJHZhbHVlWydkaXNtaXNzaWJsZSddOwoJCQl9IGVsc2UgewoJCQkJJGRpc21pc3NpYmxlID0gZmFsc2U7CgkJCX0KCgkJCWlmICggaXNzZXQoICR2YWx1ZVsndHlwZSddICkgKSB7CgkJCQkkdHlwZSA9ICR2YWx1ZVsndHlwZSddOwoJCQl9IGVsc2UgewoJCQkJJHR5cGUgPSAnJzsKCQkJfQoKCQkJaWYgKCAhIGlzc2V0KCAkdmFsdWVbJ3RlbXBsYXRlJ10gKSApIHsKCQkJCSR0ZW1wbGF0ZSA9ICcnOwoJCQl9CgoJCQlpZiAoICRjb25kaXRpb24gKSB7CgkJCQluZXcgT2JqZWN0X1N5bmNfU2ZfQWRtaW5fTm90aWNlKCAkY29uZGl0aW9uLCAkbWVzc2FnZSwgJGRpc21pc3NpYmxlLCAkdHlwZSwgJHRlbXBsYXRlICk7CgkJCX0KCQl9CgoJfQoKCS8qKgoJICogR2V0IGFsbCB0aGUgU2FsZXNmb3JjZSBvYmplY3Qgc2V0dGluZ3MgZm9yIGZpZWxkbWFwcGluZwoJICogVGhpcyB0YWtlcyBlaXRoZXIgdGhlICRfUE9TVCBhcnJheSB2aWEgYWpheCwgb3IgY2FuIGJlIGRpcmVjdGx5IGNhbGxlZCB3aXRoIGEgJGRhdGEgYXJyYXkKCSAqCgkgKiBAcGFyYW0gYXJyYXkgJGRhdGEgbXVzdCBjb250YWluIGEgU2FsZXNmb3JjZSBvYmplY3QsIGNhbiBvcHRpb25hbGx5IGNvbnRhaW4gYSB0eXBlLgoJICogQHJldHVybiBhcnJheSAkb2JqZWN0X3NldHRpbmdzCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBnZXRfc2FsZXNmb3JjZV9vYmplY3RfZGVzY3JpcHRpb24oICRkYXRhID0gYXJyYXkoKSApIHsKCQkkYWpheCA9IGZhbHNlOwoJCWlmICggZW1wdHkoICRkYXRhICkgKSB7CgkJCSRkYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9QT1NULCBGSUxURVJfU0FOSVRJWkVfU1RSSU5HICk7CgkJCSRhamF4ID0gdHJ1ZTsKCQl9CgoJCSRvYmplY3RfZGVzY3JpcHRpb24gPSBhcnJheSgpOwoKCQlpZiAoICEgZW1wdHkoICRkYXRhWydzYWxlc2ZvcmNlX29iamVjdCddICkgKSB7CgkJCSRvYmplY3QgPSAkdGhpcy0+c2FsZXNmb3JjZVsnc2ZhcGknXS0+b2JqZWN0X2Rlc2NyaWJlKCBlc2NfYXR0ciggJGRhdGFbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKSApOwoKCQkJJG9iamVjdF9maWVsZHMgICAgICAgID0gYXJyYXkoKTsKCQkJJGluY2x1ZGVfcmVjb3JkX3R5cGVzID0gYXJyYXkoKTsKCgkJCS8vIHRoZXNlIGNhbiBjb21lIGZyb20gYWpheC4KCQkJJGluY2x1ZGUgPSBpc3NldCggJGRhdGFbJ2luY2x1ZGUnXSApID8gKGFycmF5KSAkZGF0YVsnaW5jbHVkZSddIDogYXJyYXkoKTsKCQkJJGluY2x1ZGUgPSBhcnJheV9tYXAoICdlc2NfYXR0cicsICRpbmNsdWRlICk7CgoJCQlpZiAoIGluX2FycmF5KCAnZmllbGRzJywgJGluY2x1ZGUsIHRydWUgKSB8fCBlbXB0eSggJGluY2x1ZGUgKSApIHsKCQkJCSR0eXBlID0gaXNzZXQoICRkYXRhWydmaWVsZF90eXBlJ10gKSA/IGVzY19hdHRyKCAkZGF0YVsnZmllbGRfdHlwZSddICkgOiAnJzsgLy8gY2FuIGNvbWUgZnJvbSBhamF4LgoKCQkJCS8vIGhlcmUsIHdlIHNob3VsZCByZXNwZWN0IHRoZSBkZWNpc2lvbiBvZiB3aGV0aGVyIHRvIHNob3cgdGhlIEFQSSBuYW1lIG9yIHRoZSBsYWJlbC4KCQkJCSRkaXNwbGF5X3ZhbHVlID0gZ2V0X29wdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAnc2FsZXNmb3JjZV9maWVsZF9kaXNwbGF5X3ZhbHVlJywgJ2ZpZWxkX2xhYmVsJyApOwoJCQkJaWYgKCAnYXBpX25hbWUnID09PSAkZGlzcGxheV92YWx1ZSApIHsKCQkJCQkkdmlzaWJsZV9sYWJlbF9maWVsZCA9ICduYW1lJzsKCQkJCX0gZWxzZSB7CgkJCQkJJHZpc2libGVfbGFiZWxfZmllbGQgPSAnbGFiZWwnOwoJCQkJfQoJCQkJJGF0dHJpYnV0ZXMgPSBhcnJheSggJ25hbWUnLCAkdmlzaWJsZV9sYWJlbF9maWVsZCApOwoKCQkJCWZvcmVhY2ggKCAkb2JqZWN0WydkYXRhJ11bJ2ZpZWxkcyddIGFzICRrZXkgPT4gJHZhbHVlICkgewoJCQkJCWlmICggJycgPT09ICR0eXBlIHx8ICR0eXBlID09PSAkdmFsdWVbJ3R5cGUnXSApIHsKCQkJCQkJJG9iamVjdF9maWVsZHNbICRrZXkgXSA9ICR2YWx1ZTsKCQkJCQkJaWYgKCBpc3NldCggJGF0dHJpYnV0ZXMgKSApIHsKCQkJCQkJCSRvYmplY3RfZmllbGRzWyAka2V5IF0gPSBhcnJheV9pbnRlcnNlY3Rfa2V5KCAkdmFsdWUsIGFycmF5X2ZsaXAoICRhdHRyaWJ1dGVzICkgKTsKCQkJCQkJfQoJCQkJCX0KCQkJCX0KCQkJCSRvYmplY3RfZGVzY3JpcHRpb25bJ2ZpZWxkcyddID0gJG9iamVjdF9maWVsZHM7CgkJCX0KCgkJCWlmICggaW5fYXJyYXkoICdyZWNvcmRUeXBlSW5mb3MnLCAkaW5jbHVkZSwgdHJ1ZSApICkgewoJCQkJaWYgKCBpc3NldCggJG9iamVjdFsnZGF0YSddWydyZWNvcmRUeXBlSW5mb3MnXSApICYmIGNvdW50KCAkb2JqZWN0WydkYXRhJ11bJ3JlY29yZFR5cGVJbmZvcyddICkgPiAxICkgewoJCQkJCWZvcmVhY2ggKCAkb2JqZWN0WydkYXRhJ11bJ3JlY29yZFR5cGVJbmZvcyddIGFzICR0eXBlICkgewoJCQkJCQkkb2JqZWN0X3JlY29yZF90eXBlc1sgJHR5cGVbJ3JlY29yZFR5cGVJZCddIF0gPSAkdHlwZVsnbmFtZSddOwoJCQkJCX0KCQkJCQkkb2JqZWN0X2Rlc2NyaXB0aW9uWydyZWNvcmRUeXBlSW5mb3MnXSA9ICRvYmplY3RfcmVjb3JkX3R5cGVzOwoJCQkJfQoJCQl9CgkJfQoKCQlpZiAoIHRydWUgPT09ICRhamF4ICkgewoJCQl3cF9zZW5kX2pzb25fc3VjY2VzcyggJG9iamVjdF9kZXNjcmlwdGlvbiApOwoJCX0gZWxzZSB7CgkJCXJldHVybiAkb2JqZWN0X2Rlc2NyaXB0aW9uOwoJCX0KCX0KCgkvKioKCSAqIEdldCBhbGwgdGhlIFNhbGVzZm9yY2UgZmllbGRzIHNldHRpbmdzIGZvciBmaWVsZG1hcHBpbmcKCSAqIFRoaXMgdGFrZXMgZWl0aGVyIHRoZSAkX1BPU1QgYXJyYXkgdmlhIGFqYXgsIG9yIGNhbiBiZSBkaXJlY3RseSBjYWxsZWQgd2l0aCBhICRkYXRhIGFycmF5CgkgKgoJICogQHBhcmFtIGFycmF5ICRkYXRhIG11c3QgY29udGFpbiBhIFNhbGVzZm9yY2Ugb2JqZWN0IHVubGVzcyBpdCBpcyBBamF4LCBjYW4gb3B0aW9uYWxseSBjb250YWluIGEgdHlwZS4KCSAqIEByZXR1cm4gYXJyYXkgJG9iamVjdF9maWVsZHMKCSAqLwoJcHVibGljIGZ1bmN0aW9uIGdldF9zYWxlc2ZvcmNlX29iamVjdF9maWVsZHMoICRkYXRhID0gYXJyYXkoKSApIHsKCQkkYWpheCAgICAgID0gZmFsc2U7CgkJJHBvc3RfZGF0YSA9IGZpbHRlcl9pbnB1dF9hcnJheSggSU5QVVRfUE9TVCwgRklMVEVSX1NBTklUSVpFX1NUUklORyApOwoJCWlmICggZW1wdHkoICRkYXRhICkgKSB7CgkJCSRzYWxlc2ZvcmNlX29iamVjdCA9IGlzc2V0KCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX29iamVjdCddICkgPyBzYW5pdGl6ZV90ZXh0X2ZpZWxkKCB3cF91bnNsYXNoKCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX29iamVjdCddICkgKSA6ICcnOwoJCQkkYWpheCAgICAgICAgICAgICAgPSB0cnVlOwoJCQkvLyBoZXJlLCB3ZSBzaG91bGQgcmVzcGVjdCB0aGUgZGVjaXNpb24gb2Ygd2hldGhlciB0byBzaG93IHRoZSBBUEkgbmFtZSBvciB0aGUgbGFiZWwuCgkJCSRkaXNwbGF5X3ZhbHVlID0gZ2V0X29wdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAnc2FsZXNmb3JjZV9maWVsZF9kaXNwbGF5X3ZhbHVlJywgJ2ZpZWxkX2xhYmVsJyApOwoJCQlpZiAoICdhcGlfbmFtZScgPT09ICRkaXNwbGF5X3ZhbHVlICkgewoJCQkJJHZpc2libGVfbGFiZWxfZmllbGQgPSAnbmFtZSc7CgkJCX0gZWxzZSB7CgkJCQkkdmlzaWJsZV9sYWJlbF9maWVsZCA9ICdsYWJlbCc7CgkJCX0KCQkJJGF0dHJpYnV0ZXMgPSBhcnJheSggJ25hbWUnLCAkdmlzaWJsZV9sYWJlbF9maWVsZCApOwoJCX0gZWxzZSB7CgkJCSRzYWxlc2ZvcmNlX29iamVjdCA9IGlzc2V0KCAkZGF0YVsnc2FsZXNmb3JjZV9vYmplY3QnXSApID8gc2FuaXRpemVfdGV4dF9maWVsZCggd3BfdW5zbGFzaCggJGRhdGFbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKSApIDogJyc7CgkJfQoJCSRvYmplY3RfZmllbGRzID0gYXJyYXkoKTsKCQlpZiAoICEgZW1wdHkoICRzYWxlc2ZvcmNlX29iamVjdCApICkgewoJCQkkb2JqZWN0ICAgICAgICAgICAgICAgPSAkdGhpcy0+c2FsZXNmb3JjZVsnc2ZhcGknXS0+b2JqZWN0X2Rlc2NyaWJlKCBlc2NfYXR0ciggJHNhbGVzZm9yY2Vfb2JqZWN0ICkgKTsKCQkJJG9iamVjdF9maWVsZHMgICAgICAgID0gYXJyYXkoKTsKCQkJJHR5cGUgICAgICAgICAgICAgICAgID0gaXNzZXQoICRkYXRhWyd0eXBlJ10gKSA/IGVzY19hdHRyKCAkZGF0YVsndHlwZSddICkgOiAnJzsKCQkJJGluY2x1ZGVfcmVjb3JkX3R5cGVzID0gaXNzZXQoICRkYXRhWydpbmNsdWRlX3JlY29yZF90eXBlcyddICkgPyBlc2NfYXR0ciggJGRhdGFbJ2luY2x1ZGVfcmVjb3JkX3R5cGVzJ10gKSA6IGZhbHNlOwoJCQlmb3JlYWNoICggJG9iamVjdFsnZGF0YSddWydmaWVsZHMnXSBhcyAka2V5ID0+ICR2YWx1ZSApIHsKCQkJCWlmICggJycgPT09ICR0eXBlIHx8ICR0eXBlID09PSAkdmFsdWVbJ3R5cGUnXSApIHsKCQkJCQkkb2JqZWN0X2ZpZWxkc1sgJGtleSBdID0gJHZhbHVlOwoJCQkJCWlmICggaXNzZXQoICRhdHRyaWJ1dGVzICkgKSB7CgkJCQkJCSRvYmplY3RfZmllbGRzWyAka2V5IF0gPSBhcnJheV9pbnRlcnNlY3Rfa2V5KCAkdmFsdWUsIGFycmF5X2ZsaXAoICRhdHRyaWJ1dGVzICkgKTsKCQkJCQl9CgkJCQl9CgkJCX0KCQkJaWYgKCB0cnVlID09PSAkaW5jbHVkZV9yZWNvcmRfdHlwZXMgKSB7CgkJCQkkb2JqZWN0X3JlY29yZF90eXBlcyA9IGFycmF5KCk7CgkJCQlpZiAoIGlzc2V0KCAkb2JqZWN0WydkYXRhJ11bJ3JlY29yZFR5cGVJbmZvcyddICkgJiYgY291bnQoICRvYmplY3RbJ2RhdGEnXVsncmVjb3JkVHlwZUluZm9zJ10gKSA+IDEgKSB7CgkJCQkJZm9yZWFjaCAoICRvYmplY3RbJ2RhdGEnXVsncmVjb3JkVHlwZUluZm9zJ10gYXMgJHR5cGUgKSB7CgkJCQkJCSRvYmplY3RfcmVjb3JkX3R5cGVzWyAkdHlwZVsncmVjb3JkVHlwZUlkJ10gXSA9ICR0eXBlWyduYW1lJ107CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoKCQlpZiAoIHRydWUgPT09ICRhamF4ICkgewoJCQkkYWpheF9yZXNwb25zZSA9IGFycmF5KAoJCQkJJ2ZpZWxkcycgPT4gJG9iamVjdF9maWVsZHMsCgkJCSk7CgkJCXdwX3NlbmRfanNvbl9zdWNjZXNzKCAkYWpheF9yZXNwb25zZSApOwoJCX0gZWxzZSB7CgkJCXJldHVybiAkb2JqZWN0X2ZpZWxkczsKCQl9CgoJfQoKCS8qKgoJICogR2V0IFdvcmRQcmVzcyBvYmplY3QgZmllbGRzIGZvciBmaWVsZG1hcHBpbmcKCSAqIFRoaXMgdGFrZXMgZWl0aGVyIHRoZSAkX1BPU1QgYXJyYXkgdmlhIGFqYXgsIG9yIGNhbiBiZSBkaXJlY3RseSBjYWxsZWQgd2l0aCBhICR3b3JkcHJlc3Nfb2JqZWN0IGZpZWxkCgkgKgoJICogQHBhcmFtIHN0cmluZyAkd29yZHByZXNzX29iamVjdCBpcyB0aGUgbmFtZSBvZiB0aGUgV29yZFByZXNzIG9iamVjdC4KCSAqIEByZXR1cm4gYXJyYXkgJG9iamVjdF9maWVsZHMKCSAqLwoJcHVibGljIGZ1bmN0aW9uIGdldF93b3JkcHJlc3Nfb2JqZWN0X2ZpZWxkcyggJHdvcmRwcmVzc19vYmplY3QgPSAnJyApIHsKCQkkYWpheCAgICAgID0gZmFsc2U7CgkJJHBvc3RfZGF0YSA9IGZpbHRlcl9pbnB1dF9hcnJheSggSU5QVVRfUE9TVCwgRklMVEVSX1NBTklUSVpFX1NUUklORyApOwoJCWlmICggZW1wdHkoICR3b3JkcHJlc3Nfb2JqZWN0ICkgKSB7CgkJCSR3b3JkcHJlc3Nfb2JqZWN0ID0gaXNzZXQoICRwb3N0X2RhdGFbJ3dvcmRwcmVzc19vYmplY3QnXSApID8gc2FuaXRpemVfdGV4dF9maWVsZCggd3BfdW5zbGFzaCggJHBvc3RfZGF0YVsnd29yZHByZXNzX29iamVjdCddICkgKSA6ICcnOwoJCQkkYWpheCAgICAgICAgICAgICA9IHRydWU7CgkJfQoKCQkkb2JqZWN0X2ZpZWxkcyA9ICR0aGlzLT53b3JkcHJlc3MtPmdldF93b3JkcHJlc3Nfb2JqZWN0X2ZpZWxkcyggJHdvcmRwcmVzc19vYmplY3QgKTsKCgkJaWYgKCB0cnVlID09PSAkYWpheCApIHsKCQkJJGFqYXhfcmVzcG9uc2UgPSBhcnJheSgKCQkJCSdmaWVsZHMnID0+ICRvYmplY3RfZmllbGRzLAoJCQkpOwoJCQl3cF9zZW5kX2pzb25fc3VjY2VzcyggJGFqYXhfcmVzcG9uc2UgKTsKCQl9IGVsc2UgewoJCQlyZXR1cm4gJG9iamVjdF9maWVsZHM7CgkJfQoJfQoKCS8qKgoJICogTWFudWFsbHkgcHVzaCB0aGUgV29yZFByZXNzIG9iamVjdCB0byBTYWxlc2ZvcmNlCgkgKiBUaGlzIHRha2VzIGVpdGhlciB0aGUgJF9QT1NUIGFycmF5IHZpYSBhamF4LCBvciBjYW4gYmUgZGlyZWN0bHkgY2FsbGVkIHdpdGggJHdvcmRwcmVzc19vYmplY3QgYW5kICR3b3JkcHJlc3NfaWQgZmllbGRzCgkgKgoJICogQHBhcmFtIHN0cmluZyAkd29yZHByZXNzX29iamVjdCBpcyB0aGUgbmFtZSBvZiB0aGUgV29yZFByZXNzIG9iamVjdC4KCSAqIEBwYXJhbSBpbnQgICAgJHdvcmRwcmVzc19pZCBpcyB0aGUgSUQgb2YgdGhlIFdvcmRQcmVzcyByZWNvcmQuCgkgKiBAcGFyYW0gYm9vbCAgICRmb3JjZV9yZXR1cm4gRm9yY2UgdGhlIG1ldGhvZCB0byByZXR1cm4ganNvbiBpbnN0ZWFkIG9mIG91dHB1dHRpbmcgaXQuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBwdXNoX3RvX3NhbGVzZm9yY2UoICR3b3JkcHJlc3Nfb2JqZWN0ID0gJycsICR3b3JkcHJlc3NfaWQgPSAnJywgJGZvcmNlX3JldHVybiA9IGZhbHNlICkgewoJCSRwb3N0X2RhdGEgPSBmaWx0ZXJfaW5wdXRfYXJyYXkoIElOUFVUX1BPU1QsIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcgKTsKCQlpZiAoIGVtcHR5KCAkd29yZHByZXNzX29iamVjdCApICYmIGVtcHR5KCAkd29yZHByZXNzX2lkICkgKSB7CgkJCSR3b3JkcHJlc3Nfb2JqZWN0ID0gaXNzZXQoICRwb3N0X2RhdGFbJ3dvcmRwcmVzc19vYmplY3QnXSApID8gc2FuaXRpemVfdGV4dF9maWVsZCggd3BfdW5zbGFzaCggJHBvc3RfZGF0YVsnd29yZHByZXNzX29iamVjdCddICkgKSA6ICcnOwoJCQkkd29yZHByZXNzX2lkICAgICA9IGlzc2V0KCAkcG9zdF9kYXRhWyd3b3JkcHJlc3NfaWQnXSApID8gYWJzaW50KCAkcG9zdF9kYXRhWyd3b3JkcHJlc3NfaWQnXSApIDogJyc7CgkJfQoKCQkvLyBjbGFyaWZ5IHdoYXQgdGhhdCB2YXJpYWJsZSBpcyBpbiB0aGlzIGNvbnRleHQuCgkJJG9iamVjdF90eXBlID0gJHdvcmRwcmVzc19vYmplY3Q7CgoJCS8vIFdoZW4gb2JqZWN0cyBhcmUgYWxyZWFkeSBtYXBwZWQsIHRoZXJlIGlzIGEgU2FsZXNmb3JjZSBpZCBhcyB3ZWxsLiBPdGhlcndpc2UsIGl0J3MgYmxhbmsuCgkJJHNhbGVzZm9yY2VfaWQgPSBpc3NldCggJHBvc3RfZGF0YVsnc2FsZXNmb3JjZV9pZCddICkgPyBzYW5pdGl6ZV90ZXh0X2ZpZWxkKCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX2lkJ10gKSA6ICcnOwoJCWlmICggJycgPT09ICRzYWxlc2ZvcmNlX2lkICkgewoJCQkkbWV0aG9kID0gJ1BPU1QnOwoJCX0gZWxzZSB7CgkJCSRtZXRob2QgPSAnUFVUJzsKCQl9CgoJCSRyZXN1bHQgPSAkdGhpcy0+cHVzaC0+bWFudWFsX3B1c2goICRvYmplY3RfdHlwZSwgJHdvcmRwcmVzc19pZCwgJG1ldGhvZCApOwoKCQlpZiAoIGZhbHNlID09PSAkZm9yY2VfcmV0dXJuICYmICEgZW1wdHkoICRwb3N0X2RhdGFbJ3dvcmRwcmVzc19vYmplY3QnXSApICYmICEgZW1wdHkoICRwb3N0X2RhdGFbJ3dvcmRwcmVzc19pZCddICkgKSB7CgkJCXdwX3NlbmRfanNvbl9zdWNjZXNzKCAkcmVzdWx0ICk7CgkJfSBlbHNlIHsKCQkJcmV0dXJuICRyZXN1bHQ7CgkJfQoKCX0KCgkvKioKCSAqIE1hbnVhbGx5IHB1bGwgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0IGludG8gV29yZFByZXNzCgkgKiBUaGlzIHRha2VzIGVpdGhlciB0aGUgJF9QT1NUIGFycmF5IHZpYSBhamF4LCBvciBjYW4gYmUgZGlyZWN0bHkgY2FsbGVkIHdpdGggJHNhbGVzZm9yY2VfaWQgZmllbGRzCgkgKgoJICogQHBhcmFtIHN0cmluZyAkc2FsZXNmb3JjZV9pZCBpcyB0aGUgSUQgb2YgdGhlIFNhbGVzZm9yY2UgcmVjb3JkLgoJICogQHBhcmFtIHN0cmluZyAkd29yZHByZXNzX29iamVjdCBpcyB0aGUgbmFtZSBvZiB0aGUgV29yZFByZXNzIG9iamVjdC4KCSAqLwoJcHVibGljIGZ1bmN0aW9uIHB1bGxfZnJvbV9zYWxlc2ZvcmNlKCAkc2FsZXNmb3JjZV9pZCA9ICcnLCAkd29yZHByZXNzX29iamVjdCA9ICcnICkgewoJCSRwb3N0X2RhdGEgPSBmaWx0ZXJfaW5wdXRfYXJyYXkoIElOUFVUX1BPU1QsIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcgKTsKCQlpZiAoIGVtcHR5KCAkd29yZHByZXNzX29iamVjdCApICYmIGVtcHR5KCAkc2FsZXNmb3JjZV9pZCApICkgewoJCQkkd29yZHByZXNzX29iamVjdCA9IGlzc2V0KCAkcG9zdF9kYXRhWyd3b3JkcHJlc3Nfb2JqZWN0J10gKSA/IHNhbml0aXplX3RleHRfZmllbGQoIHdwX3Vuc2xhc2goICRwb3N0X2RhdGFbJ3dvcmRwcmVzc19vYmplY3QnXSApICkgOiAnJzsKCQkJJHNhbGVzZm9yY2VfaWQgICAgPSBpc3NldCggJHBvc3RfZGF0YVsnc2FsZXNmb3JjZV9pZCddICkgPyBzYW5pdGl6ZV90ZXh0X2ZpZWxkKCB3cF91bnNsYXNoKCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX2lkJ10gKSApIDogJyc7CgkJfQoJCSR0eXBlICAgPSAkdGhpcy0+c2FsZXNmb3JjZVsnc2ZhcGknXS0+Z2V0X3NvYmplY3RfdHlwZSggJHNhbGVzZm9yY2VfaWQgKTsKCQkkcmVzdWx0ID0gJHRoaXMtPnB1bGwtPm1hbnVhbF9wdWxsKCAkdHlwZSwgJHNhbGVzZm9yY2VfaWQsICR3b3JkcHJlc3Nfb2JqZWN0ICk7IC8vIHdlIHdhbnQgdGhlIHdwIG9iamVjdCB0byBtYWtlIHN1cmUgd2UgZ2V0IHRoZSByaWdodCBmaWVsZG1hcC4KCQlpZiAoICEgZW1wdHkoICRwb3N0X2RhdGEgKSApIHsKCQkJd3Bfc2VuZF9qc29uX3N1Y2Nlc3MoICRyZXN1bHQgKTsKCQl9IGVsc2UgewoJCQlyZXR1cm4gJHJlc3VsdDsKCQl9Cgl9CgoJLyoqCgkgKiBNYW51YWxseSBwdWxsIHRoZSBTYWxlc2ZvcmNlIG9iamVjdCBpbnRvIFdvcmRQcmVzcwoJICogVGhpcyB0YWtlcyBhbiBpZCBmb3IgYSBtYXBwaW5nIG9iamVjdCByb3cKCSAqCgkgKiBAcGFyYW0gaW50ICRtYXBwaW5nX2lkIGlzIHRoZSBJRCBvZiB0aGUgbWFwcGluZyBvYmplY3QgcmVjb3JkLgoJICovCglwdWJsaWMgZnVuY3Rpb24gcmVmcmVzaF9tYXBwZWRfZGF0YSggJG1hcHBpbmdfaWQgPSAnJyApIHsKCQkkcG9zdF9kYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9QT1NULCBGSUxURVJfU0FOSVRJWkVfU1RSSU5HICk7CgkJaWYgKCBlbXB0eSggJG1hcHBpbmdfaWQgKSApIHsKCQkJJG1hcHBpbmdfaWQgPSBpc3NldCggJHBvc3RfZGF0YVsnbWFwcGluZ19pZCddICkgPyBhYnNpbnQoICRwb3N0X2RhdGFbJ21hcHBpbmdfaWQnXSApIDogJyc7CgkJfQoJCSRyZXN1bHQgPSAkdGhpcy0+bWFwcGluZ3MtPmdldF9hbGxfb2JqZWN0X21hcHMoCgkJCWFycmF5KAoJCQkJJ2lkJyA9PiAkbWFwcGluZ19pZCwKCQkJKQoJCSk7CgoJCSRvYmplY3RfbWFwID0gYXJyYXkoKTsKCgkJLy8gcmVzdWx0IGlzIGFuIGFycmF5IG9mIGFycmF5cywgbm90IGp1c3Qgb25lIGFycmF5LgoJCWlmICggMSA9PT0gY291bnQoICRyZXN1bHQgKSApIHsKCQkJJG9iamVjdF9tYXAgPSAkcmVzdWx0WzBdOwoJCX0KCgkJaWYgKCAhIGVtcHR5KCAkcG9zdF9kYXRhICkgKSB7CgkJCXdwX3NlbmRfanNvbl9zdWNjZXNzKCAkb2JqZWN0X21hcCApOwoJCX0gZWxzZSB7CgkJCXJldHVybiAkb2JqZWN0X21hcDsKCQl9Cgl9CgoJLyoqCgkgKiBQcmVwYXJlIGZpZWxkbWFwIGRhdGEgYW5kIHJlZGlyZWN0IGFmdGVyIHByb2Nlc3NpbmcKCSAqIFRoaXMgcnVucyB3aGVuIHRoZSBjcmVhdGUgb3IgdXBkYXRlIGZvcm1zIGFyZSBzdWJtaXR0ZWQKCSAqIEl0IGlzIHB1YmxpYyBiZWNhdXNlIGl0IGRlcGVuZHMgb24gYW4gYWRtaW4gaG9vawoJICogSXQgdGhlbiBjYWxscyB0aGUgT2JqZWN0X1N5bmNfU2ZfTWFwcGluZyBjbGFzcyBhbmQgc2VuZHMgcHJlcGFyZWQgZGF0YSBvdmVyIHRvIGl0LCB0aGVuIHJlZGlyZWN0cyB0byB0aGUgY29ycmVjdCBwYWdlCgkgKiBUaGlzIG1ldGhvZCBkb2VzIGluY2x1ZGUgZXJyb3IgaGFuZGxpbmcsIGJ5IGxvYWRpbmcgdGhlIHN1Ym1pc3Npb24gaW4gYSB0cmFuc2llbnQgaWYgdGhlcmUgaXMgYW4gZXJyb3IsIGFuZCB0aGVuIGRlbGV0aW5nIGl0IHVwb24gc3VjY2VzcwoJICovCglwdWJsaWMgZnVuY3Rpb24gcHJlcGFyZV9maWVsZG1hcF9kYXRhKCkgewoJCSRlcnJvciAgICAgPSBmYWxzZTsKCQkkcG9zdF9kYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9QT1NULCBGSUxURVJfU0FOSVRJWkVfU1RSSU5HICk7CgkJJGNhY2hla2V5ICA9IHdwX2pzb25fZW5jb2RlKCAkcG9zdF9kYXRhICk7CgkJaWYgKCBmYWxzZSAhPT0gJGNhY2hla2V5ICkgewoJCQkkY2FjaGVrZXkgPSBtZDUoICRjYWNoZWtleSApOwoJCX0KCgkJaWYgKCAhIGlzc2V0KCAkcG9zdF9kYXRhWydsYWJlbCddICkgfHwgISBpc3NldCggJHBvc3RfZGF0YVsnc2FsZXNmb3JjZV9vYmplY3QnXSApIHx8ICEgaXNzZXQoICRwb3N0X2RhdGFbJ3dvcmRwcmVzc19vYmplY3QnXSApICkgewoJCQkkZXJyb3IgPSB0cnVlOwoJCX0KCQlpZiAoIHRydWUgPT09ICRlcnJvciApIHsKCQkJJHRoaXMtPnNmd3BfdHJhbnNpZW50cy0+c2V0KCAkY2FjaGVrZXksICRwb3N0X2RhdGEsICR0aGlzLT53b3JkcHJlc3MtPm9wdGlvbnNbJ2NhY2hlX2V4cGlyYXRpb24nXSApOwoJCQlpZiAoICcnICE9PSAkY2FjaGVrZXkgKSB7CgkJCQkkdXJsID0gZXNjX3VybF9yYXcoICRwb3N0X2RhdGFbJ3JlZGlyZWN0X3VybF9lcnJvciddICkgLiAnJnRyYW5zaWVudD0nIC4gJGNhY2hla2V5OwoJCQl9CgkJfSBlbHNlIHsgLy8gdGhlcmUgYXJlIG5vIGVycm9ycwoJCQkvLyBzZW5kIHRoZSByb3cgdG8gdGhlIGZpZWxkbWFwIGNsYXNzCgkJCS8vIGlmIGl0IGlzIGFkZCBvciBjbG9uZSwgdXNlIHRoZSBjcmVhdGUgbWV0aG9kLgoJCQkkbWV0aG9kICAgICAgICAgICAgPSBlc2NfYXR0ciggJHBvc3RfZGF0YVsnbWV0aG9kJ10gKTsKCQkJJHNhbGVzZm9yY2VfZmllbGRzID0gJHRoaXMtPmdldF9zYWxlc2ZvcmNlX29iamVjdF9maWVsZHMoCgkJCQlhcnJheSgKCQkJCQknc2FsZXNmb3JjZV9vYmplY3QnID0+ICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2Vfb2JqZWN0J10sCgkJCQkpCgkJCSk7CgkJCSR3b3JkcHJlc3NfZmllbGRzICA9ICR0aGlzLT5nZXRfd29yZHByZXNzX29iamVjdF9maWVsZHMoICRwb3N0X2RhdGFbJ3dvcmRwcmVzc19vYmplY3QnXSApOwoJCQlpZiAoICdhZGQnID09PSAkbWV0aG9kIHx8ICdjbG9uZScgPT09ICRtZXRob2QgKSB7CgkJCQkkcmVzdWx0ID0gJHRoaXMtPm1hcHBpbmdzLT5jcmVhdGVfZmllbGRtYXAoICRwb3N0X2RhdGEsICR3b3JkcHJlc3NfZmllbGRzLCAkc2FsZXNmb3JjZV9maWVsZHMgKTsKCQkJfSBlbHNlaWYgKCAnZWRpdCcgPT09ICRtZXRob2QgKSB7IC8vIGlmIGl0IGlzIGVkaXQsIHVzZSB0aGUgdXBkYXRlIG1ldGhvZC4KCQkJCSRpZCAgICAgPSBlc2NfYXR0ciggJHBvc3RfZGF0YVsnaWQnXSApOwoJCQkJJHJlc3VsdCA9ICR0aGlzLT5tYXBwaW5ncy0+dXBkYXRlX2ZpZWxkbWFwKCAkcG9zdF9kYXRhLCAkd29yZHByZXNzX2ZpZWxkcywgJHNhbGVzZm9yY2VfZmllbGRzLCAkaWQgKTsKCQkJfQoJCQlpZiAoIGZhbHNlID09PSAkcmVzdWx0ICkgeyAvLyBpZiB0aGUgZGF0YWJhc2UgZGlkbid0IHNhdmUsIGl0J3Mgc3RpbGwgYW4gZXJyb3IuCgkJCQkkdGhpcy0+c2Z3cF90cmFuc2llbnRzLT5zZXQoICRjYWNoZWtleSwgJHBvc3RfZGF0YSwgJHRoaXMtPndvcmRwcmVzcy0+b3B0aW9uc1snY2FjaGVfZXhwaXJhdGlvbiddICk7CgkJCQlpZiAoICcnICE9PSAkY2FjaGVrZXkgKSB7CgkJCQkJJHVybCA9IGVzY191cmxfcmF3KCAkcG9zdF9kYXRhWydyZWRpcmVjdF91cmxfZXJyb3InXSApIC4gJyZ0cmFuc2llbnQ9JyAuICRjYWNoZWtleTsKCQkJCX0KCQkJfSBlbHNlIHsKCQkJCS8vIGlmIHRoZSB1c2VyIGhhcyBzYXZlZCBhIGZpZWxkbWFwLCBjbGVhciB0aGUgY3VycmVudGx5IHJ1bm5pbmcgcXVlcnkgdmFsdWUgaWYgdGhlcmUgaXMgb25lLgoJCQkJaWYgKCAnJyAhPT0gZ2V0X29wdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAnY3VycmVudGx5X3B1bGxpbmdfcXVlcnlfJyAuICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2Vfb2JqZWN0J10sICcnICkgKSB7CgkJCQkJJHRoaXMtPnB1bGwtPmNsZWFyX2N1cnJlbnRfdHlwZV9xdWVyeSggJHBvc3RfZGF0YVsnc2FsZXNmb3JjZV9vYmplY3QnXSApOwoJCQkJfQoJCQkJaWYgKCBpc3NldCggJHBvc3RfZGF0YVsndHJhbnNpZW50J10gKSApIHsgLy8gdGhlcmUgd2FzIHByZXZpb3VzbHkgYW4gZXJyb3Igc2F2ZWQuIGNhbiBkZWxldGUgaXQgbm93LgoJCQkJCSR0aGlzLT5zZndwX3RyYW5zaWVudHMtPmRlbGV0ZSggZXNjX2F0dHIoICRwb3N0X2RhdGFbJ21hcF90cmFuc2llbnQnXSApICk7CgkJCQl9CgkJCQkvLyB0aGVuIHNlbmQgdGhlIHVzZXIgdG8gdGhlIGxpc3Qgb2YgZmllbGRtYXBzLgoJCQkJJHVybCA9IGVzY191cmxfcmF3KCAkcG9zdF9kYXRhWydyZWRpcmVjdF91cmxfc3VjY2VzcyddICk7CgkJCX0KCQl9CgkJd3Bfc2FmZV9yZWRpcmVjdCggJHVybCApOwoJCWV4aXQoKTsKCX0KCgkvKioKCSAqIERlbGV0ZSBmaWVsZG1hcCBkYXRhIGFuZCByZWRpcmVjdCBhZnRlciBwcm9jZXNzaW5nCgkgKiBUaGlzIHJ1bnMgd2hlbiB0aGUgZGVsZXRlIGxpbmsgaXMgY2xpY2tlZCwgYWZ0ZXIgdGhlIHVzZXIgY29uZmlybXMKCSAqIEl0IGlzIHB1YmxpYyBiZWNhdXNlIGl0IGRlcGVuZHMgb24gYW4gYWRtaW4gaG9vawoJICogSXQgdGhlbiBjYWxscyB0aGUgT2JqZWN0X1N5bmNfU2ZfTWFwcGluZyBjbGFzcyBhbmQgdGhlIGRlbGV0ZSBtZXRob2QKCSAqLwoJcHVibGljIGZ1bmN0aW9uIGRlbGV0ZV9maWVsZG1hcCgpIHsKCQkkcG9zdF9kYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9QT1NULCBGSUxURVJfU0FOSVRJWkVfU1RSSU5HICk7CgkJaWYgKCAkcG9zdF9kYXRhWydpZCddICkgewoJCQkkcmVzdWx0ID0gJHRoaXMtPm1hcHBpbmdzLT5kZWxldGVfZmllbGRtYXAoICRwb3N0X2RhdGFbJ2lkJ10gKTsKCQkJaWYgKCB0cnVlID09PSAkcmVzdWx0ICkgewoJCQkJJHVybCA9IGVzY191cmxfcmF3KCAkcG9zdF9kYXRhWydyZWRpcmVjdF91cmxfc3VjY2VzcyddICk7CgkJCX0gZWxzZSB7CgkJCQkkdXJsID0gZXNjX3VybF9yYXcoICRwb3N0X2RhdGFbJ3JlZGlyZWN0X3VybF9lcnJvciddIC4gJyZpZD0nIC4gJHBvc3RfZGF0YVsnaWQnXSApOwoJCQl9CgkJCXdwX3NhZmVfcmVkaXJlY3QoICR1cmwgKTsKCQkJZXhpdCgpOwoJCX0KCX0KCgkvKioKCSAqIFByZXBhcmUgb2JqZWN0IGRhdGEgYW5kIHJlZGlyZWN0IGFmdGVyIHByb2Nlc3NpbmcKCSAqIFRoaXMgcnVucyB3aGVuIHRoZSB1cGRhdGUgZm9ybSBpcyBzdWJtaXR0ZWQKCSAqIEl0IGlzIHB1YmxpYyBiZWNhdXNlIGl0IGRlcGVuZHMgb24gYW4gYWRtaW4gaG9vawoJICogSXQgdGhlbiBjYWxscyB0aGUgT2JqZWN0X1N5bmNfU2ZfTWFwcGluZyBjbGFzcyBhbmQgc2VuZHMgcHJlcGFyZWQgZGF0YSBvdmVyIHRvIGl0LCB0aGVuIHJlZGlyZWN0cyB0byB0aGUgY29ycmVjdCBwYWdlCgkgKiBUaGlzIG1ldGhvZCBkb2VzIGluY2x1ZGUgZXJyb3IgaGFuZGxpbmcsIGJ5IGxvYWRpbmcgdGhlIHN1Ym1pc3Npb24gaW4gYSB0cmFuc2llbnQgaWYgdGhlcmUgaXMgYW4gZXJyb3IsIGFuZCB0aGVuIGRlbGV0aW5nIGl0IHVwb24gc3VjY2VzcwoJICovCglwdWJsaWMgZnVuY3Rpb24gcHJlcGFyZV9vYmplY3RfbWFwX2RhdGEoKSB7CgkJJGVycm9yICAgICA9IGZhbHNlOwoJCSRwb3N0X2RhdGEgPSBmaWx0ZXJfaW5wdXRfYXJyYXkoIElOUFVUX1BPU1QsIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcgKTsKCQkkY2FjaGVrZXkgID0gd3BfanNvbl9lbmNvZGUoICRwb3N0X2RhdGEgKTsKCQlpZiAoIGZhbHNlICE9PSAkY2FjaGVrZXkgKSB7CgkJCSRjYWNoZWtleSA9IG1kNSggJGNhY2hla2V5ICk7CgkJfQoKCQlpZiAoICEgaXNzZXQoICRwb3N0X2RhdGFbJ3dvcmRwcmVzc19pZCddICkgfHwgISBpc3NldCggJHBvc3RfZGF0YVsnc2FsZXNmb3JjZV9pZCddICkgKSB7CgkJCSRlcnJvciA9IHRydWU7CgkJfQoJCWlmICggdHJ1ZSA9PT0gJGVycm9yICkgewoJCQkkdGhpcy0+c2Z3cF90cmFuc2llbnRzLT5zZXQoICRjYWNoZWtleSwgJHBvc3RfZGF0YSwgJHRoaXMtPndvcmRwcmVzcy0+b3B0aW9uc1snY2FjaGVfZXhwaXJhdGlvbiddICk7CgkJCWlmICggJycgIT09ICRjYWNoZWtleSApIHsKCQkJCSR1cmwgPSBlc2NfdXJsX3JhdyggJHBvc3RfZGF0YVsncmVkaXJlY3RfdXJsX2Vycm9yJ10gKSAuICcmbWFwX3RyYW5zaWVudD0nIC4gJGNhY2hla2V5OwoJCQl9CgkJfSBlbHNlIHsgLy8gdGhlcmUgYXJlIG5vIGVycm9ycwoJCQkvLyBzZW5kIHRoZSByb3cgdG8gdGhlIG9iamVjdCBtYXAgY2xhc3MuCgkJCSRtZXRob2QgPSBlc2NfYXR0ciggJHBvc3RfZGF0YVsnbWV0aG9kJ10gKTsKCQkJaWYgKCAnZWRpdCcgPT09ICRtZXRob2QgKSB7IC8vIGlmIGl0IGlzIGVkaXQsIHVzZSB0aGUgdXBkYXRlIG1ldGhvZC4KCQkJCSRpZCAgICAgPSBlc2NfYXR0ciggJHBvc3RfZGF0YVsnaWQnXSApOwoJCQkJJHJlc3VsdCA9ICR0aGlzLT5tYXBwaW5ncy0+dXBkYXRlX29iamVjdF9tYXAoICRwb3N0X2RhdGEsICRpZCApOwoJCQl9CgkJCWlmICggZmFsc2UgPT09ICRyZXN1bHQgKSB7IC8vIGlmIHRoZSBkYXRhYmFzZSBkaWRuJ3Qgc2F2ZSwgaXQncyBzdGlsbCBhbiBlcnJvci4KCQkJCSR0aGlzLT5zZndwX3RyYW5zaWVudHMtPnNldCggJGNhY2hla2V5LCAkcG9zdF9kYXRhLCAkdGhpcy0+d29yZHByZXNzLT5vcHRpb25zWydjYWNoZV9leHBpcmF0aW9uJ10gKTsKCQkJCWlmICggJycgIT09ICRjYWNoZWtleSApIHsKCQkJCQkkdXJsID0gZXNjX3VybF9yYXcoICRwb3N0X2RhdGFbJ3JlZGlyZWN0X3VybF9lcnJvciddICkgLiAnJm1hcF90cmFuc2llbnQ9JyAuICRjYWNoZWtleTsKCQkJCX0KCQkJfSBlbHNlIHsKCQkJCWlmICggaXNzZXQoICRwb3N0X2RhdGFbJ21hcF90cmFuc2llbnQnXSApICkgeyAvLyB0aGVyZSB3YXMgcHJldmlvdXNseSBhbiBlcnJvciBzYXZlZC4gY2FuIGRlbGV0ZSBpdCBub3cuCgkJCQkJJHRoaXMtPnNmd3BfdHJhbnNpZW50cy0+ZGVsZXRlKCBlc2NfYXR0ciggJHBvc3RfZGF0YVsnbWFwX3RyYW5zaWVudCddICkgKTsKCQkJCX0KCQkJCS8vIHRoZW4gc2VuZCB0aGUgdXNlciB0byB0aGUgc3VjY2VzcyByZWRpcmVjdCB1cmwuCgkJCQkkdXJsID0gZXNjX3VybF9yYXcoICRwb3N0X2RhdGFbJ3JlZGlyZWN0X3VybF9zdWNjZXNzJ10gKTsKCQkJfQoJCX0KCQl3cF9zYWZlX3JlZGlyZWN0KCAkdXJsICk7CgkJZXhpdCgpOwoJfQoKCS8qKgoJICogRGVsZXRlIG9iamVjdCBtYXAgZGF0YSBhbmQgcmVkaXJlY3QgYWZ0ZXIgcHJvY2Vzc2luZwoJICogVGhpcyBydW5zIHdoZW4gdGhlIGRlbGV0ZSBsaW5rIGlzIGNsaWNrZWQgb24gYW4gZXJyb3Igcm93LCBhZnRlciB0aGUgdXNlciBjb25maXJtcwoJICogSXQgaXMgcHVibGljIGJlY2F1c2UgaXQgZGVwZW5kcyBvbiBhbiBhZG1pbiBob29rCgkgKiBJdCB0aGVuIGNhbGxzIHRoZSBPYmplY3RfU3luY19TZl9NYXBwaW5nIGNsYXNzIGFuZCB0aGUgZGVsZXRlIG1ldGhvZAoJICovCglwdWJsaWMgZnVuY3Rpb24gZGVsZXRlX29iamVjdF9tYXAoKSB7CgkJJHBvc3RfZGF0YSA9IGZpbHRlcl9pbnB1dF9hcnJheSggSU5QVVRfUE9TVCwgRklMVEVSX1NBTklUSVpFX1NUUklORyApOwoJCWlmICggaXNzZXQoICRwb3N0X2RhdGFbJ2lkJ10gKSApIHsKCQkJJHJlc3VsdCA9ICR0aGlzLT5tYXBwaW5ncy0+ZGVsZXRlX29iamVjdF9tYXAoICRwb3N0X2RhdGFbJ2lkJ10gKTsKCQkJaWYgKCB0cnVlID09PSAkcmVzdWx0ICkgewoJCQkJJHVybCA9IGVzY191cmxfcmF3KCAkcG9zdF9kYXRhWydyZWRpcmVjdF91cmxfc3VjY2VzcyddICk7CgkJCX0gZWxzZSB7CgkJCQkkdXJsID0gZXNjX3VybF9yYXcoICRwb3N0X2RhdGFbJ3JlZGlyZWN0X3VybF9lcnJvciddIC4gJyZpZD0nIC4gJHBvc3RfZGF0YVsnaWQnXSApOwoJCQl9CgkJCXdwX3NhZmVfcmVkaXJlY3QoICR1cmwgKTsKCQkJZXhpdCgpOwoJCX0gZWxzZWlmICggJHBvc3RfZGF0YVsnZGVsZXRlJ10gKSB7CgkJCSRwb3N0X2RhdGEgPSBmaWx0ZXJfaW5wdXRfYXJyYXkoIElOUFVUX1BPU1QsIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcgKTsKCQkJJGNhY2hla2V5ICA9IHdwX2pzb25fZW5jb2RlKCAkcG9zdF9kYXRhICk7CgkJCWlmICggZmFsc2UgIT09ICRjYWNoZWtleSApIHsKCQkJCSRjYWNoZWtleSA9IG1kNSggJGNhY2hla2V5ICk7CgkJCX0KCQkJJGVycm9yID0gZmFsc2U7CgkJCWlmICggISBpc3NldCggJHBvc3RfZGF0YVsnZGVsZXRlJ10gKSApIHsKCQkJCSRlcnJvciA9IHRydWU7CgkJCX0KCQkJaWYgKCB0cnVlID09PSAkZXJyb3IgKSB7CgkJCQkkdGhpcy0+c2Z3cF90cmFuc2llbnRzLT5zZXQoICRjYWNoZWtleSwgJHBvc3RfZGF0YSwgJHRoaXMtPndvcmRwcmVzcy0+b3B0aW9uc1snY2FjaGVfZXhwaXJhdGlvbiddICk7CgkJCQlpZiAoICcnICE9PSAkY2FjaGVrZXkgKSB7CgkJCQkJJHVybCA9IGVzY191cmxfcmF3KCAkcG9zdF9kYXRhWydyZWRpcmVjdF91cmxfZXJyb3InXSApIC4gJyZtYXBwaW5nX2Vycm9yX3RyYW5zaWVudD0nIC4gJGNhY2hla2V5OwoJCQkJfQoJCQl9IGVsc2UgeyAvLyB0aGVyZSBhcmUgbm8gZXJyb3JzLgoJCQkJJHJlc3VsdCA9ICR0aGlzLT5tYXBwaW5ncy0+ZGVsZXRlX29iamVjdF9tYXAoIGFycmF5X2tleXMoICRwb3N0X2RhdGFbJ2RlbGV0ZSddICkgKTsKCQkJCWlmICggdHJ1ZSA9PT0gJHJlc3VsdCApIHsKCQkJCQkkdXJsID0gZXNjX3VybF9yYXcoICRwb3N0X2RhdGFbJ3JlZGlyZWN0X3VybF9zdWNjZXNzJ10gKTsKCQkJCX0KCgkJCQlpZiAoIGZhbHNlID09PSAkcmVzdWx0ICkgeyAvLyBpZiB0aGUgZGF0YWJhc2UgZGlkbid0IHNhdmUsIGl0J3Mgc3RpbGwgYW4gZXJyb3IuCgkJCQkJJHRoaXMtPnNmd3BfdHJhbnNpZW50cy0+c2V0KCAkY2FjaGVrZXksICRwb3N0X2RhdGEsICR0aGlzLT53b3JkcHJlc3MtPm9wdGlvbnNbJ2NhY2hlX2V4cGlyYXRpb24nXSApOwoJCQkJCWlmICggJycgIT09ICRjYWNoZWtleSApIHsKCQkJCQkJJHVybCA9IGVzY191cmxfcmF3KCAkcG9zdF9kYXRhWydyZWRpcmVjdF91cmxfZXJyb3InXSApIC4gJyZtYXBwaW5nX2Vycm9yX3RyYW5zaWVudD0nIC4gJGNhY2hla2V5OwoJCQkJCX0KCQkJCX0gZWxzZSB7CgkJCQkJaWYgKCBpc3NldCggJHBvc3RfZGF0YVsnbWFwcGluZ19lcnJvcl90cmFuc2llbnQnXSApICkgeyAvLyB0aGVyZSB3YXMgcHJldmlvdXNseSBhbiBlcnJvciBzYXZlZC4gY2FuIGRlbGV0ZSBpdCBub3cuCgkJCQkJCSR0aGlzLT5zZndwX3RyYW5zaWVudHMtPmRlbGV0ZSggZXNjX2F0dHIoICRwb3N0X2RhdGFbJ21hcHBpbmdfZXJyb3JfdHJhbnNpZW50J10gKSApOwoJCQkJCX0KCQkJCQkvLyB0aGVuIHNlbmQgdGhlIHVzZXIgdG8gdGhlIGxpc3Qgb2YgZmllbGRtYXBzLgoJCQkJCSR1cmwgPSBlc2NfdXJsX3JhdyggJHBvc3RfZGF0YVsncmVkaXJlY3RfdXJsX3N1Y2Nlc3MnXSApOwoJCQkJfQoJCQl9CgkJCXdwX3NhZmVfcmVkaXJlY3QoICR1cmwgKTsKCQkJZXhpdCgpOwoJCX0KCX0KCgkvKioKCSAqIEltcG9ydCBhIGpzb24gZmlsZSBhbmQgdXNlIGl0IGZvciBwbHVnaW4gZGF0YQoJICovCglwdWJsaWMgZnVuY3Rpb24gaW1wb3J0X2pzb25fZmlsZSgpIHsKCgkJaWYgKCAhIHdwX3ZlcmlmeV9ub25jZSggJF9QT1NUWydvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZV9ub25jZV9pbXBvcnQnXSwgJ29iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlX25vbmNlX2ltcG9ydCcgKSApIHsKCQkJcmV0dXJuOwoJCX0KCQlpZiAoICEgY3VycmVudF91c2VyX2NhbiggJ21hbmFnZV9vcHRpb25zJyApICkgewoJCQlyZXR1cm47CgkJfQoJCSRwYXRoICAgICAgPSAkX0ZJTEVTWydpbXBvcnRfZmlsZSddWyduYW1lJ107CgkJJGV4dGVuc2lvbiA9IHBhdGhpbmZvKCAkcGF0aCwgUEFUSElORk9fRVhURU5TSU9OICk7CgkJaWYgKCAnanNvbicgIT09ICRleHRlbnNpb24gKSB7CgkJCXdwX2RpZSggZXNjX2h0bWxfXyggJ1BsZWFzZSB1cGxvYWQgYSB2YWxpZCAuanNvbiBmaWxlJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApICk7CgkJfQoKCQkkaW1wb3J0X2ZpbGUgPSAkX0ZJTEVTWydpbXBvcnRfZmlsZSddWyd0bXBfbmFtZSddOwoJCWlmICggZW1wdHkoICRpbXBvcnRfZmlsZSApICkgewoJCQl3cF9kaWUoIGVzY19odG1sX18oICdQbGVhc2UgdXBsb2FkIGEgZmlsZSB0byBpbXBvcnQnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgKTsKCQl9CgoJCS8vIFJldHJpZXZlIHRoZSBkYXRhIGZyb20gdGhlIGZpbGUgYW5kIGNvbnZlcnQgdGhlIGpzb24gb2JqZWN0IHRvIGFuIGFycmF5LgoJCSRkYXRhID0gKGFycmF5KSBqc29uX2RlY29kZSggZmlsZV9nZXRfY29udGVudHMoICRpbXBvcnRfZmlsZSApLCB0cnVlICk7IC8vIHBocGNzOmlnbm9yZSBXb3JkUHJlc3MuV1AuQWx0ZXJuYXRpdmVGdW5jdGlvbnMuZmlsZV9nZXRfY29udGVudHNfZmlsZV9nZXRfY29udGVudHMKCgkJJG92ZXJ3cml0ZSA9IGlzc2V0KCAkX1BPU1RbJ292ZXJ3cml0ZSddICkgPyBlc2NfYXR0ciggJF9QT1NUWydvdmVyd3JpdGUnXSApIDogJyc7CgkJaWYgKCB0cnVlID09PSBmaWx0ZXJfdmFyKCAkb3ZlcndyaXRlLCBGSUxURVJfVkFMSURBVEVfQk9PTEVBTiApICkgewoJCQlpZiAoIGlzc2V0KCAkZGF0YVsnZmllbGRtYXBzJ10gKSApIHsKCQkJCSRmaWVsZG1hcHMgPSAkdGhpcy0+bWFwcGluZ3MtPmdldF9maWVsZG1hcHMoKTsKCQkJCWZvcmVhY2ggKCAkZmllbGRtYXBzIGFzICRmaWVsZG1hcCApIHsKCQkJCQkkaWQgICAgID0gJGZpZWxkbWFwWydpZCddOwoJCQkJCSRkZWxldGUgPSAkdGhpcy0+bWFwcGluZ3MtPmRlbGV0ZV9maWVsZG1hcCggJGlkICk7CgkJCQl9CgkJCX0KCQkJaWYgKCBpc3NldCggJGRhdGFbJ29iamVjdF9tYXBzJ10gKSApIHsKCQkJCSRvYmplY3RfbWFwcyA9ICR0aGlzLT5tYXBwaW5ncy0+Z2V0X2FsbF9vYmplY3RfbWFwcygpOwoJCQkJZm9yZWFjaCAoICRvYmplY3RfbWFwcyBhcyAkb2JqZWN0X21hcCApIHsKCQkJCQkkaWQgICAgID0gJG9iamVjdF9tYXBbJ2lkJ107CgkJCQkJJGRlbGV0ZSA9ICR0aGlzLT5tYXBwaW5ncy0+ZGVsZXRlX29iamVjdF9tYXAoICRpZCApOwoJCQkJfQoJCQl9CgkJCWlmICggaXNzZXQoICRkYXRhWydwbHVnaW5fc2V0dGluZ3MnXSApICkgewoJCQkJZm9yZWFjaCAoICRkYXRhWydwbHVnaW5fc2V0dGluZ3MnXSBhcyAka2V5ID0+ICR2YWx1ZSApIHsKCQkJCQlkZWxldGVfb3B0aW9uKCAkdmFsdWVbJ29wdGlvbl9uYW1lJ10gKTsKCQkJCX0KCQkJfQoJCX0KCgkJLy8gaWYgdGhlIG9wdGlvbiBzYXlzIHRvLCBzZXQgYWxsIHRoZSBpbXBvcnRlZCBmaWVsZG1hcHMgdG8gaW5hY3RpdmUuCgkJJGltcG9ydF9maWVsZG1hcHNfaW5hY3RpdmUgPSBpc3NldCggJF9QT1NUWydpbXBvcnRfZmllbGRtYXBzX2luYWN0aXZlJ10gKSA/IGVzY19hdHRyKCAkX1BPU1RbJ2ltcG9ydF9maWVsZG1hcHNfaW5hY3RpdmUnXSApIDogJyc7CgkJaWYgKCB0cnVlID09PSBmaWx0ZXJfdmFyKCAkaW1wb3J0X2ZpZWxkbWFwc19pbmFjdGl2ZSwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4gKSApIHsKCQkJaWYgKCBpc3NldCggJGRhdGFbJ2ZpZWxkbWFwcyddICkgKSB7CgkJCQlmb3JlYWNoICggJGRhdGFbJ2ZpZWxkbWFwcyddIGFzICRrZXkgPT4gJGZpZWxkbWFwICkgewoJCQkJCSRkYXRhWydmaWVsZG1hcHMnXVsgJGtleSBdWydmaWVsZG1hcF9zdGF0dXMnXSA9ICdpbmFjdGl2ZSc7CgkJCQl9CgkJCX0KCQl9CgoJCSRzdWNjZXNzID0gdHJ1ZTsKCgkJaWYgKCBpc3NldCggJGRhdGFbJ2ZpZWxkbWFwcyddICkgKSB7CgkJCSRzdWNjZXNzZnVsX2ZpZWxkbWFwcyA9IGFycmF5KCk7CgkJCSRlcnJvcl9maWVsZG1hcHMgICAgICA9IGFycmF5KCk7CgkJCWZvcmVhY2ggKCAkZGF0YVsnZmllbGRtYXBzJ10gYXMgJGZpZWxkbWFwICkgewoJCQkJdW5zZXQoICRmaWVsZG1hcFsnaWQnXSApOwoJCQkJJGNyZWF0ZSA9ICR0aGlzLT5tYXBwaW5ncy0+Y3JlYXRlX2ZpZWxkbWFwKCAkZmllbGRtYXAgKTsKCQkJCWlmICggZmFsc2UgPT09ICRjcmVhdGUgKSB7CgkJCQkJJHN1Y2Nlc3MgPSBmYWxzZTsKCQkJCX0KCQkJCWlmICggZmFsc2UgPT09ICRjcmVhdGUgKSB7CgkJCQkJJGVycm9yX2ZpZWxkbWFwc1tdID0gJGZpZWxkbWFwOwoJCQkJfSBlbHNlIHsKCQkJCQkkc3VjY2Vzc2Z1bF9maWVsZG1hcHNbXSA9ICRjcmVhdGU7CgkJCQl9CgkJCX0KCQl9CgoJCWlmICggaXNzZXQoICRkYXRhWydvYmplY3RfbWFwcyddICkgKSB7CgkJCSRzdWNjZXNzZnVsX29iamVjdF9tYXBzID0gYXJyYXkoKTsKCQkJJGVycm9yX29iamVjdF9tYXBzICAgICAgPSBhcnJheSgpOwoJCQlmb3JlYWNoICggJGRhdGFbJ29iamVjdF9tYXBzJ10gYXMgJG9iamVjdF9tYXAgKSB7CgkJCQl1bnNldCggJG9iamVjdF9tYXBbJ2lkJ10gKTsKCQkJCWlmICggaXNzZXQoICRvYmplY3RfbWFwWydvYmplY3RfdHlwZSddICkgKSB7CgkJCQkJJHNmX3N5bmNfdHJpZ2dlciA9ICR0aGlzLT5tYXBwaW5ncy0+c3luY19zZl9jcmVhdGU7CgkJCQkJJGNyZWF0ZSAgICAgICAgICA9ICR0aGlzLT5wdWxsLT5zYWxlc2ZvcmNlX3B1bGxfcHJvY2Vzc19yZWNvcmRzKCAkb2JqZWN0X21hcFsnb2JqZWN0X3R5cGUnXSwgJG9iamVjdF9tYXBbJ3NhbGVzZm9yY2VfaWQnXSwgJHNmX3N5bmNfdHJpZ2dlciApOwoJCQkJfSBlbHNlIHsKCQkJCQkkY3JlYXRlID0gJHRoaXMtPm1hcHBpbmdzLT5jcmVhdGVfb2JqZWN0X21hcCggJG9iamVjdF9tYXAgKTsKCQkJCX0KCQkJCWlmICggZmFsc2UgPT09ICRjcmVhdGUgKSB7CgkJCQkJJGVycm9yX29iamVjdF9tYXBzW10gPSAkb2JqZWN0X21hcDsKCQkJCX0gZWxzZSB7CgkJCQkJJHN1Y2Nlc3NmdWxfb2JqZWN0X21hcHNbXSA9ICRjcmVhdGU7CgkJCQl9CgkJCX0KCQl9CgoJCWlmICggaXNzZXQoICRkYXRhWydwbHVnaW5fc2V0dGluZ3MnXSApICkgewoJCQlmb3JlYWNoICggJGRhdGFbJ3BsdWdpbl9zZXR0aW5ncyddIGFzICRrZXkgPT4gJHZhbHVlICkgewoJCQkJdXBkYXRlX29wdGlvbiggJHZhbHVlWydvcHRpb25fbmFtZSddLCBtYXliZV91bnNlcmlhbGl6ZSggJHZhbHVlWydvcHRpb25fdmFsdWUnXSApLCAkdmFsdWVbJ2F1dG9sb2FkJ10gKTsKCQkJfQoJCX0KCgkJaWYgKCAhIGVtcHR5KCAkZXJyb3JfZmllbGRtYXBzICkgJiYgISBlbXB0eSggJGVycm9yX29iamVjdF9tYXBzICkgKSB7CgkJCSRzdGF0dXMgPSAnZXJyb3InOwoJCQkkYm9keSAgID0gc3ByaW50ZiggZXNjX2h0bWxfXyggJ1RoZXNlIGFyZSB0aGUgaW1wb3J0IGl0ZW1zIHRoYXQgd2VyZSBub3QgYWJsZSB0byBzYXZlOiAnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgLiAnPHVsPicgKTsKCQkJZm9yZWFjaCAoICRlcnJvcl9maWVsZG1hcHMgYXMgJGZpZWxkbWFwICkgewoJCQkJJGJvZHkgLj0gc3ByaW50ZigKCQkJCQkvLyB0cmFuc2xhdG9yczogcGxhY2Vob2xkZXJzIGFyZTogMSkgdGhlIGZpZWxkbWFwIHJvdyBJRCwgMikgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0IHR5cGUsIDMpIHRoZSBXb3JkUHJlc3Mgb2JqZWN0IHR5cGUuCgkJCQkJJzxsaT4nIC4gZXNjX2h0bWxfXyggJ0ZpZWxkbWFwIGlkIChpZiBpdCBleGlzdHMpOiAlMSRzLiBTYWxlc2ZvcmNlIG9iamVjdCB0eXBlOiAlMiRzLiBXb3JkUHJlc3Mgb2JqZWN0IHR5cGU6ICUzJHMnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgLiAnPC9saT4nLAoJCQkJCWlzc2V0KCAkZmllbGRtYXBbJ2lkJ10gKSA/IGFic2ludCggJGZpZWxkbWFwWydpZCddICkgOiAnJywKCQkJCQllc2NfYXR0ciggJGZpZWxkbWFwWydzYWxlc2ZvcmNlX29iamVjdCddICksCgkJCQkJZXNjX2F0dHIoICRmaWVsZG1hcFsnd29yZHByZXNzX29iamVjdCddICkKCQkJCSk7CgkJCX0KCQkJZm9yZWFjaCAoICRlcnJvcl9vYmplY3RfbWFwcyBhcyAkbWFwcGluZ19vYmplY3QgKSB7CgkJCQkkYm9keSAuPSBzcHJpbnRmKAoJCQkJCS8vIHRyYW5zbGF0b3JzOiBwbGFjZWhvbGRlcnMgYXJlOiAxKSB0aGUgbWFwcGluZyBvYmplY3Qgcm93IElELCAyKSB0aGUgSUQgb2YgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0LCAzKSB0aGUgV29yZFByZXNzIG9iamVjdCB0eXBlLgoJCQkJCSc8bGk+JyAuIGVzY19odG1sX18oICdNYXBwaW5nIG9iamVjdCBpZCAoaWYgaXQgZXhpc3RzKTogJTEkcy4gU2FsZXNmb3JjZSBJZDogJTIkcy4gV29yZFByZXNzIG9iamVjdCB0eXBlOiAlMyRzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApIC4gJzwvbGk+JywKCQkJCQlpc3NldCggJG1hcHBpbmdfb2JqZWN0WydpZCddICkgPyBhYnNpbnQoICRtYXBwaW5nX29iamVjdFsnaWQnXSApIDogJycsCgkJCQkJZXNjX2F0dHIoICRtYXBwaW5nX29iamVjdFsnc2FsZXNmb3JjZV9pZCddICksCgkJCQkJZXNjX2F0dHIoICRtYXBwaW5nX29iamVjdFsnd29yZHByZXNzX29iamVjdCddICkKCQkJCSk7CgkJCX0KCQkJJGJvZHkgLj0gc3ByaW50ZiggJzwvdWw+JyApOwoKCQkJJHRoaXMtPmxvZ2dpbmctPnNldHVwKAoJCQkJc3ByaW50ZigKCQkJCQkvLyB0cmFuc2xhdG9yczogJTEkcyBpcyB0aGUgbG9nIHN0YXR1cy4KCQkJCQllc2NfaHRtbF9fKCAnJTEkcyBvbiBpbXBvcnQ6IHNvbWUgb2YgdGhlIHJvd3Mgd2VyZSB1bmFibGUgdG8gc2F2ZS4gUmVhZCB0aGlzIHBvc3QgZm9yIGRldGFpbHMuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCXVjZmlyc3QoIGVzY19hdHRyKCAkc3RhdHVzICkgKQoJCQkJKSwKCQkJCSRib2R5LAoJCQkJMCwKCQkJCTAsCgkJCQkkc3RhdHVzCgkJCSk7CgkJfQoKCQlpZiAoIGVtcHR5KCAkZXJyb3JfZmllbGRtYXBzICkgJiYgZW1wdHkoICRlcnJvcl9vYmplY3RfbWFwcyApICYmICggISBlbXB0eSggJHN1Y2Nlc3NmdWxfZmllbGRtYXBzICkgfHwgISBlbXB0eSggJHN1Y2Nlc3NmdWxfb2JqZWN0X21hcHMgKSApICkgewoJCQkkdGhpcy0+Y2xlYXJfY2FjaGUoIGZhbHNlICk7CgkJCXdwX3NhZmVfcmVkaXJlY3QoIGdldF9hZG1pbl91cmwoIG51bGwsICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9JyAuICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gLiAnJnRhYj1pbXBvcnQtZXhwb3J0JmRhdGFfc2F2ZWQ9dHJ1ZScgKSApOwoJCQlleGl0OwoJCX0gZWxzZWlmICggISBlbXB0eSggJGVycm9yX2ZpZWxkbWFwcyApICYmICEgZW1wdHkoICRzdWNjZXNzZnVsX2ZpZWxkbWFwcyApICkgewoJCQkkdGhpcy0+Y2xlYXJfY2FjaGUoIGZhbHNlICk7CgkJCXdwX3NhZmVfcmVkaXJlY3QoIGdldF9hZG1pbl91cmwoIG51bGwsICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9JyAuICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gLiAnJnRhYj1pbXBvcnQtZXhwb3J0JmRhdGFfc2F2ZWQ9cGFydGlhbCcgKSApOwoJCX0gZWxzZWlmICggISBlbXB0eSggJGVycm9yX29iamVjdF9tYXBzICkgJiYgISBlbXB0eSggJHN1Y2Nlc3NmdWxfb2JqZWN0X21hcHMgKSApIHsKCQkJJHRoaXMtPmNsZWFyX2NhY2hlKCBmYWxzZSApOwoJCQl3cF9zYWZlX3JlZGlyZWN0KCBnZXRfYWRtaW5fdXJsKCBudWxsLCAnb3B0aW9ucy1nZW5lcmFsLnBocD9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9aW1wb3J0LWV4cG9ydCZkYXRhX3NhdmVkPXBhcnRpYWwnICkgKTsKCQl9IGVsc2UgewoJCQl3cF9zYWZlX3JlZGlyZWN0KCBnZXRfYWRtaW5fdXJsKCBudWxsLCAnb3B0aW9ucy1nZW5lcmFsLnBocD9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9aW1wb3J0LWV4cG9ydCZkYXRhX3NhdmVkPWZhbHNlJyApICk7CgkJCWV4aXQ7CgkJfQoKCX0KCgkvKioKCSAqIENyZWF0ZSBhIGpzb24gZmlsZSBmb3IgZXhwb3J0aW5nCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBleHBvcnRfanNvbl9maWxlKCkgewoKCQlpZiAoICEgd3BfdmVyaWZ5X25vbmNlKCAkX1BPU1RbJ29iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlX25vbmNlX2V4cG9ydCddLCAnb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2Vfbm9uY2VfZXhwb3J0JyApICkgewoJCQlyZXR1cm47CgkJfQoJCWlmICggISBjdXJyZW50X3VzZXJfY2FuKCAnbWFuYWdlX29wdGlvbnMnICkgKSB7CgkJCXJldHVybjsKCQl9CgkJJHBvc3RfZGF0YSA9IGZpbHRlcl9pbnB1dF9hcnJheSggSU5QVVRfUE9TVCwgRklMVEVSX1NBTklUSVpFX1NUUklORyApOwoJCSRleHBvcnQgICAgPSBhcnJheSgpOwoJCWlmICggaW5fYXJyYXkoICdmaWVsZG1hcHMnLCAkcG9zdF9kYXRhWydleHBvcnQnXSwgdHJ1ZSApICkgewoJCQkkZXhwb3J0WydmaWVsZG1hcHMnXSA9ICR0aGlzLT5tYXBwaW5ncy0+Z2V0X2ZpZWxkbWFwcygpOwoJCX0KCQlpZiAoIGluX2FycmF5KCAnb2JqZWN0X21hcHMnLCAkcG9zdF9kYXRhWydleHBvcnQnXSwgdHJ1ZSApICkgewoJCQkkZXhwb3J0WydvYmplY3RfbWFwcyddID0gJHRoaXMtPm1hcHBpbmdzLT5nZXRfYWxsX29iamVjdF9tYXBzKCk7CgkJfQoJCWlmICggaW5fYXJyYXkoICdwbHVnaW5fc2V0dGluZ3MnLCAkcG9zdF9kYXRhWydleHBvcnQnXSwgdHJ1ZSApICkgewoJCQkkd3BkYiAgICAgICAgICAgICAgICAgICAgICA9ICR0aGlzLT53cGRiOwoJCQkkZXhwb3J0X3Jlc3VsdHMgICAgICAgICAgICA9ICR3cGRiLT5nZXRfcmVzdWx0cyggJHdwZGItPnByZXBhcmUoICJTRUxFQ1QgKiBGUk9NIGB7JHdwZGItPmJhc2VfcHJlZml4fW9wdGlvbnNgIFdIRVJFIG9wdGlvbl9uYW1lIExJS0UgJXM7IiwgJHdwZGItPmVzY19saWtlKCAkdGhpcy0+b3B0aW9uX3ByZWZpeCApIC4gJyUnICksIEFSUkFZX0EgKTsKCQkJJGV4cG9ydFsncGx1Z2luX3NldHRpbmdzJ10gPSAkZXhwb3J0X3Jlc3VsdHM7CgkJfQoJCW5vY2FjaGVfaGVhZGVycygpOwoJCWhlYWRlciggJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD11dGYtOCcgKTsKCQloZWFkZXIoICdDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT1vYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZS1kYXRhLWV4cG9ydC0nIC4gZ21kYXRlKCAnbS1kLVknICkgLiAnLmpzb24nICk7CgkJaGVhZGVyKCAnRXhwaXJlczogMCcgKTsKCQllY2hvIHdwX2pzb25fZW5jb2RlKCAkZXhwb3J0ICk7CgkJZXhpdDsKCX0KCgkvKioKCSAqIERlZmF1bHQgZGlzcGxheSBmb3IgPGlucHV0PiBmaWVsZHMKCSAqCgkgKiBAcGFyYW0gYXJyYXkgJGFyZ3MgaXMgdGhlIGFyZ3VtZW50cyB0byBjcmVhdGUgdGhlIGZpZWxkLgoJICovCglwdWJsaWMgZnVuY3Rpb24gZGlzcGxheV9pbnB1dF9maWVsZCggJGFyZ3MgKSB7CgkJJHR5cGUgICAgPSAkYXJnc1sndHlwZSddOwoJCSRpZCAgICAgID0gJGFyZ3NbJ2xhYmVsX2ZvciddOwoJCSRuYW1lICAgID0gJGFyZ3NbJ25hbWUnXTsKCQkkZGVzYyAgICA9ICRhcmdzWydkZXNjJ107CgkJJGNoZWNrZWQgPSAnJzsKCgkJJGNsYXNzID0gJ3JlZ3VsYXItdGV4dCc7CgoJCWlmICggJ2NoZWNrYm94JyA9PT0gJHR5cGUgKSB7CgkJCSRjbGFzcyA9ICdjaGVja2JveCc7CgkJfQoKCQlpZiAoIGlzc2V0KCAkYXJnc1snY2xhc3MnXSApICkgewoJCQkkY2xhc3MgPSAkYXJnc1snY2xhc3MnXTsKCQl9CgoJCWlmICggISBpc3NldCggJGFyZ3NbJ2NvbnN0YW50J10gKSB8fCAhIGRlZmluZWQoICRhcmdzWydjb25zdGFudCddICkgKSB7CgkJCSR2YWx1ZSA9IGVzY19hdHRyKCBnZXRfb3B0aW9uKCAkaWQsICcnICkgKTsKCQkJaWYgKCAnY2hlY2tib3gnID09PSAkdHlwZSApIHsKCQkJCSR2YWx1ZSA9IGZpbHRlcl92YXIoIGdldF9vcHRpb24oICRpZCwgZmFsc2UgKSwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4gKTsKCQkJCWlmICggdHJ1ZSA9PT0gJHZhbHVlICkgewoJCQkJCSRjaGVja2VkID0gJ2NoZWNrZWQgJzsKCQkJCX0KCQkJCSR2YWx1ZSA9IDE7CgkJCX0KCQkJaWYgKCAnJyA9PT0gJHZhbHVlICYmIGlzc2V0KCAkYXJnc1snZGVmYXVsdCddICkgJiYgJycgIT09ICRhcmdzWydkZWZhdWx0J10gKSB7CgkJCQkkdmFsdWUgPSAkYXJnc1snZGVmYXVsdCddOwoJCQl9CgoJCQllY2hvIHNwcmludGYoCgkJCQknPGlucHV0IHR5cGU9IiUxJHMiIHZhbHVlPSIlMiRzIiBuYW1lPSIlMyRzIiBpZD0iJTQkcyIgY2xhc3M9IiU1JHMiJTYkcz4nLAoJCQkJZXNjX2F0dHIoICR0eXBlICksCgkJCQllc2NfYXR0ciggJHZhbHVlICksCgkJCQllc2NfYXR0ciggJG5hbWUgKSwKCQkJCWVzY19hdHRyKCAkaWQgKSwKCQkJCXNhbml0aXplX2h0bWxfY2xhc3MoICRjbGFzcyAuIGVzY19odG1sKCAnIGNvZGUnICkgKSwKCQkJCWVzY19odG1sKCAkY2hlY2tlZCApCgkJCSk7CgkJCWlmICggJycgIT09ICRkZXNjICkgewoJCQkJZWNobyBzcHJpbnRmKAoJCQkJCSc8cCBjbGFzcz0iZGVzY3JpcHRpb24iPiUxJHM8L3A+JywKCQkJCQllc2NfaHRtbCggJGRlc2MgKQoJCQkJKTsKCQkJfQoJCX0gZWxzZSB7CgkJCWVjaG8gc3ByaW50ZigKCQkJCSc8cD48Y29kZT4lMSRzPC9jb2RlPjwvcD4nLAoJCQkJZXNjX2h0bWxfXyggJ0RlZmluZWQgaW4gd3AtY29uZmlnLnBocCcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKQoJCQkpOwoJCX0KCX0KCgkvKioKCSAqIERpc3BsYXkgZm9yIG11bHRpcGxlIGNoZWNrYm94ZXMKCSAqIEFib3ZlIG1ldGhvZCBjYW4gaGFuZGxlIGEgc2luZ2xlIGNoZWNrYm94IGFzIGl0IGlzCgkgKgoJICogQHBhcmFtIGFycmF5ICRhcmdzIGlzIHRoZSBhcmd1bWVudHMgdG8gY3JlYXRlIHRoZSBjaGVja2JveGVzLgoJICovCglwdWJsaWMgZnVuY3Rpb24gZGlzcGxheV9jaGVja2JveGVzKCAkYXJncyApIHsKCQkkdHlwZSAgICAgICA9ICdjaGVja2JveCc7CgkJJG5hbWUgICAgICAgPSAkYXJnc1snbmFtZSddOwoJCSRvcHRpb25zICAgID0gZ2V0X29wdGlvbiggJG5hbWUsIGFycmF5KCkgKTsKCQkkZ3JvdXBfZGVzYyA9ICRhcmdzWydkZXNjJ107CgkJZm9yZWFjaCAoICRhcmdzWydpdGVtcyddIGFzICRrZXkgPT4gJHZhbHVlICkgewoJCQkkdGV4dCAgICA9ICR2YWx1ZVsndGV4dCddOwoJCQkkaWQgICAgICA9ICR2YWx1ZVsnaWQnXTsKCQkJJGRlc2MgICAgPSAkdmFsdWVbJ2Rlc2MnXTsKCQkJJGNoZWNrZWQgPSAnJzsKCQkJaWYgKCBpc19hcnJheSggJG9wdGlvbnMgKSAmJiBpbl9hcnJheSggKHN0cmluZykgJGtleSwgJG9wdGlvbnMsIHRydWUgKSApIHsKCQkJCSRjaGVja2VkID0gJ2NoZWNrZWQnOwoJCQl9IGVsc2VpZiAoIGlzX2FycmF5KCAkb3B0aW9ucyApICYmIGVtcHR5KCAkb3B0aW9ucyApICkgewoJCQkJaWYgKCBpc3NldCggJHZhbHVlWydkZWZhdWx0J10gKSAmJiB0cnVlID09PSAkdmFsdWVbJ2RlZmF1bHQnXSApIHsKCQkJCQkkY2hlY2tlZCA9ICdjaGVja2VkJzsKCQkJCX0KCQkJfQoJCQllY2hvIHNwcmludGYoCgkJCQknPGRpdiBjbGFzcz0iY2hlY2tib3giPjxsYWJlbD48aW5wdXQgdHlwZT0iJTEkcyIgdmFsdWU9IiUyJHMiIG5hbWU9IiUzJHNbXSIgaWQ9IiU0JHMiJTUkcz4lNiRzPC9sYWJlbD48L2Rpdj4nLAoJCQkJZXNjX2F0dHIoICR0eXBlICksCgkJCQllc2NfYXR0ciggJGtleSApLAoJCQkJZXNjX2F0dHIoICRuYW1lICksCgkJCQllc2NfYXR0ciggJGlkICksCgkJCQllc2NfaHRtbCggJGNoZWNrZWQgKSwKCQkJCWVzY19odG1sKCAkdGV4dCApCgkJCSk7CgkJCWlmICggJycgIT09ICRkZXNjICkgewoJCQkJZWNobyBzcHJpbnRmKAoJCQkJCSc8cCBjbGFzcz0iZGVzY3JpcHRpb24iPiUxJHM8L3A+JywKCQkJCQllc2NfaHRtbCggJGRlc2MgKQoJCQkJKTsKCQkJfQoJCX0KCQlpZiAoICcnICE9PSAkZ3JvdXBfZGVzYyApIHsKCQkJZWNobyBzcHJpbnRmKAoJCQkJJzxwIGNsYXNzPSJkZXNjcmlwdGlvbiI+JTEkczwvcD4nLAoJCQkJZXNjX2h0bWwoICRncm91cF9kZXNjICkKCQkJKTsKCQl9Cgl9CgoJLyoqCgkgKiBEaXNwbGF5IGZvciBhIGRyb3Bkb3duCgkgKgoJICogQHBhcmFtIGFycmF5ICRhcmdzIGlzIHRoZSBhcmd1bWVudHMgbmVlZGVkIHRvIGNyZWF0ZSB0aGUgZHJvcGRvd24uCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBkaXNwbGF5X3NlbGVjdCggJGFyZ3MgKSB7CgkJJHR5cGUgPSAkYXJnc1sndHlwZSddOwoJCSRpZCAgID0gJGFyZ3NbJ2xhYmVsX2ZvciddOwoJCSRuYW1lID0gJGFyZ3NbJ25hbWUnXTsKCQkkZGVzYyA9ICRhcmdzWydkZXNjJ107CgkJaWYgKCAhIGlzc2V0KCAkYXJnc1snY29uc3RhbnQnXSApIHx8ICEgZGVmaW5lZCggJGFyZ3NbJ2NvbnN0YW50J10gKSApIHsKCQkJJGN1cnJlbnRfdmFsdWUgPSBnZXRfb3B0aW9uKCAkbmFtZSApOwoKCQkJZWNobyBzcHJpbnRmKAoJCQkJJzxkaXYgY2xhc3M9InNlbGVjdCI+PHNlbGVjdCBpZD0iJTEkcyIgbmFtZT0iJTIkcyI+PG9wdGlvbiB2YWx1ZT0iIj4tICcgLiBlc2NfaHRtbF9fKCAnU2VsZWN0IG9uZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSAuICcgLTwvb3B0aW9uPicsCgkJCQllc2NfYXR0ciggJGlkICksCgkJCQllc2NfYXR0ciggJG5hbWUgKQoJCQkpOwoKCQkJZm9yZWFjaCAoICRhcmdzWydpdGVtcyddIGFzICRrZXkgPT4gJHZhbHVlICkgewoJCQkJJHRleHQgICAgID0gJHZhbHVlWyd0ZXh0J107CgkJCQkkdmFsdWUgICAgPSAkdmFsdWVbJ3ZhbHVlJ107CgkJCQkkc2VsZWN0ZWQgPSAnJzsKCQkJCWlmICggJGtleSA9PT0gJGN1cnJlbnRfdmFsdWUgfHwgJHZhbHVlID09PSAkY3VycmVudF92YWx1ZSApIHsKCQkJCQkkc2VsZWN0ZWQgPSAnIHNlbGVjdGVkJzsKCQkJCX0KCgkJCQllY2hvIHNwcmludGYoCgkJCQkJJzxvcHRpb24gdmFsdWU9IiUxJHMiJTIkcz4lMyRzPC9vcHRpb24+JywKCQkJCQllc2NfYXR0ciggJHZhbHVlICksCgkJCQkJZXNjX2F0dHIoICRzZWxlY3RlZCApLAoJCQkJCWVzY19odG1sKCAkdGV4dCApCgkJCQkpOwoKCQkJfQoJCQllY2hvICc8L3NlbGVjdD4nOwoJCQlpZiAoICcnICE9PSAkZGVzYyApIHsKCQkJCWVjaG8gc3ByaW50ZigKCQkJCQknPHAgY2xhc3M9ImRlc2NyaXB0aW9uIj4lMSRzPC9wPicsCgkJCQkJZXNjX2h0bWwoICRkZXNjICkKCQkJCSk7CgkJCX0KCQkJZWNobyAnPC9kaXY+JzsKCQl9IGVsc2UgewoJCQllY2hvIHNwcmludGYoCgkJCQknPHA+PGNvZGU+JTEkczwvY29kZT48L3A+JywKCQkJCWVzY19odG1sX18oICdEZWZpbmVkIGluIHdwLWNvbmZpZy5waHAnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkKCQkJKTsKCQl9Cgl9CgoJLyoqCgkgKiBEZWZhdWx0IGRpc3BsYXkgZm9yIDxhIGhyZWY+IGxpbmtzCgkgKgoJICogQHBhcmFtIGFycmF5ICRhcmdzIGlzIHRoZSBhcmd1bWVudHMgdG8gbWFrZSB0aGUgbGluay4KCSAqLwoJcHVibGljIGZ1bmN0aW9uIGRpc3BsYXlfbGluayggJGFyZ3MgKSB7CgkJJGxhYmVsID0gJGFyZ3NbJ2xhYmVsJ107CgkJJGRlc2MgID0gJGFyZ3NbJ2Rlc2MnXTsKCQkkdXJsICAgPSAkYXJnc1sndXJsJ107CgkJaWYgKCBpc3NldCggJGFyZ3NbJ2xpbmtfY2xhc3MnXSApICkgewoJCQllY2hvIHNwcmludGYoCgkJCQknPHA+PGEgY2xhc3M9IiUxJHMiIGhyZWY9IiUyJHMiPiUzJHM8L2E+PC9wPicsCgkJCQllc2NfYXR0ciggJGFyZ3NbJ2xpbmtfY2xhc3MnXSApLAoJCQkJZXNjX3VybCggJHVybCApLAoJCQkJZXNjX2h0bWwoICRsYWJlbCApCgkJCSk7CgkJfSBlbHNlIHsKCQkJZWNobyBzcHJpbnRmKAoJCQkJJzxwPjxhIGhyZWY9IiUxJHMiPiUyJHM8L2E+PC9wPicsCgkJCQllc2NfdXJsKCAkdXJsICksCgkJCQllc2NfaHRtbCggJGxhYmVsICkKCQkJKTsKCQl9CgoJCWlmICggJycgIT09ICRkZXNjICkgewoJCQllY2hvIHNwcmludGYoCgkJCQknPHAgY2xhc3M9ImRlc2NyaXB0aW9uIj4lMSRzPC9wPicsCgkJCQllc2NfaHRtbCggJGRlc2MgKQoJCQkpOwoJCX0KCgl9CgoJLyoqCgkgKiBBbGxvdyBmb3IgYSBzdGFuZGFyZCBzYW5pdGl6ZS92YWxpZGF0ZSBtZXRob2QuIFdlIGNvdWxkIHVzZSBtb3JlIHNwZWNpZmljIG9uZXMgaWYgbmVlZCBiZSwgYnV0IHRoaXMgb25lIHByb3ZpZGVzIGEgYmFzZWxpbmUuCgkgKgoJICogQHBhcmFtIHN0cmluZyAkb3B0aW9uIGlzIHRoZSBvcHRpb24gdmFsdWUuCgkgKiBAcmV0dXJuIHN0cmluZyAkb3B0aW9uIGlzIHRoZSBzYW5pdGl6ZWQgb3B0aW9uIHZhbHVlLgoJICovCglwdWJsaWMgZnVuY3Rpb24gc2FuaXRpemVfdmFsaWRhdGVfdGV4dCggJG9wdGlvbiApIHsKCQlpZiAoIGlzX2FycmF5KCAkb3B0aW9uICkgKSB7CgkJCSRvcHRpb25zID0gYXJyYXkoKTsKCQkJZm9yZWFjaCAoICRvcHRpb24gYXMgJGtleSA9PiAkdmFsdWUgKSB7CgkJCQkkb3B0aW9uc1sgJGtleSBdID0gc2FuaXRpemVfdGV4dF9maWVsZCggJHZhbHVlICk7CgkJCX0KCQkJcmV0dXJuICRvcHRpb25zOwoJCX0KCQkkb3B0aW9uID0gc2FuaXRpemVfdGV4dF9maWVsZCggJG9wdGlvbiApOwoJCXJldHVybiAkb3B0aW9uOwoJfQoKCS8qKgoJICogUnVuIGEgZGVtbyBvZiBTYWxlc2ZvcmNlIEFQSSBjYWxsIG9uIHRoZSBhdXRoZW50aWNhdGUgdGFiIGFmdGVyIFdvcmRQcmVzcyBoYXMgYXV0aGVudGljYXRlZCB3aXRoIGl0CgkgKgoJICogQHBhcmFtIG9iamVjdCAkc2ZhcGkgdGhpcyBpcyB0aGUgU2FsZXNmb3JjZSBBUEkgb2JqZWN0LgoJICovCglwcml2YXRlIGZ1bmN0aW9uIHN0YXR1cyggJHNmYXBpICkgewoKCQkkY29udGFjdHMgPSAkc2ZhcGktPnF1ZXJ5KCAnU0VMRUNUIE5hbWUsIElkIGZyb20gQ29udGFjdCBMSU1JVCAxMDAnICk7CgoJCWlmICggMjAwICE9PSAkY29udGFjdHNbJ2NvZGUnXSApIHsKCQkJJGNvbnRhY3RzX2FwaWNhbGxfc3VtbWFyeSA9IGVzY19odG1sX18oICdUaGUgcGx1Z2luIHdhcyB1bmFibGUgdG8gbG9hZCBhIHNhbXBsZSBvZiBDb250YWN0cyBmcm9tIFNhbGVzZm9yY2UuIFRoaXMgbWF5IG1lYW4gdGhhdCB0aGVyZSBhcmUgY29ubmVjdGlvbiBpc3N1ZXMsIG9yIHRoYXQgdGhlIGF1dGhvcml6YXRpb24gaGFzIGV4cGlyZWQuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApOwoJCX0gZWxzZSB7CgoJCQkvLyBmb3JtYXQgdGhpcyBhcnJheSBpbnRvIGh0bWwgc28gdXNlcnMgY2FuIHNlZSB0aGUgY29udGFjdHMuCgkJCWlmICggdHJ1ZSA9PT0gJGNvbnRhY3RzWydjYWNoZWQnXSApIHsKCQkJCSRjb250YWN0c19pc19jYWNoZWQgPSBlc2NfaHRtbF9fKCAnVGhleSBhcmUgY2FjaGVkLCBhbmQnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICk7CgkJCX0gZWxzZSB7CgkJCQkkY29udGFjdHNfaXNfY2FjaGVkID0gZXNjX2h0bWxfXyggJ1RoZXkgYXJlIG5vdCBjYWNoZWQsIGJ1dCcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsKCQkJfQoKCQkJaWYgKCB0cnVlID09PSAkY29udGFjdHNbJ2Zyb21fY2FjaGUnXSApIHsKCQkJCSRjb250YWN0c19mcm9tX2NhY2hlID0gZXNjX2h0bWxfXyggJ3RoZXkgd2VyZSBsb2FkZWQgZnJvbSB0aGUgY2FjaGUnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICk7CgkJCX0gZWxzZSB7CgkJCQkkY29udGFjdHNfZnJvbV9jYWNoZSA9IGVzY19odG1sX18oICd0aGV5IHdlcmUgbm90IGxvYWRlZCBmcm9tIHRoZSBjYWNoZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsKCQkJfQoKCQkJaWYgKCB0cnVlID09PSAkY29udGFjdHNbJ2lzX3JlZG8nXSApIHsKCQkJCSRjb250YWN0c19yZWZyZXNoZWRfdG9rZW4gPSBlc2NfaHRtbF9fKCAnVGhpcyByZXF1ZXN0IGRpZCByZXF1aXJlIHJlZnJlc2hpbmcgdGhlIFNhbGVzZm9yY2UgdG9rZW4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICk7CgkJCX0gZWxzZSB7CgkJCQkkY29udGFjdHNfcmVmcmVzaGVkX3Rva2VuID0gZXNjX2h0bWxfXyggJ1RoaXMgcmVxdWVzdCBkaWQgbm90IHJlcXVpcmUgcmVmcmVzaGluZyB0aGUgU2FsZXNmb3JjZSB0b2tlbicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsKCQkJfQoKCQkJLy8gZGlzcGxheSBjb250YWN0IHN1bW1hcnkgaWYgdGhlcmUgYXJlIGFueSBjb250YWN0cy4KCQkJaWYgKCAwIDwgYWJzaW50KCAkY29udGFjdHNbJ2RhdGEnXVsndG90YWxTaXplJ10gKSApIHsKCQkJCSRjb250YWN0c19hcGljYWxsX3N1bW1hcnkgPSBzcHJpbnRmKAoJCQkJCS8vIHRyYW5zbGF0b3JzOiAxKSAkY29udGFjdHNbJ2RhdGEnXVsndG90YWxTaXplJ10gaXMgdGhlIG51bWJlciBvZiBpdGVtcyBsb2FkZWQsIDIpICRjb250YWN0c1snZGF0YSddWydyZWNvcmRzJ11bMF1bJ2F0dHJpYnV0ZXMnXVsndHlwZSddIGlzIHRoZSBuYW1lIG9mIHRoZSBTYWxlc2ZvcmNlIG9iamVjdCwgMykgJGNvbnRhY3RzX2lzX2NhY2hlZCBpcyB0aGUgIlRoZXkgYXJlL2FyZSBub3QgY2FjaGVkLCBhbmQvYnV0IiBsaW5lLCA0KSAkY29udGFjdHNfZnJvbV9jYWNoZSBpcyB0aGUgInRoZXkgd2VyZS93ZXJlIG5vdCBsb2FkZWQgZnJvbSB0aGUgY2FjaGUiIGxpbmUsIDUpIGlzIHRoZSAidGhpcyByZXF1ZXN0IGRpZC9kaWQgbm90IHJlcXVpcmUgcmVmcmVzaGluZyB0aGUgU2FsZXNmb3JjZSB0b2tlbiIgbGluZS4KCQkJCQllc2NfaHRtbF9fKCAnU2FsZXNmb3JjZSBzdWNjZXNzZnVsbHkgcmV0dXJuZWQgJTEkcyAlMiRzIHJlY29yZHMuICUzJHMgJTQkcy4gJTUkcy4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJYWJzaW50KCAkY29udGFjdHNbJ2RhdGEnXVsndG90YWxTaXplJ10gKSwKCQkJCQllc2NfaHRtbCggJGNvbnRhY3RzWydkYXRhJ11bJ3JlY29yZHMnXVswXVsnYXR0cmlidXRlcyddWyd0eXBlJ10gKSwKCQkJCQkkY29udGFjdHNfaXNfY2FjaGVkLAoJCQkJCSRjb250YWN0c19mcm9tX2NhY2hlLAoJCQkJCSRjb250YWN0c19yZWZyZXNoZWRfdG9rZW4KCQkJCSk7CgkJCX0gZWxzZSB7CgkJCQkkY29udGFjdHNfYXBpY2FsbF9zdW1tYXJ5ID0gJyc7CgkJCX0KCQl9CgoJCXJlcXVpcmVfb25jZSBwbHVnaW5fZGlyX3BhdGgoICR0aGlzLT5maWxlICkgLiAnL3RlbXBsYXRlcy9hZG1pbi9zdGF0dXMucGhwJzsKCgl9CgoJLyoqCgkgKiBEZWF1dGhvcml6ZSBXb3JkUHJlc3MgZnJvbSBTYWxlc2ZvcmNlLgoJICogVGhpcyBkZWxldGVzIHRoZSB0b2tlbnMgZnJvbSB0aGUgZGF0YWJhc2U7IGl0IGRvZXMgbm90IGN1cnJlbnRseSBkbyBhbnl0aGluZyBpbiBTYWxlc2ZvcmNlCgkgKiBGb3IgdGhpcyBwbHVnaW4gYXQgdGhpcyB0aW1lLCB0aGF0IGlzIHRoZSBkZWNpc2lvbiB3ZSBhcmUgbWFraW5nOiBkb24ndCBkbyBhbnkga2luZCBvZiBhdXRob3JpemF0aW9uIHN0dWZmIGluc2lkZSBTYWxlc2ZvcmNlCgkgKi8KCXByaXZhdGUgZnVuY3Rpb24gbG9nb3V0KCkgewoJCSRkZWxldGVfYWNjZXNzX3Rva2VuID0gZGVsZXRlX29wdGlvbiggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAnYWNjZXNzX3Rva2VuJyApOwoJCWlmICggdHJ1ZSA9PT0gJGRlbGV0ZV9hY2Nlc3NfdG9rZW4gKSB7CgkJCSR0aGlzLT5hY2Nlc3NfdG9rZW4gPSAnJzsKCQl9CgkJJGRlbGV0ZV9pbnN0YW5jZV91cmwgPSBkZWxldGVfb3B0aW9uKCAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICdpbnN0YW5jZV91cmwnICk7CgkJaWYgKCB0cnVlID09PSAkZGVsZXRlX2luc3RhbmNlX3VybCApIHsKCQkJJHRoaXMtPmluc3RhbmNlX3VybCA9ICcnOwoJCX0KCQkkZGVsZXRlX3JlZnJlc2hfdG9rZW4gPSBkZWxldGVfb3B0aW9uKCAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICdyZWZyZXNoX3Rva2VuJyApOwoJCWlmICggdHJ1ZSA9PT0gJGRlbGV0ZV9yZWZyZXNoX3Rva2VuICkgewoJCQkkdGhpcy0+cmVmcmVzaF90b2tlbiA9ICcnOwoJCX0KCQllY2hvIHNwcmludGYoCgkJCSc8cD5Zb3UgaGF2ZSBiZWVuIGxvZ2dlZCBvdXQuIFlvdSBjYW4gdXNlIHRoZSA8YSBocmVmPSIlMSRzIj4lMiRzPC9hPiB0YWIgdG8gbG9nIGluIGFnYWluLjwvcD4nLAoJCQllc2NfdXJsKCBnZXRfYWRtaW5fdXJsKCBudWxsLCAnb3B0aW9ucy1nZW5lcmFsLnBocD9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9YXV0aG9yaXplJyApICksCgkJCWVzY19odG1sX18oICdBdXRob3JpemUnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkKCQkpOwoJfQoKCS8qKgoJICogQWpheCBjYWxsIHRvIGNsZWFyIHRoZSBwbHVnaW4gY2FjaGUuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBjbGVhcl9zZndwX2NhY2hlKCkgewoJCSRyZXN1bHQgICA9ICR0aGlzLT5jbGVhcl9jYWNoZSggdHJ1ZSApOwoJCSRyZXNwb25zZSA9IGFycmF5KAoJCQknbWVzc2FnZScgPT4gJHJlc3VsdFsnbWVzc2FnZSddLAoJCQknc3VjY2VzcycgPT4gJHJlc3VsdFsnc3VjY2VzcyddLAoJCSk7CgkJd3Bfc2VuZF9qc29uX3N1Y2Nlc3MoICRyZXNwb25zZSApOwoJfQoKCS8qKgoJICogQWpheCBjYWxsIHRvIGRlbGV0ZSB0aGUgb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2VfYXBpX3ZlcnNpb24gdmFsdWUgZnJvbSB3cF9vcHRpb25zCgkgKgoJICogQGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiAzLjAuMC4KCSAqLwoJcHVibGljIGZ1bmN0aW9uIGRlbGV0ZV9zYWxlc2ZvcmNlX2FwaV92ZXJzaW9uKCkgewoJCSRkZXByZWNhdGVkX29wdGlvbl9rZXkgPSAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICdhcGlfdmVyc2lvbic7CgkJJHJlc3VsdCAgICAgICAgICAgICAgICA9IGRlbGV0ZV9vcHRpb24oICRkZXByZWNhdGVkX29wdGlvbl9rZXkgKTsKCQlpZiAoIHRydWUgPT09ICRyZXN1bHQgKSB7CgkJCSRtZXNzYWdlID0gc3ByaW50ZigKCQkJCS8vIHRyYW5zbGF0b3JzOiB0aGUgcGFyYW1ldGVyIGlzIHRoZSBvcHRpb24ga2V5IHdoZXJlIHRoZSBBUEkgdmVyc2lvbiB3YXMgc3RvcmVkLgoJCQkJZXNjX2h0bWxfXyggJ1RoZSAlMSRzIHZhbHVlIHdhcyBzdWNjZXNzZnVsbHkgZGVsZXRlZC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknPGNvZGU+JyAuICRkZXByZWNhdGVkX29wdGlvbl9rZXkgLiAnPC9jb2RlPicKCQkJKTsKCQl9IGVsc2UgewoJCQkkbWVzc2FnZSA9IHNwcmludGYoCgkJCQkvLyB0cmFuc2xhdG9yczogdGhlIHBhcmFtZXRlciBpcyB0aGUgb3B0aW9uIGtleSB3aGVyZSB0aGUgQVBJIHZlcnNpb24gd2FzIHN0b3JlZC4KCQkJCWVzY19odG1sX18oICdUaGVyZSB3YXMgYW4gZXJyb3IgaW4gZGVsZXRpbmcgdGhlICUxJHMgdmFsdWUuIFRoaXMgbWF5IG1lYW4geW91IGhhdmUgc3RvcmVkIHRoZSB2YWx1ZSBpbiBhIHdwLWNvbmZpZy5waHAgZmlsZSBpbnN0YWVkIG9mIGluIHRoZSBvcHRpb25zIHRhYmxlLiBJZiB0aGlzIGlzIG5vdCB0aGUgY2FzZSwgeW91IG1heSB3YW50IHRvIHJlbG9hZCB0aGUgcGFnZSBhbmQgdHJ5IGFnYWluLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSc8Y29kZT4nIC4gJGRlcHJlY2F0ZWRfb3B0aW9uX2tleSAuICc8L2NvZGU+JwoJCQkpOwoJCX0KCQkkcmVzcG9uc2UgPSBhcnJheSgKCQkJJ21lc3NhZ2UnID0+ICRtZXNzYWdlLAoJCQknc3VjY2VzcycgPT4gJHJlc3VsdCwKCQkpOwoJCXdwX3NlbmRfanNvbl9zdWNjZXNzKCAkcmVzcG9uc2UgKTsKCX0KCgkvKioKCSAqIENsZWFyIHRoZSBwbHVnaW4ncyBjYWNoZS4KCSAqIFRoaXMgdXNlcyB0aGUgZmx1c2ggbWV0aG9kIGNvbnRhaW5lZCBpbiB0aGUgV29yZFByZXNzIGNhY2hlIHRvIGNsZWFyIGFsbCBvZiB0aGlzIHBsdWdpbidzIGNhY2hlZCBkYXRhLgoJICoKCSAqIEBwYXJhbSBib29sICRhamF4IFdoZXRoZXIgdGhpcyBpcyBhbiBBamF4IHJlcXVlc3Qgb3Igbm90LgoJICogQHJldHVybiBhcnJheQoJICovCglwcml2YXRlIGZ1bmN0aW9uIGNsZWFyX2NhY2hlKCAkYWpheCA9IGZhbHNlICkgewoJCSRyZXN1bHQgID0gJHRoaXMtPndvcmRwcmVzcy0+c2Z3cF90cmFuc2llbnRzLT5mbHVzaCgpOwoJCSRzdWNjZXNzID0gJHJlc3VsdFsnc3VjY2VzcyddOwoJCWlmICggMCA8ICRyZXN1bHRbJ2NvdW50J10gKSB7CgkJCWlmICggdHJ1ZSA9PT0gJHN1Y2Nlc3MgKSB7CgkJCQkkbWVzc2FnZSA9IF9fKCAnVGhlIHBsdWdpbiBjYWNoZSBoYXMgYmVlbiBjbGVhcmVkLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsKCQkJfSBlbHNlIHsKCQkJCSRtZXNzYWdlID0gX18oICdUaGVyZSB3YXMgYW4gZXJyb3IgY2xlYXJpbmcgdGhlIHBsdWdpbiBjYWNoZS4gVHJ5IHJlZnJlc2hpbmcgdGhpcyBwYWdlLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsKCQkJfQoJCX0gZWxzZSB7CgkJCSRzdWNjZXNzID0gdHJ1ZTsKCQkJJG1lc3NhZ2UgPSBfXyggJ1RoZSBjYWNoZSB3YXMgbm90IGNsZWFyZWQgYmVjYXVzZSBpdCBpcyBlbXB0eS4gWW91IGNhbiB0cnkgYWdhaW4gbGF0ZXIuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApOwoJCX0KCQlpZiAoIGZhbHNlID09PSAkYWpheCApIHsKCQkJZWNobyAnPHA+JyAuIGVzY19odG1sKCAkbWVzc2FnZSApIC4gJzwvcD4nOwoJCX0gZWxzZSB7CgkJCXJldHVybiBhcnJheSgKCQkJCSdtZXNzYWdlJyA9PiBlc2NfaHRtbCggJG1lc3NhZ2UgKSwKCQkJCSdzdWNjZXNzJyA9PiAkc3VjY2VzcywKCQkJKTsKCQl9Cgl9CgoJLyoqCgkgKiBDaGVjayBXb3JkUHJlc3MgQWRtaW4gcGVybWlzc2lvbnMKCSAqIENoZWNrIGlmIHRoZSBjdXJyZW50IHVzZXIgaXMgYWxsb3dlZCB0byBhY2Nlc3MgdGhlIFNhbGVzZm9yY2UgcGx1Z2luIG9wdGlvbnMKCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBjaGVja193b3JkcHJlc3NfYWRtaW5fcGVybWlzc2lvbnMoKSB7CgoJCS8vIG9uZSBwcm9ncmFtbWF0aWMgd2F5IHRvIGdpdmUgdGhpcyBjYXBhYmlsaXR5IHRvIGFkZGl0aW9uYWwgdXNlciByb2xlcyBpcyB0aGUKCQkvLyBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZV9yb2xlc19jb25maWd1cmVfc2FsZXNmb3JjZSBob29rCgkJLy8gaXQgcnVucyBvbiBhY3RpdmF0aW9uIG9mIHRoaXMgcGx1Z2luLCBhbmQgd2lsbCBhc3NpZ24gdGhlIGJlbG93IGNhcGFiaWxpdHkgdG8gYW55IHJvbGUKCQkvLyBjb21pbmcgZnJvbSB0aGUgaG9vay4KCgkJLy8gYWx0ZXJuYXRpdmVseSwgb3RoZXIgcm9sZXMgY2FuIGdldCB0aGlzIGNhcGFiaWxpdHkgaW4gd2hhdGV2ZXIgb3RoZXIgd2F5IHlvdSBsaWtlCgkJLy8gcG9pbnQgaXM6IHRvIGFkbWluaXN0ZXIgdGhpcyBwbHVnaW4sIHlvdSBuZWVkIHRoaXMgY2FwYWJpbGl0eS4KCgkJaWYgKCAhIGN1cnJlbnRfdXNlcl9jYW4oICdjb25maWd1cmVfc2FsZXNmb3JjZScgKSApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0gZWxzZSB7CgkJCXJldHVybiB0cnVlOwoJCX0KCgl9CgoJLyoqCgkgKiBDaGVjayBXb3JkUHJlc3MgU1NMIHN0YXR1cy4KCSAqIEhUVFBTIGlzIHJlcXVpcmVkIHRvIGNvbm5lY3QgdG8gU2FsZXNmb3JjZS4KCSAqCgkgKiBAcmV0dXJuIGJvb2wgJHNlY3VyZV9hZG1pbgoJICovCglwcml2YXRlIGZ1bmN0aW9uIGNoZWNrX3dvcmRwcmVzc19zc2woKSB7CgoJCS8vIHRoZSB3cF9pc191c2luZ19odHRwcygpIGZ1bmN0aW9uIHdhcyBhZGRlZCBpbiBXb3JkUHJlc3MgNS43LgoJCWlmICggISBmdW5jdGlvbl9leGlzdHMoICd3cF9pc191c2luZ19odHRwcycgKSApIHsKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQkvLyB0aGUgd2hvbGUgc2l0ZSBpcyBhbHJlYWR5IHVzaW5nIFNTTC4KCQlpZiAoIHRydWUgPT09IHdwX2lzX3VzaW5nX2h0dHBzKCkgKSB7CgkJCXJldHVybiB0cnVlOwoJCX0KCgkJJHNlY3VyZV9hZG1pbiA9IGZhbHNlOwoKCQkvLyB0aGUgYWRtaW4gaXMgYWxyZWFkeSBmb3JjZWQgdG8gdXNlIFNTTC4KCQlpZiAoIHRydWUgPT09IEZPUkNFX1NTTF9BRE1JTiApIHsKCQkJJHNlY3VyZV9hZG1pbiA9IHRydWU7CgkJfQoKCQkvLyB0aGUgc2VydmVyIHJlcG9ydHMgdGhhdCB0aGUgY3VycmVudCBVUkwgaXMgdXNpbmcgSFRUUFMuCgkJaWYgKCBpc3NldCggJF9TRVJWRVJbJ0hUVFBTJ10gKSAmJiAnb24nID09PSAkX1NFUlZFUlsnSFRUUFMnXSApIHsKCQkJJHNlY3VyZV9hZG1pbiA9IHRydWU7CgkJfQoKCQlyZXR1cm4gJHNlY3VyZV9hZG1pbjsKCX0KCgkvKioKCSAqIENoZWNrIFdvcmRQcmVzcyBTU0wgc3VwcG9ydC4KCSAqIFRoaXMgYWxsb3dzIHVzIHRvIHNob3cgYSBkaWZmZXJlbnQgbWVzc2FnZSBpZiBTU0wgaXMgc3VwcG9ydGVkLCBidXQgaXMgbm90IGluIHVzZS4KCSAqCgkgKiBAcmV0dXJuIGJvb2wgJGh0dHBzX3N1cHBvcnRlZAoJICovCglwcml2YXRlIGZ1bmN0aW9uIGNoZWNrX3dvcmRwcmVzc19zc2xfc3VwcG9ydCgpIHsKCgkJLy8gdGhlIHdwX2lzX2h0dHBzX3N1cHBvcnRlZCgpIGZ1bmN0aW9uIHdhcyBhZGRlZCBpbiBXb3JkUHJlc3MgNS43LgoJCWlmICggISBmdW5jdGlvbl9leGlzdHMoICd3cF9pc19odHRwc19zdXBwb3J0ZWQnICkgKSB7CgkJCXJldHVybiB0cnVlOwoJCX0KCgkJaWYgKCB0cnVlID09PSB3cF9pc19odHRwc19zdXBwb3J0ZWQoKSApIHsKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQkkaHR0cHNfc3VwcG9ydGVkID0gZmFsc2U7CgkJcmV0dXJuICRodHRwc19zdXBwb3J0ZWQ7CgoJfQoKCS8qKgoJICogU2hvdyB3aGF0IHdlIGtub3cgYWJvdXQgdGhpcyB1c2VyJ3MgcmVsYXRpb25zaGlwIHRvIGEgU2FsZXNmb3JjZSBvYmplY3QsIGlmIGFueQoJICoKCSAqIEBwYXJhbSBvYmplY3QgJHVzZXIgdGhpcyBpcyB0aGUgdXNlciBvYmplY3QgZnJvbSBXb3JkUHJlc3MuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBzaG93X3NhbGVzZm9yY2VfdXNlcl9maWVsZHMoICR1c2VyICkgewoJCSRnZXRfZGF0YSA9IGZpbHRlcl9pbnB1dF9hcnJheSggSU5QVVRfR0VULCBGSUxURVJfU0FOSVRJWkVfU1RSSU5HICk7CgkJaWYgKCB0cnVlID09PSAkdGhpcy0+Y2hlY2tfd29yZHByZXNzX2FkbWluX3Blcm1pc3Npb25zKCkgKSB7CgkJCSRtYXBwaW5ncyA9ICR0aGlzLT5tYXBwaW5ncy0+bG9hZF9hbGxfYnlfd29yZHByZXNzKCAndXNlcicsICR1c2VyLT5JRCApOwoJCQkkZmllbGRtYXAgPSAkdGhpcy0+bWFwcGluZ3MtPmdldF9maWVsZG1hcHMoCgkJCQludWxsLCAvLyBpZCBmaWVsZCBtdXN0IGJlIG51bGwgZm9yIG11bHRpcGxlcy4KCQkJCWFycmF5KAoJCQkJCSd3b3JkcHJlc3Nfb2JqZWN0JyA9PiAndXNlcicsCgkJCQkpCgkJCSk7CgkJCWlmICggY291bnQoICRtYXBwaW5ncyApID4gMCApIHsKCQkJCWZvcmVhY2ggKCAkbWFwcGluZ3MgYXMgJG1hcHBpbmcgKSB7CgkJCQkJaWYgKCBpc3NldCggJG1hcHBpbmdbJ2lkJ10gKSAmJiAhIGlzc2V0KCAkZ2V0X2RhdGFbJ2VkaXRfc2FsZXNmb3JjZV9tYXBwaW5nJ10gKSAmJiAhIGlzc2V0KCAkZ2V0X2RhdGFbJ2RlbGV0ZV9zYWxlc2ZvcmNlX21hcHBpbmcnXSApICkgewoJCQkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vdXNlci1wcm9maWxlLXNhbGVzZm9yY2UucGhwJzsKCQkJCQl9IGVsc2VpZiAoICEgZW1wdHkoICRmaWVsZG1hcCApICkgeyAvLyBpcyB0aGUgdXNlciBtYXBwZWQgdG8gc29tZXRoaW5nIGFscmVhZHk/CgkJCQkJCWlmICggaXNzZXQoICRnZXRfZGF0YVsnZWRpdF9zYWxlc2ZvcmNlX21hcHBpbmcnXSApICYmIHRydWUgPT09IGZpbHRlcl92YXIoICRnZXRfZGF0YVsnZWRpdF9zYWxlc2ZvcmNlX21hcHBpbmcnXSwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4gKSApIHsKCQkJCQkJCXJlcXVpcmVfb25jZSBwbHVnaW5fZGlyX3BhdGgoICR0aGlzLT5maWxlICkgLiAnL3RlbXBsYXRlcy9hZG1pbi91c2VyLXByb2ZpbGUtc2FsZXNmb3JjZS1jaGFuZ2UucGhwJzsKCQkJCQkJfSBlbHNlaWYgKCBpc3NldCggJGdldF9kYXRhWydkZWxldGVfc2FsZXNmb3JjZV9tYXBwaW5nJ10gKSAmJiB0cnVlID09PSBmaWx0ZXJfdmFyKCAkZ2V0X2RhdGFbJ2RlbGV0ZV9zYWxlc2ZvcmNlX21hcHBpbmcnXSwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4gKSApIHsKCQkJCQkJCXJlcXVpcmVfb25jZSBwbHVnaW5fZGlyX3BhdGgoICR0aGlzLT5maWxlICkgLiAnL3RlbXBsYXRlcy9hZG1pbi91c2VyLXByb2ZpbGUtc2FsZXNmb3JjZS1kZWxldGUucGhwJzsKCQkJCQkJfSBlbHNlIHsKCQkJCQkJCXJlcXVpcmVfb25jZSBwbHVnaW5fZGlyX3BhdGgoICR0aGlzLT5maWxlICkgLiAnL3RlbXBsYXRlcy9hZG1pbi91c2VyLXByb2ZpbGUtc2FsZXNmb3JjZS1tYXAucGhwJzsKCQkJCQkJfQoJCQkJCX0KCQkJCX0KCQkJfSBlbHNlIHsKCQkJCXJlcXVpcmVfb25jZSBwbHVnaW5fZGlyX3BhdGgoICR0aGlzLT5maWxlICkgLiAnL3RlbXBsYXRlcy9hZG1pbi91c2VyLXByb2ZpbGUtc2FsZXNmb3JjZS1tYXAucGhwJzsKCQkJfQoJCX0KCX0KCgkvKioKCSAqIElmIHRoZSB1c2VyIHByb2ZpbGUgaGFzIGJlZW4gbWFwcGVkIHRvIFNhbGVzZm9yY2UsIGRvIGl0CgkgKgoJICogQHBhcmFtIGludCAkdXNlcl9pZCB0aGUgSUQgb2YgdGhlIFdvcmRQcmVzcyB1c2VyLgoJICovCglwdWJsaWMgZnVuY3Rpb24gc2F2ZV9zYWxlc2ZvcmNlX3VzZXJfZmllbGRzKCAkdXNlcl9pZCApIHsKCQkkcG9zdF9kYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9QT1NULCBGSUxURVJfU0FOSVRJWkVfU1RSSU5HICk7CgkJaWYgKCBpc3NldCggJHBvc3RfZGF0YVsnc2FsZXNmb3JjZV91cGRhdGVfbWFwcGVkX3VzZXInXSApICYmIHRydWUgPT09IGZpbHRlcl92YXIoICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2VfdXBkYXRlX21hcHBlZF91c2VyJ10sIEZJTFRFUl9WQUxJREFURV9CT09MRUFOICkgKSB7CgkJCSRtYXBwaW5nX29iamVjdHMgPSAkdGhpcy0+bWFwcGluZ3MtPmdldF9hbGxfb2JqZWN0X21hcHMoCgkJCQlhcnJheSgKCQkJCQknd29yZHByZXNzX2lkJyAgICAgPT4gJHVzZXJfaWQsCgkJCQkJJ3dvcmRwcmVzc19vYmplY3QnID0+ICd1c2VyJywKCQkJCSkKCQkJKTsKCQkJZm9yZWFjaCAoICRtYXBwaW5nX29iamVjdHMgYXMgJG1hcHBpbmdfb2JqZWN0ICkgewoJCQkJJG1hcHBpbmdfb2JqZWN0WydzYWxlc2ZvcmNlX2lkJ10gPSAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX2lkJ107CgkJCQkkcmVzdWx0ICAgICAgICAgICAgICAgICAgICAgICAgICA9ICR0aGlzLT5tYXBwaW5ncy0+dXBkYXRlX29iamVjdF9tYXAoICRtYXBwaW5nX29iamVjdCwgJG1hcHBpbmdfb2JqZWN0WydpZCddICk7CgkJCX0KCQl9IGVsc2VpZiAoIGlzc2V0KCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX2NyZWF0ZV9tYXBwZWRfdXNlciddICkgJiYgdHJ1ZSA9PT0gZmlsdGVyX3ZhciggJHBvc3RfZGF0YVsnc2FsZXNmb3JjZV9jcmVhdGVfbWFwcGVkX3VzZXInXSwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4gKSApIHsKCQkJLy8gaWYgYSBTYWxlc2ZvcmNlIElEIHdhcyBlbnRlcmVkLgoJCQlpZiAoIGlzc2V0KCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX2lkJ10gKSAmJiAhIGVtcHR5KCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX2lkJ10gKSApIHsKCQkJCSRtYXBwaW5nX29iamVjdCA9ICR0aGlzLT5jcmVhdGVfb2JqZWN0X21hcCggJHVzZXJfaWQsICd1c2VyJywgJHBvc3RfZGF0YVsnc2FsZXNmb3JjZV9pZCddICk7CgkJCX0gZWxzZWlmICggaXNzZXQoICRwb3N0X2RhdGFbJ3B1c2hfbmV3X3VzZXJfdG9fc2FsZXNmb3JjZSddICkgKSB7CgkJCQkvLyBvdGhlcndpc2UsIGNyZWF0ZSBhIG5ldyByZWNvcmQgaW4gU2FsZXNmb3JjZS4KCQkJCSRyZXN1bHQgPSAkdGhpcy0+cHVzaF90b19zYWxlc2ZvcmNlKCAndXNlcicsICR1c2VyX2lkICk7CgkJCX0KCQl9IGVsc2VpZiAoIGlzc2V0KCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX2RlbGV0ZV9tYXBwZWRfdXNlciddICkgJiYgdHJ1ZSA9PT0gZmlsdGVyX3ZhciggJHBvc3RfZGF0YVsnc2FsZXNmb3JjZV9kZWxldGVfbWFwcGVkX3VzZXInXSwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4gKSApIHsKCQkJLy8gaWYgYSBTYWxlc2ZvcmNlIElEIHdhcyBlbnRlcmVkLgoJCQlpZiAoIGlzc2V0KCAkcG9zdF9kYXRhWydtYXBwaW5nX2lkJ10gKSAmJiAhIGVtcHR5KCAkcG9zdF9kYXRhWydtYXBwaW5nX2lkJ10gKSApIHsKCQkJCSRkZWxldGUgPSAkdGhpcy0+bWFwcGluZ3MtPmRlbGV0ZV9vYmplY3RfbWFwKCAkcG9zdF9kYXRhWydtYXBwaW5nX2lkJ10gKTsKCQkJfQoJCX0KCX0KCgkvKioKCSAqIFJlbmRlciB0YWJzIGZvciBzZXR0aW5ncyBwYWdlcyBpbiBhZG1pbgoJICoKCSAqIEBwYXJhbSBhcnJheSAgJHRhYnMgaXMgdGhlIHRhYnMgZm9yIHRoZSBzZXR0aW5ncyBtZW51LgoJICogQHBhcmFtIHN0cmluZyAkdGFiIGlzIGEgc2luZ2xlIHRhYi4KCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiB0YWJzKCAkdGFicywgJHRhYiA9ICcnICkgewoKCQkkZ2V0X2RhdGEgICAgICAgID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9HRVQsIEZJTFRFUl9TQU5JVElaRV9TVFJJTkcgKTsKCQkkY29uc3VtZXJfa2V5ICAgID0gJHRoaXMtPmxvZ2luX2NyZWRlbnRpYWxzWydjb25zdW1lcl9rZXknXTsKCQkkY29uc3VtZXJfc2VjcmV0ID0gJHRoaXMtPmxvZ2luX2NyZWRlbnRpYWxzWydjb25zdW1lcl9zZWNyZXQnXTsKCQkkY2FsbGJhY2tfdXJsICAgID0gJHRoaXMtPmxvZ2luX2NyZWRlbnRpYWxzWydjYWxsYmFja191cmwnXTsKCgkJJGN1cnJlbnRfdGFiID0gJHRhYjsKCQllY2hvICc8aDIgY2xhc3M9Im5hdi10YWItd3JhcHBlciI+JzsKCQlmb3JlYWNoICggJHRhYnMgYXMgJHRhYl9rZXkgPT4gJHRhYl9jYXB0aW9uICkgewoJCQkkYWN0aXZlID0gJGN1cnJlbnRfdGFiID09PSAkdGFiX2tleSA/ICcgbmF2LXRhYi1hY3RpdmUnIDogJyc7CgoJCQlpZiAoIHRydWUgPT09ICR0aGlzLT5zYWxlc2ZvcmNlWydpc19hdXRob3JpemVkJ10gKSB7CgkJCQllY2hvIHNwcmludGYoCgkJCQkJJzxhIGNsYXNzPSJuYXYtdGFiJTEkcyIgaHJlZj0iJTIkcyI+JTMkczwvYT4nLAoJCQkJCWVzY19hdHRyKCAkYWN0aXZlICksCgkJCQkJZXNjX3VybCggJz9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9JyAuICR0YWJfa2V5ICksCgkJCQkJZXNjX2h0bWwoICR0YWJfY2FwdGlvbiApCgkJCQkpOwoJCQl9IGVsc2VpZiAoICdzZXR0aW5ncycgPT09ICR0YWJfa2V5IHx8ICggJ2F1dGhvcml6ZScgPT09ICR0YWJfa2V5ICYmIGlzc2V0KCAkY29uc3VtZXJfa2V5ICkgJiYgaXNzZXQoICRjb25zdW1lcl9zZWNyZXQgKSAmJiAhIGVtcHR5KCAkY29uc3VtZXJfa2V5ICkgJiYgISBlbXB0eSggJGNvbnN1bWVyX3NlY3JldCApICkgKSB7CgkJCQllY2hvIHNwcmludGYoCgkJCQkJJzxhIGNsYXNzPSJuYXYtdGFiJTEkcyIgaHJlZj0iJTIkcyI+JTMkczwvYT4nLAoJCQkJCWVzY19hdHRyKCAkYWN0aXZlICksCgkJCQkJZXNjX3VybCggJz9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9JyAuICR0YWJfa2V5ICksCgkJCQkJZXNjX2h0bWwoICR0YWJfY2FwdGlvbiApCgkJCQkpOwoJCQl9CgkJfQoJCWVjaG8gJzwvaDI+JzsKCgkJaWYgKCBpc3NldCggJGdldF9kYXRhWyd0YWInXSApICkgewoJCQkkdGFiID0gc2FuaXRpemVfa2V5KCAkZ2V0X2RhdGFbJ3RhYiddICk7CgkJfSBlbHNlIHsKCQkJJHRhYiA9ICcnOwoJCX0KCX0KCgkvKioKCSAqIENsZWFyIHNjaGVkdWxlCgkgKiBUaGlzIGNsZWFycyB0aGUgc2NoZWR1bGUgaWYgdGhlIHVzZXIgY2xpY2tzIHRoZSBidXR0b24KCSAqCgkgKiBAcGFyYW0gc3RyaW5nICRzY2hlZHVsZV9uYW1lIGlzIHRoZSBuYW1lIG9mIHRoZSBzY2hlZHVsZSBiZWluZyBjbGVhcmVkLgoJICovCglwcml2YXRlIGZ1bmN0aW9uIGNsZWFyX3NjaGVkdWxlKCAkc2NoZWR1bGVfbmFtZSA9ICcnICkgewoJCWlmICggJycgIT09ICRzY2hlZHVsZV9uYW1lICkgewoJCQkkdGhpcy0+cXVldWUtPmNhbmNlbCggJHNjaGVkdWxlX25hbWUgKTsKCQkJLy8gdHJhbnNsYXRvcnM6ICRzY2hlZHVsZV9uYW1lIGlzIHRoZSBuYW1lIG9mIHRoZSBjdXJyZW50IHF1ZXVlLiBEZWZhdWx0czogc2FsZXNmb3JjZV9wdWxsLCBzYWxlc2ZvcmNlX3B1c2gsIHNhbGVzZm9yY2UuCgkJCWVjaG8gc3ByaW50ZiggZXNjX2h0bWxfXyggJ1lvdSBoYXZlIGNsZWFyZWQgdGhlICVzIHNjaGVkdWxlLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwgZXNjX2h0bWwoICRzY2hlZHVsZV9uYW1lICkgKTsKCQl9IGVsc2UgewoJCQllY2hvIGVzY19odG1sX18oICdZb3UgbmVlZCB0byBzcGVjaWZ5IHRoZSBuYW1lIG9mIHRoZSBzY2hlZHVsZSB5b3Ugd2FudCB0byBjbGVhci4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICk7CgkJfQoJfQoKCS8qKgoJICogR2V0IGNvdW50IG9mIHNjaGVkdWxlIGl0ZW1zCgkgKgoJICogQHBhcmFtIHN0cmluZyAkc2NoZWR1bGVfbmFtZSBpcyB0aGUgbmFtZSBvZiB0aGUgc2NoZWR1bGUuCgkgKiBAcmV0dXJuIGludCAkY291bnQKCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBnZXRfc2NoZWR1bGVfY291bnQoICRzY2hlZHVsZV9uYW1lID0gJycgKSB7CgkJaWYgKCAnJyAhPT0gJHNjaGVkdWxlX25hbWUgKSB7CgkJCSRjb3VudCAgICAgICA9IGNvdW50KAoJCQkJJHRoaXMtPnF1ZXVlLT5zZWFyY2goCgkJCQkJYXJyYXkoCgkJCQkJCSdncm91cCcgID0+ICRzY2hlZHVsZV9uYW1lLAoJCQkJCQknc3RhdHVzJyA9PiBBY3Rpb25TY2hlZHVsZXJfU3RvcmU6OlNUQVRVU19QRU5ESU5HLAoJCQkJCSksCgkJCQkJJ0FSUkFZX0EnCgkJCQkpCgkJCSk7CgkJCSRncm91cF9jb3VudCA9IGNvdW50KAoJCQkJJHRoaXMtPnF1ZXVlLT5zZWFyY2goCgkJCQkJYXJyYXkoCgkJCQkJCSdncm91cCcgID0+ICRzY2hlZHVsZV9uYW1lIC4gJHRoaXMtPmFjdGlvbl9ncm91cF9zdWZmaXgsCgkJCQkJCSdzdGF0dXMnID0+IEFjdGlvblNjaGVkdWxlcl9TdG9yZTo6U1RBVFVTX1BFTkRJTkcsCgkJCQkJKSwKCQkJCQknQVJSQVlfQScKCQkJCSkKCQkJKTsKCQkJcmV0dXJuICRjb3VudCArICRncm91cF9jb3VudDsKCQl9IGVsc2UgewoJCQlyZXR1cm4gMDsKCQl9Cgl9CgoJLyoqCgkgKiBDcmVhdGUgYW4gb2JqZWN0IG1hcCBiZXR3ZWVuIGEgV29yZFByZXNzIG9iamVjdCBhbmQgYSBTYWxlc2ZvcmNlIG9iamVjdAoJICoKCSAqIEBwYXJhbSBpbnQgICAgJHdvcmRwcmVzc19pZCBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIFdvcmRQcmVzcyBvYmplY3QuCgkgKiBAcGFyYW0gc3RyaW5nICR3b3JkcHJlc3Nfb2JqZWN0IFdoYXQga2luZCBvZiBvYmplY3QgaXMgaXQuCgkgKiBAcGFyYW0gc3RyaW5nICRzYWxlc2ZvcmNlX2lkIFVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgU2FsZXNmb3JjZSBvYmplY3QuCgkgKiBAcGFyYW0gc3RyaW5nICRhY3Rpb24gRGlkIHdlIHB1c2ggb3IgcHVsbC4KCSAqIEByZXR1cm4gaW50ICAgJHdwZGItPmluc2VydF9pZCBUaGlzIGlzIHRoZSBkYXRhYmFzZSByb3cgZm9yIHRoZSBtYXAgb2JqZWN0CgkgKi8KCXByaXZhdGUgZnVuY3Rpb24gY3JlYXRlX29iamVjdF9tYXAoICR3b3JkcHJlc3NfaWQsICR3b3JkcHJlc3Nfb2JqZWN0LCAkc2FsZXNmb3JjZV9pZCwgJGFjdGlvbiA9ICcnICkgewoJCS8vIENyZWF0ZSBvYmplY3QgbWFwIGFuZCBzYXZlIGl0LgoJCSRtYXBwaW5nX29iamVjdCA9ICR0aGlzLT5tYXBwaW5ncy0+Y3JlYXRlX29iamVjdF9tYXAoCgkJCWFycmF5KAoJCQkJJ3dvcmRwcmVzc19pZCcgICAgICA9PiAkd29yZHByZXNzX2lkLCAvLyB3b3JkcHJlc3MgdW5pcXVlIGlkLgoJCQkJJ3NhbGVzZm9yY2VfaWQnICAgICA9PiAkc2FsZXNmb3JjZV9pZCwgLy8gc2FsZXNmb3JjZSB1bmlxdWUgaWQuIHdlIGRvbid0IGNhcmUgd2hhdCBraW5kIG9mIG9iamVjdCBpdCBpcyBhdCB0aGlzIHBvaW50LgoJCQkJJ3dvcmRwcmVzc19vYmplY3QnICA9PiAkd29yZHByZXNzX29iamVjdCwgLy8ga2VlcCB0cmFjayBvZiB3aGF0IGtpbmQgb2Ygd3Agb2JqZWN0IHRoaXMgaXMuCgkJCQknbGFzdF9zeW5jJyAgICAgICAgID0+IGN1cnJlbnRfdGltZSggJ215c3FsJyApLAoJCQkJJ2xhc3Rfc3luY19hY3Rpb24nICA9PiAkYWN0aW9uLAoJCQkJJ2xhc3Rfc3luY19zdGF0dXMnICA9PiAkdGhpcy0+bWFwcGluZ3MtPnN0YXR1c19zdWNjZXNzLAoJCQkJJ2xhc3Rfc3luY19tZXNzYWdlJyA9PiBfXyggJ01hcHBpbmcgb2JqZWN0IHVwZGF0ZWQgdmlhIGZ1bmN0aW9uOiAnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgLiBfX0ZVTkNUSU9OX18sCgkJCSkKCQkpOwoKCQlyZXR1cm4gJG1hcHBpbmdfb2JqZWN0OwoKCX0KCn0KIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWVzcGFjZXMiO2E6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW5jbHVkZXMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZnVuY3Rpb25zIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNvbnN0YW50cyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjbGFzc2VzIjthOjE6e3M6MjE6IlxPYmplY3RfU3luY19TZl9BZG1pbiI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18iOjEzOntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMToiXE9iamVjdF9TeW5jX1NmX0FkbWluIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjA6Ik9iamVjdF9TeW5jX1NmX0FkbWluIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyNzoiT2JqZWN0X1N5bmNfU2ZfQWRtaW4gY2xhc3MuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBwYXJlbnQiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGltcGxlbWVudHMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBjb25zdGFudHMiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBwcm9wZXJ0aWVzIjthOjI4OntzOjMxOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiR2ZXJzaW9uIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozMToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokdmVyc2lvbiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6InZlcnNpb24iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mjk6IkN1cnJlbnQgdmVyc2lvbiBvZiB0aGUgcGx1Z2luIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjI4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRmaWxlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyODoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokZmlsZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjQ6ImZpbGUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MjA6IlRoZSBtYWluIHBsdWdpbiBmaWxlIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjI4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiR3cGRiIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyODoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokd3BkYiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjQ6IndwZGIiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDg6Ikdsb2JhbCBvYmplY3Qgb2YgYCR3cGRiYCwgdGhlIFdvcmRQcmVzcyBkYXRhYmFzZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6Mjg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHNsdWciO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRzbHVnIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoic2x1ZyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo1MzoiVGhlIHBsdWdpbidzIHNsdWcgc28gd2UgY2FuIGluY2x1ZGUgaXQgd2hlbiBuZWNlc3NhcnkiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6Mzc6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JG9wdGlvbl9wcmVmaXgiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM3OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRvcHRpb25fcHJlZml4IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6Im9wdGlvbl9wcmVmaXgiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NTU6IlRoZSBwbHVnaW4ncyBwcmVmaXggd2hlbiBzYXZpbmcgb3B0aW9ucyB0byB0aGUgZGF0YWJhc2UiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGFjdGlvbl9ncm91cF9zdWZmaXgiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQzOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRhY3Rpb25fZ3JvdXBfc3VmZml4IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6ImFjdGlvbl9ncm91cF9zdWZmaXgiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDA6IlN1ZmZpeCBmb3IgZ3JvdXAgbmFtZSBpbiBBY3Rpb25TY2hlZHVsZXIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDE6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGxvZ2luX2NyZWRlbnRpYWxzIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokbG9naW5fY3JlZGVudGlhbHMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNzoibG9naW5fY3JlZGVudGlhbHMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6OTA6IkxvZ2luIGNyZWRlbnRpYWxzIGZvciB0aGUgU2FsZXNmb3JjZSBBUEk7IGNvbWVzIGZyb20gd3AtY29uZmlnIG9yIGZyb20gdGhlIHBsdWdpbiBzZXR0aW5ncyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NjM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHNjaGVkdWxhYmxlX2NsYXNzZXMiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQzOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRzY2hlZHVsYWJsZV9jbGFzc2VzIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6InNjaGVkdWxhYmxlX2NsYXNzZXMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6ODM6IkFycmF5IG9mIHdoYXQgY2xhc3NlcyBpbiB0aGUgcGx1Z2luIGNhbiBiZSBzY2hlZHVsZWQgdG8gb2NjdXIgd2l0aCBgd3BfY3JvbmAgZXZlbnRzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo3MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czoyOToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokcXVldWUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI5OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRxdWV1ZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjU6InF1ZXVlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjI2OiJPYmplY3RfU3luY19TZl9RdWV1ZSBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Nzc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjc3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6MzE6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGxvZ2dpbmciO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjMxOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRsb2dnaW5nIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NzoibG9nZ2luZyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyODoiT2JqZWN0X1N5bmNfU2ZfTG9nZ2luZyBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjg0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6MzI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JG1hcHBpbmdzIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozMjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokbWFwcGluZ3MiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo4OiJtYXBwaW5ncyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyODoiT2JqZWN0X1N5bmNfU2ZfTWFwcGluZyBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6OTE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjkxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6MzM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHdvcmRwcmVzcyI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHdvcmRwcmVzcyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjk6IndvcmRwcmVzcyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozMDoiT2JqZWN0X1N5bmNfU2ZfV29yZFByZXNzIGNsYXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7Tjt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo5ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6OTg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czozNDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokc2FsZXNmb3JjZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzQ6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHNhbGVzZm9yY2UiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMDoic2FsZXNmb3JjZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo2ODoiT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZSBjbGFzcwpUaGlzIGNvbnRhaW5zIFNhbGVzZm9yY2UgQVBJIG1ldGhvZHMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwNjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTA2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6Mjg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHB1c2giO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRwdXNoIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoicHVzaCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozNjoiT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdXNoIGNsYXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7Tjt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMTM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjExMztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjI4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRwdWxsIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyODoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokcHVsbCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjQ6InB1bGwiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MzY6Ik9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbCBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTIwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czozOToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokc2Z3cF90cmFuc2llbnRzIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozOToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokc2Z3cF90cmFuc2llbnRzIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6InNmd3BfdHJhbnNpZW50cyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0MDoiT2JqZWN0X1N5bmNfU2ZfV29yZFByZXNzX1RyYW5zaWVudCBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEyNztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTI3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGFkbWluX3NldHRpbmdzX3VybF9wYXJhbSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGFkbWluX3NldHRpbmdzX3VybF9wYXJhbSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI0OiJhZG1pbl9zZXR0aW5nc191cmxfcGFyYW0iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDM6IlVSTCBmcmFnbWVudCBmb3IgdGhlIHBsdWdpbidzIHNldHRpbmdzIHBhZ2UiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEzNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTM0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JG5vdGljZXNfZGF0YSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JG5vdGljZXNfZGF0YSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEyOiJub3RpY2VzX2RhdGEiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MjI6IkRhdGEgZm9yIGFkbWluIG5vdGljZXMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE0MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTQxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGFjY2Vzc190b2tlbiI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGFjY2Vzc190b2tlbiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEyOiJhY2Nlc3NfdG9rZW4iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MjM6IlNhbGVzZm9yY2UgYWNjZXNzIHRva2VuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNDg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE0ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjM2OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRpbnN0YW5jZV91cmwiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM2OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRpbnN0YW5jZV91cmwiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoiaW5zdGFuY2VfdXJsIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjIzOiJTYWxlc2ZvcmNlIGluc3RhbmNlIFVSTCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTU1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNTU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czozNzoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokcmVmcmVzaF90b2tlbiI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzc6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHJlZnJlc2hfdG9rZW4iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMzoicmVmcmVzaF90b2tlbiI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyNDoiU2FsZXNmb3JjZSByZWZyZXNoIHRva2VuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNjI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE2MjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjUwOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRkZWZhdWx0X2F1dGhvcml6ZV91cmxfcGF0aCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTA6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfYXV0aG9yaXplX3VybF9wYXRoIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjY6ImRlZmF1bHRfYXV0aG9yaXplX3VybF9wYXRoIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjQ1OiJEZWZhdWx0IHBhdGggZm9yIHRoZSBTYWxlc2ZvcmNlIGF1dGhvcml6ZSBVUkwiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTY5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNjk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo0NjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokZGVmYXVsdF90b2tlbl91cmxfcGF0aCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfdG9rZW5fdXJsX3BhdGgiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMjoiZGVmYXVsdF90b2tlbl91cmxfcGF0aCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0MToiRGVmYXVsdCBwYXRoIGZvciB0aGUgU2FsZXNmb3JjZSB0b2tlbiBVUkwiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTc2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNzY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo0MzoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokZGVmYXVsdF9hcGlfdmVyc2lvbiI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfYXBpX3ZlcnNpb24iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiZGVmYXVsdF9hcGlfdmVyc2lvbiI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo4MDoiV2hhdCB2ZXJzaW9uIG9mIHRoZSBTYWxlc2ZvcmNlIEFQSSBzaG91bGQgYmUgdGhlIGRlZmF1bHQgb24gdGhlIHNldHRpbmdzIHNjcmVlbi4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTU4OiJVc2VycyBjYW4gZWRpdCB3aGF0IHZlcnNpb24gaXMgdXNlZCwgYnV0IHRoZXkgd29uJ3Qgc2VlIGEgY29ycmVjdCBsaXN0IG9mIGFsbCB0aGVpciBhdmFpbGFibGUgdmVyc2lvbnMgdW50aWwgV29yZFByZXNzIGhhcwpiZWVuIGF1dGhlbnRpY2F0ZWQgd2l0aCBTYWxlc2ZvcmNlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjI6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9aToxO086NDk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXERlcHJlY2F0ZWQiOjM6e3M6NzoiACoAbmFtZSI7czoxMDoiZGVwcmVjYXRlZCI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTQ5OiJhcyBvZiAyLjIuMDsgd2lsbCBiZSByZW1vdmVkIGluIHZlcnNpb24gMy4wLiBUaGlzIHByb3BlcnR5IHdpbGwgc3RheSB1bnRpbCAzLjAuMCBiZWNhdXNlIGl0IGlzIGEgcHVibGljIHZhbHVlIGFuZCBpdCBjb3VsZCBiZSBhY2Nlc3NlZCBieSBvdGhlciBjb2RlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXERlcHJlY2F0ZWQAdmVyc2lvbiI7Tjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE4NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTg2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfcHVsbF9saW1pdCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfcHVsbF9saW1pdCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE4OiJkZWZhdWx0X3B1bGxfbGltaXQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NTY6IkRlZmF1bHQgbWF4IG51bWJlciBvZiBwdWxsIHJlY29yZHMuIFVzZXJzIGNhbiBlZGl0IHRoaXMuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE5MztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTkzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDU6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfcHVsbF90aHJvdHRsZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDU6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfcHVsbF90aHJvdHRsZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIxOiJkZWZhdWx0X3B1bGxfdGhyb3R0bGUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NzY6IkRlZmF1bHQgdGhyb3R0bGUgZm9yIGhvdyBvZnRlbiB0byBwdWxsIGZyb20gU2FsZXNmb3JjZS4gVXNlcnMgY2FuIGVkaXQgdGhpcy4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjAwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMDA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo0MzoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokZGVmYXVsdF90cmlnZ2VyYWJsZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfdHJpZ2dlcmFibGUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiZGVmYXVsdF90cmlnZ2VyYWJsZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo3MToiRGVmYXVsdCBmb3Igd2hldGhlciB0byBsaW1pdCB0byB0cmlnZ2VyYWJsZSBpdGVtcy4gVXNlcnMgY2FuIGVkaXQgdGhpcy4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjA3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMDc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo0MjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokZGVmYXVsdF91cGRhdGVhYmxlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokZGVmYXVsdF91cGRhdGVhYmxlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTg6ImRlZmF1bHRfdXBkYXRlYWJsZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo3OToiRGVmYXVsdCBmb3Igd2hldGhlciB0byBsaW1pdCB0byBpdGVtcyB0aGF0IGNhbiBiZSB1cGRhdGVkLiBVc2VycyBjYW4gZWRpdCB0aGlzLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIxNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX19czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGhvZHMiO2E6NDk6e3M6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6X19jb25zdHJ1Y3QoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjI3OiJDb25zdHJ1Y3RvciBmb3IgYWRtaW4gY2xhc3MiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6X19jb25zdHJ1Y3QoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJfX2NvbnN0cnVjdCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjM2OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmFkZF9hY3Rpb25zKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo1MDoiQ3JlYXRlIHRoZSBhY3Rpb24gaG9va3MgdG8gY3JlYXRlIHRoZSBhZG1pbiBwYWdlcy4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6YWRkX2FjdGlvbnMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJhZGRfYWN0aW9ucyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNjU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozMjI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ0OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OnBsdWdpbl9hY3Rpb25fbGlua3MoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjQ4OiJEaXNwbGF5IGEgU2V0dGluZ3MgbGluayBvbiB0aGUgbWFpbiBQbHVnaW5zIHBhZ2UiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mzp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQ1OiJ0aGUgYXJyYXkgb2YgbGlua3MgZm9yIHRoZSBtYWluIHBsdWdpbnMgcGFnZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo1OiJsaW5rcyI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEzOiJ0aGUgZmlsZW5hbWUuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJmaWxlIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NTE6IiRsaW5rcyB0aGUgYXJyYXkgb2YgbGlua3MgZm9yIHRoZSBtYWluIHBsdWdpbnMgcGFnZSI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDQ6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cGx1Z2luX2FjdGlvbl9saW5rcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6InBsdWdpbl9hY3Rpb25fbGlua3MiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToibGlua3MiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJmaWxlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzMxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzM3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0OToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjphZG1pbl9zY3JpcHRzX2FuZF9zdHlsZXMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjY3OiJBZG1pbiBzdHlsZXMuIExvYWQgdGhlIENTUyBhbmQgSmF2YVNjcmlwdCBmb3IgdGhlIHBsdWdpbidzIHNldHRpbmdzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ5OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmFkbWluX3NjcmlwdHNfYW5kX3N0eWxlcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjQ6ImFkbWluX3NjcmlwdHNfYW5kX3N0eWxlcyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNDI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNjg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmluaXRpYWxfYWN0aW9uX3NjaGVkdWxlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0MzoiSW5pdGlhbCByZWN1cnJpbmcgdGFza3MgZm9yIEFjdGlvblNjaGVkdWxlciI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTo0OntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzU6InRoZSBuZXcsIHVuc2VyaWFsaXplZCBvcHRpb24gdmFsdWUuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMjoibmV3X3NjaGVkdWxlIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MjE6InRoZSBvbGQgb3B0aW9uIHZhbHVlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTI6Im9sZF9zY2hlZHVsZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToyO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEyOiJvcHRpb24gbmFtZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjExOiJvcHRpb25fbmFtZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTozO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEzOiIkbmV3X3NjaGVkdWxlIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmluaXRpYWxfYWN0aW9uX3NjaGVkdWxlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMzoiaW5pdGlhbF9hY3Rpb25fc2NoZWR1bGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTI6Im5ld19zY2hlZHVsZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEyOiJvbGRfc2NoZWR1bGUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMToib3B0aW9uX25hbWUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNzg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0MDM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ3OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNoYW5nZV9hY3Rpb25fc2NoZWR1bGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjYwOiJVcGRhdGUgcmVjdXJyaW5nIHRhc2tzIGZvciBBY3Rpb25TY2hlZHVsZXIgaWYgb3B0aW9ucyBjaGFuZ2UiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mzp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjIxOiJ0aGUgb2xkIG9wdGlvbiB2YWx1ZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEyOiJvbGRfc2NoZWR1bGUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozNToidGhlIG5ldywgdW5zZXJpYWxpemVkIG9wdGlvbiB2YWx1ZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEyOiJuZXdfc2NoZWR1bGUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MjtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxMjoib3B0aW9uIG5hbWUuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMToib3B0aW9uX25hbWUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ3OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNoYW5nZV9hY3Rpb25fc2NoZWR1bGUoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIyOiJjaGFuZ2VfYWN0aW9uX3NjaGVkdWxlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEyOiJvbGRfc2NoZWR1bGUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMjoibmV3X3NjaGVkdWxlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTE6Im9wdGlvbl9uYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDEyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDIzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpzZXRfYWN0aW9uX3NjaGVkdWxlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0MjoiU2V0IHVwIHJlY3VycmluZyB0YXNrcyBmb3IgQWN0aW9uU2NoZWR1bGVyIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjI6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyNToidGhlIG5hbWUgb2YgdGhlIHNjaGVkdWxlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTM6InNjaGVkdWxlX25hbWUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNzoidGhlIGdyb3VwJ3MgbmFtZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE3OiJhY3Rpb25fZ3JvdXBfbmFtZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDQ6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c2V0X2FjdGlvbl9zY2hlZHVsZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6InNldF9hY3Rpb25fc2NoZWR1bGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEzOiJzY2hlZHVsZV9uYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTc6ImFjdGlvbl9ncm91cF9uYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDMxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDUyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0ODoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpyZXNhdmVfYWN0aW9uX3NjaGVkdWxlcygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Nzk6IldoZW4gaXQgZmluaXNoZXMgaXRzIG1pZ3JhdGlvbiwgcmVzYXZlIHRoZSBzY2hlZHVsZWQgdGFza3MgZm9yIEFjdGlvblNjaGVkdWxlci4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cmVzYXZlX2FjdGlvbl9zY2hlZHVsZXMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIzOiJyZXNhdmVfYWN0aW9uX3NjaGVkdWxlcyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0NTc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1MjU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNyZWF0ZV9hZG1pbl9tZW51KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozOToiQ3JlYXRlIHRoZSBXb3JkUHJlc3MgYWRtaW4gb3B0aW9ucyBwYWdlIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNyZWF0ZV9hZG1pbl9tZW51KCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNzoiY3JlYXRlX2FkbWluX21lbnUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTMwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTMzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpzaG93X2FkbWluX3BhZ2UoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjExMjoiUmVuZGVyIHRoZSBhZG1pbiBwYWdlcyBpbiBXb3JkUHJlc3MuIFRoaXMgYWxzbyBhbGxvd3Mgb3RoZXIgcGx1Z2lucyB0byBhZGQgdGFicyB0byB0aGlzIHBsdWdpbidzIHNldHRpbmdzIHNjcmVlbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpzaG93X2FkbWluX3BhZ2UoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJzaG93X2FkbWluX3BhZ2UiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTM4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzYwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpzYWxlc2ZvcmNlX3NldHRpbmdzX2Zvcm1zKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo3NDoiQ3JlYXRlIGRlZmF1bHQgV29yZFByZXNzIGFkbWluIHNldHRpbmdzIGZvcm0uIFRoaXMgcnVucyB0aGUgU2V0dGluZ3MgcGFnZS4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTA6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c2FsZXNmb3JjZV9zZXR0aW5nc19mb3JtcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjU6InNhbGVzZm9yY2Vfc2V0dGluZ3NfZm9ybXMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzY1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Nzg3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpmaWVsZHNfc2V0dGluZ3MoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjEzOToiRmllbGRzIGZvciB0aGUgU2V0dGluZ3MgdGFiClRoaXMgcnVucyBhZGRfc2V0dGluZ3Nfc2VjdGlvbiBvbmNlLCBhcyB3ZWxsIGFzIGFkZF9zZXR0aW5nc19maWVsZCBhbmQgcmVnaXN0ZXJfc2V0dGluZyBtZXRob2RzIGZvciBlYWNoIG9wdGlvbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTozOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTk6IndoYXQgcGFnZSB3ZSdyZSBvbi4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6InBhZ2UiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyNToid2hhdCBzZWN0aW9uIG9mIHRoZSBwYWdlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6Nzoic2VjdGlvbiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToyO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjE1OiJtZXRob2QgdG8gY2FsbC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo5OiJjYWxsYmFja3MiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQwOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmZpZWxkc19zZXR0aW5ncygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6ImZpZWxkc19zZXR0aW5ncyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoicGFnZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6InNlY3Rpb24iO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo5OiJjYWxsYmFja3MiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo3OTc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMDU0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0MToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpmaWVsZHNfZmllbGRtYXBzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxNDA6IkZpZWxkcyBmb3IgdGhlIEZpZWxkbWFwcyB0YWIKVGhpcyBydW5zIGFkZF9zZXR0aW5nc19zZWN0aW9uIG9uY2UsIGFzIHdlbGwgYXMgYWRkX3NldHRpbmdzX2ZpZWxkIGFuZCByZWdpc3Rlcl9zZXR0aW5nIG1ldGhvZHMgZm9yIGVhY2ggb3B0aW9uIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjM6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxOToid2hhdCBwYWdlIHdlJ3JlIG9uLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NDoicGFnZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI1OiJ3aGF0IHNlY3Rpb24gb2YgdGhlIHBhZ2UuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo3OiJzZWN0aW9uIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTU6Im1ldGhvZCB0byBjYWxsLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTQ6ImlucHV0X2NhbGxiYWNrIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpmaWVsZHNfZmllbGRtYXBzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiZmllbGRzX2ZpZWxkbWFwcyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoicGFnZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6InNlY3Rpb24iO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxNDoiaW5wdXRfY2FsbGJhY2siO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjI6IicnIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTA2NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwNjY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmZpZWxkc19zY2hlZHVsaW5nKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxNDE6IkZpZWxkcyBmb3IgdGhlIFNjaGVkdWxpbmcgdGFiClRoaXMgcnVucyBhZGRfc2V0dGluZ3Nfc2VjdGlvbiBvbmNlLCBhcyB3ZWxsIGFzIGFkZF9zZXR0aW5nc19maWVsZCBhbmQgcmVnaXN0ZXJfc2V0dGluZyBtZXRob2RzIGZvciBlYWNoIG9wdGlvbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTozOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTk6IndoYXQgcGFnZSB3ZSdyZSBvbi4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6InBhZ2UiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyNToid2hhdCBzZWN0aW9uIG9mIHRoZSBwYWdlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6Nzoic2VjdGlvbiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToyO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjE1OiJtZXRob2QgdG8gY2FsbC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo5OiJjYWxsYmFja3MiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmZpZWxkc19zY2hlZHVsaW5nKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNzoiZmllbGRzX3NjaGVkdWxpbmciO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6InBhZ2UiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo3OiJzZWN0aW9uIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6OToiY2FsbGJhY2tzIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTA3NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjExODQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ0OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmZpZWxkc19sb2dfc2V0dGluZ3MoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjE0MzoiRmllbGRzIGZvciB0aGUgTG9nIFNldHRpbmdzIHRhYgpUaGlzIHJ1bnMgYWRkX3NldHRpbmdzX3NlY3Rpb24gb25jZSwgYXMgd2VsbCBhcyBhZGRfc2V0dGluZ3NfZmllbGQgYW5kIHJlZ2lzdGVyX3NldHRpbmcgbWV0aG9kcyBmb3IgZWFjaCBvcHRpb24iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mzp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjE5OiJ3aGF0IHBhZ2Ugd2UncmUgb24uIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJwYWdlIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MjU6IndoYXQgc2VjdGlvbiBvZiB0aGUgcGFnZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjc6InNlY3Rpb24iO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MjtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNToibWV0aG9kIHRvIGNhbGwuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6OToiY2FsbGJhY2tzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpmaWVsZHNfbG9nX3NldHRpbmdzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiZmllbGRzX2xvZ19zZXR0aW5ncyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoicGFnZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6InNlY3Rpb24iO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo5OiJjYWxsYmFja3MiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMTk0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTM3NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6Mzg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6ZmllbGRzX2Vycm9ycygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTQ1OiJGaWVsZHMgZm9yIHRoZSBNYXBwaW5nIEVycm9ycyB0YWIKVGhpcyBydW5zIGFkZF9zZXR0aW5nc19zZWN0aW9uIG9uY2UsIGFzIHdlbGwgYXMgYWRkX3NldHRpbmdzX2ZpZWxkIGFuZCByZWdpc3Rlcl9zZXR0aW5nIG1ldGhvZHMgZm9yIGVhY2ggb3B0aW9uIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjM6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxOToid2hhdCBwYWdlIHdlJ3JlIG9uLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NDoicGFnZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI1OiJ3aGF0IHNlY3Rpb24gb2YgdGhlIHBhZ2UuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo3OiJzZWN0aW9uIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTU6Im1ldGhvZCB0byBjYWxsLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjk6ImNhbGxiYWNrcyI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6ZmllbGRzX2Vycm9ycygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6ImZpZWxkc19lcnJvcnMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6InBhZ2UiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo3OiJzZWN0aW9uIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6OToiY2FsbGJhY2tzIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTM4NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE0MjQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjM3OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46Om5vdGljZXNfZGF0YSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mzk6IkNyZWF0ZSBhbmQgcmV0dXJuIHRoZSBkYXRhIGZvciBub3RpY2VzLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzM6IiRub3RpY2VzIGlzIHRoZSBhcnJheSBvZiBub3RpY2VzLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzc6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6bm90aWNlc19kYXRhKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoibm90aWNlc19kYXRhIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE0MzE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNTE1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkaXNwbGF5X25vdGljZXMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjgxOiJDcmVhdGUgdGhlIG5vdGljZXMsIHNldHRpbmdzLCBhbmQgY29uZGl0aW9ucyBieSB3aGljaCBhZG1pbiBub3RpY2VzIHNob3VsZCBhcHBlYXIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDA6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6ZGlzcGxheV9ub3RpY2VzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNToiZGlzcGxheV9ub3RpY2VzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE1MjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNTU2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1ODoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpnZXRfc2FsZXNmb3JjZV9vYmplY3RfZGVzY3JpcHRpb24oKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjE0NToiR2V0IGFsbCB0aGUgU2FsZXNmb3JjZSBvYmplY3Qgc2V0dGluZ3MgZm9yIGZpZWxkbWFwcGluZwpUaGlzIHRha2VzIGVpdGhlciB0aGUgJF9QT1NUIGFycmF5IHZpYSBhamF4LCBvciBjYW4gYmUgZGlyZWN0bHkgY2FsbGVkIHdpdGggYSAkZGF0YSBhcnJheSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NjQ6Im11c3QgY29udGFpbiBhIFNhbGVzZm9yY2Ugb2JqZWN0LCBjYW4gb3B0aW9uYWxseSBjb250YWluIGEgdHlwZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJkYXRhIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTY6IiRvYmplY3Rfc2V0dGluZ3MiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmdldF9zYWxlc2ZvcmNlX29iamVjdF9kZXNjcmlwdGlvbigpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MzM6ImdldF9zYWxlc2ZvcmNlX29iamVjdF9kZXNjcmlwdGlvbiI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJkYXRhIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czo3OiJhcnJheSgpIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTU2NTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE2MjI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjUzOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmdldF9zYWxlc2ZvcmNlX29iamVjdF9maWVsZHMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjE0NToiR2V0IGFsbCB0aGUgU2FsZXNmb3JjZSBmaWVsZHMgc2V0dGluZ3MgZm9yIGZpZWxkbWFwcGluZwpUaGlzIHRha2VzIGVpdGhlciB0aGUgJF9QT1NUIGFycmF5IHZpYSBhamF4LCBvciBjYW4gYmUgZGlyZWN0bHkgY2FsbGVkIHdpdGggYSAkZGF0YSBhcnJheSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6ODI6Im11c3QgY29udGFpbiBhIFNhbGVzZm9yY2Ugb2JqZWN0IHVubGVzcyBpdCBpcyBBamF4LCBjYW4gb3B0aW9uYWxseSBjb250YWluIGEgdHlwZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJkYXRhIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTQ6IiRvYmplY3RfZmllbGRzIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1MzoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpnZXRfc2FsZXNmb3JjZV9vYmplY3RfZmllbGRzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyODoiZ2V0X3NhbGVzZm9yY2Vfb2JqZWN0X2ZpZWxkcyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJkYXRhIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czo3OiJhcnJheSgpIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTYzMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE2ODE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjUyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmdldF93b3JkcHJlc3Nfb2JqZWN0X2ZpZWxkcygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTQ2OiJHZXQgV29yZFByZXNzIG9iamVjdCBmaWVsZHMgZm9yIGZpZWxkbWFwcGluZwpUaGlzIHRha2VzIGVpdGhlciB0aGUgJF9QT1NUIGFycmF5IHZpYSBhamF4LCBvciBjYW4gYmUgZGlyZWN0bHkgY2FsbGVkIHdpdGggYSAkd29yZHByZXNzX29iamVjdCBmaWVsZCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzY6ImlzIHRoZSBuYW1lIG9mIHRoZSBXb3JkUHJlc3Mgb2JqZWN0LiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTY6IndvcmRwcmVzc19vYmplY3QiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNDoiJG9iamVjdF9maWVsZHMiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmdldF93b3JkcHJlc3Nfb2JqZWN0X2ZpZWxkcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6Mjc6ImdldF93b3JkcHJlc3Nfb2JqZWN0X2ZpZWxkcyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxNjoid29yZHByZXNzX29iamVjdCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNjkwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTcwODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cHVzaF90b19zYWxlc2ZvcmNlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxNjc6Ik1hbnVhbGx5IHB1c2ggdGhlIFdvcmRQcmVzcyBvYmplY3QgdG8gU2FsZXNmb3JjZQpUaGlzIHRha2VzIGVpdGhlciB0aGUgJF9QT1NUIGFycmF5IHZpYSBhamF4LCBvciBjYW4gYmUgZGlyZWN0bHkgY2FsbGVkIHdpdGggJHdvcmRwcmVzc19vYmplY3QgYW5kICR3b3JkcHJlc3NfaWQgZmllbGRzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjM6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozNjoiaXMgdGhlIG5hbWUgb2YgdGhlIFdvcmRQcmVzcyBvYmplY3QuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxNjoid29yZHByZXNzX29iamVjdCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM0OiJpcyB0aGUgSUQgb2YgdGhlIFdvcmRQcmVzcyByZWNvcmQuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMjoid29yZHByZXNzX2lkIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NTc6IkZvcmNlIHRoZSBtZXRob2QgdG8gcmV0dXJuIGpzb24gaW5zdGVhZCBvZiBvdXRwdXR0aW5nIGl0LiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTI6ImZvcmNlX3JldHVybiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cHVzaF90b19zYWxlc2ZvcmNlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxODoicHVzaF90b19zYWxlc2ZvcmNlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjE2OiJ3b3JkcHJlc3Nfb2JqZWN0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czoyOiInJyI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEyOiJ3b3JkcHJlc3NfaWQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjI6IicnIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTI6ImZvcmNlX3JldHVybiI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6NToiZmFsc2UiO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNzE4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTc0NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDU6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cHVsbF9mcm9tX3NhbGVzZm9yY2UoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjE0ODoiTWFudWFsbHkgcHVsbCB0aGUgU2FsZXNmb3JjZSBvYmplY3QgaW50byBXb3JkUHJlc3MKVGhpcyB0YWtlcyBlaXRoZXIgdGhlICRfUE9TVCBhcnJheSB2aWEgYWpheCwgb3IgY2FuIGJlIGRpcmVjdGx5IGNhbGxlZCB3aXRoICRzYWxlc2ZvcmNlX2lkIGZpZWxkcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzU6ImlzIHRoZSBJRCBvZiB0aGUgU2FsZXNmb3JjZSByZWNvcmQuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMzoic2FsZXNmb3JjZV9pZCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM2OiJpcyB0aGUgbmFtZSBvZiB0aGUgV29yZFByZXNzIG9iamVjdC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE2OiJ3b3JkcHJlc3Nfb2JqZWN0IjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpwdWxsX2Zyb21fc2FsZXNmb3JjZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjA6InB1bGxfZnJvbV9zYWxlc2ZvcmNlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEzOiJzYWxlc2ZvcmNlX2lkIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czoyOiInJyI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjE2OiJ3b3JkcHJlc3Nfb2JqZWN0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czoyOiInJyI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE3NTM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNzY2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpyZWZyZXNoX21hcHBlZF9kYXRhKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo5MjoiTWFudWFsbHkgcHVsbCB0aGUgU2FsZXNmb3JjZSBvYmplY3QgaW50byBXb3JkUHJlc3MKVGhpcyB0YWtlcyBhbiBpZCBmb3IgYSBtYXBwaW5nIG9iamVjdCByb3ciO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM5OiJpcyB0aGUgSUQgb2YgdGhlIG1hcHBpbmcgb2JqZWN0IHJlY29yZC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEwOiJtYXBwaW5nX2lkIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpyZWZyZXNoX21hcHBlZF9kYXRhKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToicmVmcmVzaF9tYXBwZWRfZGF0YSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMDoibWFwcGluZ19pZCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNzc0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTc5NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cHJlcGFyZV9maWVsZG1hcF9kYXRhKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0MTI6IlByZXBhcmUgZmllbGRtYXAgZGF0YSBhbmQgcmVkaXJlY3QgYWZ0ZXIgcHJvY2Vzc2luZwpUaGlzIHJ1bnMgd2hlbiB0aGUgY3JlYXRlIG9yIHVwZGF0ZSBmb3JtcyBhcmUgc3VibWl0dGVkCkl0IGlzIHB1YmxpYyBiZWNhdXNlIGl0IGRlcGVuZHMgb24gYW4gYWRtaW4gaG9vawpJdCB0aGVuIGNhbGxzIHRoZSBPYmplY3RfU3luY19TZl9NYXBwaW5nIGNsYXNzIGFuZCBzZW5kcyBwcmVwYXJlZCBkYXRhIG92ZXIgdG8gaXQsIHRoZW4gcmVkaXJlY3RzIHRvIHRoZSBjb3JyZWN0IHBhZ2UKVGhpcyBtZXRob2QgZG9lcyBpbmNsdWRlIGVycm9yIGhhbmRsaW5nLCBieSBsb2FkaW5nIHRoZSBzdWJtaXNzaW9uIGluIGEgdHJhbnNpZW50IGlmIHRoZXJlIGlzIGFuIGVycm9yLCBhbmQgdGhlbiBkZWxldGluZyBpdCB1cG9uIHN1Y2Nlc3MiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cHJlcGFyZV9maWVsZG1hcF9kYXRhKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMToicHJlcGFyZV9maWVsZG1hcF9kYXRhIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE4MDY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxODU3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkZWxldGVfZmllbGRtYXAoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjIzNToiRGVsZXRlIGZpZWxkbWFwIGRhdGEgYW5kIHJlZGlyZWN0IGFmdGVyIHByb2Nlc3NpbmcKVGhpcyBydW5zIHdoZW4gdGhlIGRlbGV0ZSBsaW5rIGlzIGNsaWNrZWQsIGFmdGVyIHRoZSB1c2VyIGNvbmZpcm1zCkl0IGlzIHB1YmxpYyBiZWNhdXNlIGl0IGRlcGVuZHMgb24gYW4gYWRtaW4gaG9vawpJdCB0aGVuIGNhbGxzIHRoZSBPYmplY3RfU3luY19TZl9NYXBwaW5nIGNsYXNzIGFuZCB0aGUgZGVsZXRlIG1ldGhvZCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkZWxldGVfZmllbGRtYXAoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJkZWxldGVfZmllbGRtYXAiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTg2NTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE4Nzc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OnByZXBhcmVfb2JqZWN0X21hcF9kYXRhKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozOTg6IlByZXBhcmUgb2JqZWN0IGRhdGEgYW5kIHJlZGlyZWN0IGFmdGVyIHByb2Nlc3NpbmcKVGhpcyBydW5zIHdoZW4gdGhlIHVwZGF0ZSBmb3JtIGlzIHN1Ym1pdHRlZApJdCBpcyBwdWJsaWMgYmVjYXVzZSBpdCBkZXBlbmRzIG9uIGFuIGFkbWluIGhvb2sKSXQgdGhlbiBjYWxscyB0aGUgT2JqZWN0X1N5bmNfU2ZfTWFwcGluZyBjbGFzcyBhbmQgc2VuZHMgcHJlcGFyZWQgZGF0YSBvdmVyIHRvIGl0LCB0aGVuIHJlZGlyZWN0cyB0byB0aGUgY29ycmVjdCBwYWdlClRoaXMgbWV0aG9kIGRvZXMgaW5jbHVkZSBlcnJvciBoYW5kbGluZywgYnkgbG9hZGluZyB0aGUgc3VibWlzc2lvbiBpbiBhIHRyYW5zaWVudCBpZiB0aGVyZSBpcyBhbiBlcnJvciwgYW5kIHRoZW4gZGVsZXRpbmcgaXQgdXBvbiBzdWNjZXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OnByZXBhcmVfb2JqZWN0X21hcF9kYXRhKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMzoicHJlcGFyZV9vYmplY3RfbWFwX2RhdGEiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTg4NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE5MjQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmRlbGV0ZV9vYmplY3RfbWFwKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyNTM6IkRlbGV0ZSBvYmplY3QgbWFwIGRhdGEgYW5kIHJlZGlyZWN0IGFmdGVyIHByb2Nlc3NpbmcKVGhpcyBydW5zIHdoZW4gdGhlIGRlbGV0ZSBsaW5rIGlzIGNsaWNrZWQgb24gYW4gZXJyb3Igcm93LCBhZnRlciB0aGUgdXNlciBjb25maXJtcwpJdCBpcyBwdWJsaWMgYmVjYXVzZSBpdCBkZXBlbmRzIG9uIGFuIGFkbWluIGhvb2sKSXQgdGhlbiBjYWxscyB0aGUgT2JqZWN0X1N5bmNfU2ZfTWFwcGluZyBjbGFzcyBhbmQgdGhlIGRlbGV0ZSBtZXRob2QiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6ZGVsZXRlX29iamVjdF9tYXAoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE3OiJkZWxldGVfb2JqZWN0X21hcCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxOTMyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTk4MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDE6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6aW1wb3J0X2pzb25fZmlsZSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDU6IkltcG9ydCBhIGpzb24gZmlsZSBhbmQgdXNlIGl0IGZvciBwbHVnaW4gZGF0YSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjppbXBvcnRfanNvbl9maWxlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiaW1wb3J0X2pzb25fZmlsZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxOTg1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjEzNTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDE6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6ZXhwb3J0X2pzb25fZmlsZSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MzI6IkNyZWF0ZSBhIGpzb24gZmlsZSBmb3IgZXhwb3J0aW5nIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQxOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmV4cG9ydF9qc29uX2ZpbGUoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE2OiJleHBvcnRfanNvbl9maWxlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIxNDA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTY3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkaXNwbGF5X2lucHV0X2ZpZWxkKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozNDoiRGVmYXVsdCBkaXNwbGF5IGZvciA8aW5wdXQ+IGZpZWxkcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6Mzc6ImlzIHRoZSBhcmd1bWVudHMgdG8gY3JlYXRlIHRoZSBmaWVsZC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJhcmdzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkaXNwbGF5X2lucHV0X2ZpZWxkKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiZGlzcGxheV9pbnB1dF9maWVsZCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJhcmdzIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjE3NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyMjU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQzOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmRpc3BsYXlfY2hlY2tib3hlcygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6ODI6IkRpc3BsYXkgZm9yIG11bHRpcGxlIGNoZWNrYm94ZXMKQWJvdmUgbWV0aG9kIGNhbiBoYW5kbGUgYSBzaW5nbGUgY2hlY2tib3ggYXMgaXQgaXMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQyOiJpcyB0aGUgYXJndW1lbnRzIHRvIGNyZWF0ZSB0aGUgY2hlY2tib3hlcy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJhcmdzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MzoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkaXNwbGF5X2NoZWNrYm94ZXMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE4OiJkaXNwbGF5X2NoZWNrYm94ZXMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiYXJncyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyMzM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMjcyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czozOToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkaXNwbGF5X3NlbGVjdCgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MjI6IkRpc3BsYXkgZm9yIGEgZHJvcGRvd24iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQ3OiJpcyB0aGUgYXJndW1lbnRzIG5lZWRlZCB0byBjcmVhdGUgdGhlIGRyb3Bkb3duLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6ImFyZ3MiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM5OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmRpc3BsYXlfc2VsZWN0KCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNDoiZGlzcGxheV9zZWxlY3QiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiYXJncyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyNzk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMzIzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czozNzoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkaXNwbGF5X2xpbmsoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjM0OiJEZWZhdWx0IGRpc3BsYXkgZm9yIDxhIGhyZWY+IGxpbmtzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozNDoiaXMgdGhlIGFyZ3VtZW50cyB0byBtYWtlIHRoZSBsaW5rLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6ImFyZ3MiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM3OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmRpc3BsYXlfbGluaygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTI6ImRpc3BsYXlfbGluayI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJhcmdzIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjMzMDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIzNTY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ3OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OnNhbml0aXplX3ZhbGlkYXRlX3RleHQoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjEyNDoiQWxsb3cgZm9yIGEgc3RhbmRhcmQgc2FuaXRpemUvdmFsaWRhdGUgbWV0aG9kLiBXZSBjb3VsZCB1c2UgbW9yZSBzcGVjaWZpYyBvbmVzIGlmIG5lZWQgYmUsIGJ1dCB0aGlzIG9uZSBwcm92aWRlcyBhIGJhc2VsaW5lLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MjA6ImlzIHRoZSBvcHRpb24gdmFsdWUuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo2OiJvcHRpb24iO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozODoiJG9wdGlvbiBpcyB0aGUgc2FuaXRpemVkIG9wdGlvbiB2YWx1ZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e319fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDc6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c2FuaXRpemVfdmFsaWRhdGVfdGV4dCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjI6InNhbml0aXplX3ZhbGlkYXRlX3RleHQiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6Njoib3B0aW9uIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjM2NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIzNzQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjMxOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OnN0YXR1cygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6OTk6IlJ1biBhIGRlbW8gb2YgU2FsZXNmb3JjZSBBUEkgY2FsbCBvbiB0aGUgYXV0aGVudGljYXRlIHRhYiBhZnRlciBXb3JkUHJlc3MgaGFzIGF1dGhlbnRpY2F0ZWQgd2l0aCBpdCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzQ6InRoaXMgaXMgdGhlIFNhbGVzZm9yY2UgQVBJIG9iamVjdC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7Tjt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo1OiJzZmFwaSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzE6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c3RhdHVzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo2OiJzdGF0dXMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6InNmYXBpIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjM4MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI0MjY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjMxOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmxvZ291dCgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mzg6IkRlYXV0aG9yaXplIFdvcmRQcmVzcyBmcm9tIFNhbGVzZm9yY2UuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjIxNToiVGhpcyBkZWxldGVzIHRoZSB0b2tlbnMgZnJvbSB0aGUgZGF0YWJhc2U7IGl0IGRvZXMgbm90IGN1cnJlbnRseSBkbyBhbnl0aGluZyBpbiBTYWxlc2ZvcmNlCkZvciB0aGlzIHBsdWdpbiBhdCB0aGlzIHRpbWUsIHRoYXQgaXMgdGhlIGRlY2lzaW9uIHdlIGFyZSBtYWtpbmc6IGRvbid0IGRvIGFueSBraW5kIG9mIGF1dGhvcml6YXRpb24gc3R1ZmYgaW5zaWRlIFNhbGVzZm9yY2UiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozMToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpsb2dvdXQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjY6ImxvZ291dCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjQzMztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI0NTE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQxOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNsZWFyX3Nmd3BfY2FjaGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjM2OiJBamF4IGNhbGwgdG8gY2xlYXIgdGhlIHBsdWdpbiBjYWNoZS4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDE6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Y2xlYXJfc2Z3cF9jYWNoZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTY6ImNsZWFyX3Nmd3BfY2FjaGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjQ1NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI0NjM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjU0OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmRlbGV0ZV9zYWxlc2ZvcmNlX2FwaV92ZXJzaW9uKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo4NDoiQWpheCBjYWxsIHRvIGRlbGV0ZSB0aGUgb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2VfYXBpX3ZlcnNpb24gdmFsdWUgZnJvbSB3cF9vcHRpb25zIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xEZXByZWNhdGVkIjozOntzOjc6IgAqAG5hbWUiO3M6MTA6ImRlcHJlY2F0ZWQiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI5OiJhbmQgd2lsbCBiZSByZW1vdmVkIGluIDMuMC4wLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXERlcHJlY2F0ZWQAdmVyc2lvbiI7Tjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTQ6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6ZGVsZXRlX3NhbGVzZm9yY2VfYXBpX3ZlcnNpb24oKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI5OiJkZWxldGVfc2FsZXNmb3JjZV9hcGlfdmVyc2lvbiI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNDcwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjQ5MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Y2xlYXJfY2FjaGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjI1OiJDbGVhciB0aGUgcGx1Z2luJ3MgY2FjaGUuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEwMjoiVGhpcyB1c2VzIHRoZSBmbHVzaCBtZXRob2QgY29udGFpbmVkIGluIHRoZSBXb3JkUHJlc3MgY2FjaGUgdG8gY2xlYXIgYWxsIG9mIHRoaXMgcGx1Z2luJ3MgY2FjaGVkIGRhdGEuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mjp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM5OiJXaGV0aGVyIHRoaXMgaXMgYW4gQWpheCByZXF1ZXN0IG9yIG5vdC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6ImFqYXgiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM2OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNsZWFyX2NhY2hlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMToiY2xlYXJfY2FjaGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6ImFqYXgiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjU6ImZhbHNlIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjUwMDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI1MjE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjU4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNoZWNrX3dvcmRwcmVzc19hZG1pbl9wZXJtaXNzaW9ucygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTEwOiJDaGVjayBXb3JkUHJlc3MgQWRtaW4gcGVybWlzc2lvbnMKQ2hlY2sgaWYgdGhlIGN1cnJlbnQgdXNlciBpcyBhbGxvd2VkIHRvIGFjY2VzcyB0aGUgU2FsZXNmb3JjZSBwbHVnaW4gb3B0aW9ucyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1ODoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpjaGVja193b3JkcHJlc3NfYWRtaW5fcGVybWlzc2lvbnMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjMzOiJjaGVja193b3JkcHJlc3NfYWRtaW5fcGVybWlzc2lvbnMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI1Mjc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNTQzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpjaGVja193b3JkcHJlc3Nfc3NsKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyNzoiQ2hlY2sgV29yZFByZXNzIFNTTCBzdGF0dXMuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQzOiJIVFRQUyBpcyByZXF1aXJlZCB0byBjb25uZWN0IHRvIFNhbGVzZm9yY2UuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEzOiIkc2VjdXJlX2FkbWluIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ0OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNoZWNrX3dvcmRwcmVzc19zc2woKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE5OiJjaGVja193b3JkcHJlc3Nfc3NsIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNTUxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjU3NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Y2hlY2tfd29yZHByZXNzX3NzbF9zdXBwb3J0KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyODoiQ2hlY2sgV29yZFByZXNzIFNTTCBzdXBwb3J0LiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo4MjoiVGhpcyBhbGxvd3MgdXMgdG8gc2hvdyBhIGRpZmZlcmVudCBtZXNzYWdlIGlmIFNTTCBpcyBzdXBwb3J0ZWQsIGJ1dCBpcyBub3QgaW4gdXNlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNjoiJGh0dHBzX3N1cHBvcnRlZCI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1MjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpjaGVja193b3JkcHJlc3Nfc3NsX3N1cHBvcnQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI3OiJjaGVja193b3JkcHJlc3Nfc3NsX3N1cHBvcnQiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI1ODQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNTk4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1MjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpzaG93X3NhbGVzZm9yY2VfdXNlcl9maWVsZHMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjc5OiJTaG93IHdoYXQgd2Uga25vdyBhYm91dCB0aGlzIHVzZXIncyByZWxhdGlvbnNoaXAgdG8gYSBTYWxlc2ZvcmNlIG9iamVjdCwgaWYgYW55IjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozOToidGhpcyBpcyB0aGUgdXNlciBvYmplY3QgZnJvbSBXb3JkUHJlc3MuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NDoidXNlciI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c2hvd19zYWxlc2ZvcmNlX3VzZXJfZmllbGRzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyNzoic2hvd19zYWxlc2ZvcmNlX3VzZXJfZmllbGRzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6InVzZXIiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNjA1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjYzMztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c2F2ZV9zYWxlc2ZvcmNlX3VzZXJfZmllbGRzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo1NjoiSWYgdGhlIHVzZXIgcHJvZmlsZSBoYXMgYmVlbiBtYXBwZWQgdG8gU2FsZXNmb3JjZSwgZG8gaXQiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI5OiJ0aGUgSUQgb2YgdGhlIFdvcmRQcmVzcyB1c2VyLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NzoidXNlcl9pZCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c2F2ZV9zYWxlc2ZvcmNlX3VzZXJfZmllbGRzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyNzoic2F2ZV9zYWxlc2ZvcmNlX3VzZXJfZmllbGRzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6InVzZXJfaWQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNjQwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjY2NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6Mjk6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6dGFicygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mzk6IlJlbmRlciB0YWJzIGZvciBzZXR0aW5ncyBwYWdlcyBpbiBhZG1pbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzQ6ImlzIHRoZSB0YWJzIGZvciB0aGUgc2V0dGluZ3MgbWVudS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJ0YWJzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTY6ImlzIGEgc2luZ2xlIHRhYi4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjM6InRhYiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mjk6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6dGFicygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoidGFicyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoidGFicyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjM6InRhYiI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNjc1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjcxMDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6Mzk6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Y2xlYXJfc2NoZWR1bGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjY5OiJDbGVhciBzY2hlZHVsZQpUaGlzIGNsZWFycyB0aGUgc2NoZWR1bGUgaWYgdGhlIHVzZXIgY2xpY2tzIHRoZSBidXR0b24iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQyOiJpcyB0aGUgbmFtZSBvZiB0aGUgc2NoZWR1bGUgYmVpbmcgY2xlYXJlZC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEzOiJzY2hlZHVsZV9uYW1lIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozOToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpjbGVhcl9zY2hlZHVsZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTQ6ImNsZWFyX3NjaGVkdWxlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMzoic2NoZWR1bGVfbmFtZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNzE4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjcyNjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Z2V0X3NjaGVkdWxlX2NvdW50KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyNzoiR2V0IGNvdW50IG9mIHNjaGVkdWxlIGl0ZW1zIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjI6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyODoiaXMgdGhlIG5hbWUgb2YgdGhlIHNjaGVkdWxlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTM6InNjaGVkdWxlX25hbWUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo2OiIkY291bnQiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Z2V0X3NjaGVkdWxlX2NvdW50KCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxODoiZ2V0X3NjaGVkdWxlX2NvdW50Ijt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMzoic2NoZWR1bGVfbmFtZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNzM0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mjc1ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Y3JlYXRlX29iamVjdF9tYXAoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjcxOiJDcmVhdGUgYW4gb2JqZWN0IG1hcCBiZXR3ZWVuIGEgV29yZFByZXNzIG9iamVjdCBhbmQgYSBTYWxlc2ZvcmNlIG9iamVjdCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTo1OntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NDM6IlVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgV29yZFByZXNzIG9iamVjdC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEyOiJ3b3JkcHJlc3NfaWQiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyNjoiV2hhdCBraW5kIG9mIG9iamVjdCBpcyBpdC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE2OiJ3b3JkcHJlc3Nfb2JqZWN0IjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NDQ6IlVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgU2FsZXNmb3JjZSBvYmplY3QuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMzoic2FsZXNmb3JjZV9pZCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTozO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjIwOiJEaWQgd2UgcHVzaCBvciBwdWxsLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NjoiYWN0aW9uIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjQ7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NjA6IiR3cGRiLT5pbnNlcnRfaWQgVGhpcyBpcyB0aGUgZGF0YWJhc2Ugcm93IGZvciB0aGUgbWFwIG9iamVjdCI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpjcmVhdGVfb2JqZWN0X21hcCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTc6ImNyZWF0ZV9vYmplY3RfbWFwIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTo0OntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMjoid29yZHByZXNzX2lkIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTY6IndvcmRwcmVzc19vYmplY3QiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMzoic2FsZXNmb3JjZV9pZCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MztPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjY6ImFjdGlvbiI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNzY5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mjc4NTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fX1zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AdXNlZFRyYWl0cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI3ODc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGFkYXRhIjthOjA6e319fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW50ZXJmYWNlcyI7YTowOnt9czo0MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQB0cmFpdHMiO2E6MDp7fXM6NDA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZW51bXMiO2E6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAbWV0YWRhdGEiO2E6MDp7fX0=";