1737931120
waR3U4bTeM%3Ac23130d9f2401a6b3d8e8cc0b318d5f5-c84f8111c0acccab463fbd66ecdbe9ca
s:494120:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Njk6IkNyZWF0ZSBkZWZhdWx0IFdvcmRQcmVzcyBhZG1pbiBmdW5jdGlvbmFsaXR5IHRvIGNvbmZpZ3VyZSB0aGUgcGx1Z2luLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjU6ImNsYXNzIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyMDoiT2JqZWN0X1N5bmNfU2ZfQWRtaW4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX1pOjE7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcR2VuZXJpYyI6Mjp7czo3OiIAKgBuYW1lIjtzOjc6InBhY2thZ2UiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjIyOiJPYmplY3RfU3luY19TYWxlc2ZvcmNlIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBoYXNoIjtzOjMyOiJjODRmODExMWMwYWNjY2FiNDYzZmJkNjZlY2RiZTljYSI7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjMwOiJjbGFzcy1vYmplY3Qtc3luYy1zZi1hZG1pbi5waHAiO3M6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAcGF0aCI7czozODoiY2xhc3Nlcy9jbGFzcy1vYmplY3Qtc3luYy1zZi1hZG1pbi5waHAiO3M6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAc291cmNlIjtzOjEwNzQ0MjoiPD9waHAKLyoqCiAqIENyZWF0ZSBkZWZhdWx0IFdvcmRQcmVzcyBhZG1pbiBmdW5jdGlvbmFsaXR5IHRvIGNvbmZpZ3VyZSB0aGUgcGx1Z2luLgogKgogKiBAY2xhc3MgICBPYmplY3RfU3luY19TZl9BZG1pbgogKiBAcGFja2FnZSBPYmplY3RfU3luY19TYWxlc2ZvcmNlCiAqLwoKZGVmaW5lZCggJ0FCU1BBVEgnICkgfHwgZXhpdDsKCi8qKgogKiBPYmplY3RfU3luY19TZl9BZG1pbiBjbGFzcy4KICovCmNsYXNzIE9iamVjdF9TeW5jX1NmX0FkbWluIHsKCgkvKioKCSAqIEN1cnJlbnQgdmVyc2lvbiBvZiB0aGUgcGx1Z2luCgkgKgoJICogQHZhciBzdHJpbmcKCSAqLwoJcHVibGljICR2ZXJzaW9uOwoKCS8qKgoJICogVGhlIG1haW4gcGx1Z2luIGZpbGUKCSAqCgkgKiBAdmFyIHN0cmluZwoJICovCglwdWJsaWMgJGZpbGU7CgoJLyoqCgkgKiBHbG9iYWwgb2JqZWN0IG9mIGAkd3BkYmAsIHRoZSBXb3JkUHJlc3MgZGF0YWJhc2UKCSAqCgkgKiBAdmFyIG9iamVjdAoJICovCglwdWJsaWMgJHdwZGI7CgoJLyoqCgkgKiBUaGUgcGx1Z2luJ3Mgc2x1ZyBzbyB3ZSBjYW4gaW5jbHVkZSBpdCB3aGVuIG5lY2Vzc2FyeQoJICoKCSAqIEB2YXIgc3RyaW5nCgkgKi8KCXB1YmxpYyAkc2x1ZzsKCgkvKioKCSAqIFRoZSBwbHVnaW4ncyBwcmVmaXggd2hlbiBzYXZpbmcgb3B0aW9ucyB0byB0aGUgZGF0YWJhc2UKCSAqCgkgKiBAdmFyIHN0cmluZwoJICovCglwdWJsaWMgJG9wdGlvbl9wcmVmaXg7CgoJLyoqCgkgKiBTdWZmaXggZm9yIGdyb3VwIG5hbWUgaW4gQWN0aW9uU2NoZWR1bGVyCgkgKgoJICogQHZhciBzdHJpbmcKCSAqLwoJcHVibGljICRhY3Rpb25fZ3JvdXBfc3VmZml4OwoKCS8qKgoJICogTG9naW4gY3JlZGVudGlhbHMgZm9yIHRoZSBTYWxlc2ZvcmNlIEFQSTsgY29tZXMgZnJvbSB3cC1jb25maWcgb3IgZnJvbSB0aGUgcGx1Z2luIHNldHRpbmdzCgkgKgoJICogQHZhciBhcnJheQoJICovCglwdWJsaWMgJGxvZ2luX2NyZWRlbnRpYWxzOwoKCS8qKgoJICogQXJyYXkgb2Ygd2hhdCBjbGFzc2VzIGluIHRoZSBwbHVnaW4gY2FuIGJlIHNjaGVkdWxlZCB0byBvY2N1ciB3aXRoIGB3cF9jcm9uYCBldmVudHMKCSAqCgkgKiBAdmFyIGFycmF5CgkgKi8KCXB1YmxpYyAkc2NoZWR1bGFibGVfY2xhc3NlczsKCgkvKioKCSAqIE9iamVjdF9TeW5jX1NmX1F1ZXVlIGNsYXNzCgkgKgoJICogQHZhciBvYmplY3QKCSAqLwoJcHVibGljICRxdWV1ZTsKCgkvKioKCSAqIE9iamVjdF9TeW5jX1NmX0xvZ2dpbmcgY2xhc3MKCSAqCgkgKiBAdmFyIG9iamVjdAoJICovCglwdWJsaWMgJGxvZ2dpbmc7CgoJLyoqCgkgKiBPYmplY3RfU3luY19TZl9NYXBwaW5nIGNsYXNzCgkgKgoJICogQHZhciBvYmplY3QKCSAqLwoJcHVibGljICRtYXBwaW5nczsKCgkvKioKCSAqIE9iamVjdF9TeW5jX1NmX1dvcmRQcmVzcyBjbGFzcwoJICoKCSAqIEB2YXIgb2JqZWN0CgkgKi8KCXB1YmxpYyAkd29yZHByZXNzOwoKCS8qKgoJICogT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZSBjbGFzcwoJICogVGhpcyBjb250YWlucyBTYWxlc2ZvcmNlIEFQSSBtZXRob2RzCgkgKgoJICogQHZhciBhcnJheQoJICovCglwdWJsaWMgJHNhbGVzZm9yY2U7CgoJLyoqCgkgKiBPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1c2ggY2xhc3MKCSAqCgkgKiBAdmFyIG9iamVjdAoJICovCglwdWJsaWMgJHB1c2g7CgoJLyoqCgkgKiBPYmplY3RfU3luY19TZl9TYWxlc2ZvcmNlX1B1bGwgY2xhc3MKCSAqCgkgKiBAdmFyIG9iamVjdAoJICovCglwdWJsaWMgJHB1bGw7CgoJLyoqCgkgKiBPYmplY3RfU3luY19TZl9Xb3JkUHJlc3NfVHJhbnNpZW50IGNsYXNzCgkgKgoJICogQHZhciBvYmplY3QKCSAqLwoJcHJpdmF0ZSAkc2Z3cF90cmFuc2llbnRzOwoKCS8qKgoJICogVVJMIGZyYWdtZW50IGZvciB0aGUgcGx1Z2luJ3Mgc2V0dGluZ3MgcGFnZQoJICoKCSAqIEB2YXIgc3RyaW5nCgkgKi8KCXByaXZhdGUgJGFkbWluX3NldHRpbmdzX3VybF9wYXJhbTsKCgkvKioKCSAqIERhdGEgZm9yIGFkbWluIG5vdGljZXMKCSAqCgkgKiBAdmFyIGFycmF5CgkgKi8KCXB1YmxpYyAkbm90aWNlc19kYXRhOwoKCS8qKgoJICogU2FsZXNmb3JjZSBhY2Nlc3MgdG9rZW4KCSAqCgkgKiBAdmFyIHN0cmluZwoJICovCglwcml2YXRlICRhY2Nlc3NfdG9rZW47CgoJLyoqCgkgKiBTYWxlc2ZvcmNlIGluc3RhbmNlIFVSTAoJICoKCSAqIEB2YXIgc3RyaW5nCgkgKi8KCXByaXZhdGUgJGluc3RhbmNlX3VybDsKCgkvKioKCSAqIFNhbGVzZm9yY2UgcmVmcmVzaCB0b2tlbgoJICoKCSAqIEB2YXIgc3RyaW5nCgkgKi8KCXByaXZhdGUgJHJlZnJlc2hfdG9rZW47CgoJLyoqCgkgKiBEZWZhdWx0IHBhdGggZm9yIHRoZSBTYWxlc2ZvcmNlIGF1dGhvcml6ZSBVUkwKCSAqCgkgKiBAdmFyIHN0cmluZwoJICovCglwdWJsaWMgJGRlZmF1bHRfYXV0aG9yaXplX3VybF9wYXRoOwoKCS8qKgoJICogRGVmYXVsdCBwYXRoIGZvciB0aGUgU2FsZXNmb3JjZSB0b2tlbiBVUkwKCSAqCgkgKiBAdmFyIHN0cmluZwoJICovCglwdWJsaWMgJGRlZmF1bHRfdG9rZW5fdXJsX3BhdGg7CgoJLyoqCgkgKiBXaGF0IHZlcnNpb24gb2YgdGhlIFNhbGVzZm9yY2UgQVBJIHNob3VsZCBiZSB0aGUgZGVmYXVsdCBvbiB0aGUgc2V0dGluZ3Mgc2NyZWVuLgoJICogVXNlcnMgY2FuIGVkaXQgd2hhdCB2ZXJzaW9uIGlzIHVzZWQsIGJ1dCB0aGV5IHdvbid0IHNlZSBhIGNvcnJlY3QgbGlzdCBvZiBhbGwgdGhlaXIgYXZhaWxhYmxlIHZlcnNpb25zIHVudGlsIFdvcmRQcmVzcyBoYXMKCSAqIGJlZW4gYXV0aGVudGljYXRlZCB3aXRoIFNhbGVzZm9yY2UuCgkgKgoJICogQHZhciBzdHJpbmcKCSAqIEBkZXByZWNhdGVkIGFzIG9mIDIuMi4wOyB3aWxsIGJlIHJlbW92ZWQgaW4gdmVyc2lvbiAzLjAuIFRoaXMgcHJvcGVydHkgd2lsbCBzdGF5IHVudGlsIDMuMC4wIGJlY2F1c2UgaXQgaXMgYSBwdWJsaWMgdmFsdWUgYW5kIGl0IGNvdWxkIGJlIGFjY2Vzc2VkIGJ5IG90aGVyIGNvZGUuCgkgKi8KCXB1YmxpYyAkZGVmYXVsdF9hcGlfdmVyc2lvbjsKCgkvKioKCSAqIERlZmF1bHQgbWF4IG51bWJlciBvZiBwdWxsIHJlY29yZHMuIFVzZXJzIGNhbiBlZGl0IHRoaXMuCgkgKgoJICogQHZhciBpbnQKCSAqLwoJcHVibGljICRkZWZhdWx0X3B1bGxfbGltaXQ7CgoJLyoqCgkgKiBEZWZhdWx0IHRocm90dGxlIGZvciBob3cgb2Z0ZW4gdG8gcHVsbCBmcm9tIFNhbGVzZm9yY2UuIFVzZXJzIGNhbiBlZGl0IHRoaXMuCgkgKgoJICogQHZhciBpbnQKCSAqLwoJcHVibGljICRkZWZhdWx0X3B1bGxfdGhyb3R0bGU7CgoJLyoqCgkgKiBEZWZhdWx0IGZvciB3aGV0aGVyIHRvIGxpbWl0IHRvIHRyaWdnZXJhYmxlIGl0ZW1zLiBVc2VycyBjYW4gZWRpdCB0aGlzLgoJICoKCSAqIEB2YXIgYm9vbAoJICovCglwdWJsaWMgJGRlZmF1bHRfdHJpZ2dlcmFibGU7CgoJLyoqCgkgKiBEZWZhdWx0IGZvciB3aGV0aGVyIHRvIGxpbWl0IHRvIGl0ZW1zIHRoYXQgY2FuIGJlIHVwZGF0ZWQuIFVzZXJzIGNhbiBlZGl0IHRoaXMuCgkgKgoJICogQHZhciBib29sCgkgKi8KCXB1YmxpYyAkZGVmYXVsdF91cGRhdGVhYmxlOwoKCS8qKgoJICogQ29uc3RydWN0b3IgZm9yIGFkbWluIGNsYXNzCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpIHsKCQkkdGhpcy0+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+JzsKCgkJJGJvZHkgLj0gc3ByaW50ZiggZXNjX2h0bWxfXyggJ0lmIGFueSB0YXNrcyB3ZXJlIG5vdCB1cGRhdGVkLCBvciB3ZXJlIG5vdCBhYmxlIHRvIGtlZXAgdGhlIHNhbWUgZnJlcXVlbmN5IHRoZXkgaGFkIGJlZm9yZSwgZ28gdG8gdGhlIFNjaGVkdWxpbmcgdGFiIHRvIHVwZGF0ZSB0aGVtLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSApOwoJCSRib2R5IC49IHNwcmludGYoCgkJCS8vIHRyYW5zbGF0b3JzOiAlMSRzIGlzIHRoZSBzY2hlZHVsZSBzZXR0aW5ncyBVUkwuCgkJCXdwX2tzZXNfcG9zdCggJ0lmIGFueSB0YXNrcyB3ZXJlIG5vdCB1cGRhdGVkLCBvciB3ZXJlIG5vdCBhYmxlIHRvIGtlZXAgdGhlIHNhbWUgZnJlcXVlbmN5IHRoZXkgaGFkIGJlZm9yZSwgZ28gdG8gdGhlIDxhIGhyZWY9IicgLiBhZG1pbl91cmwoICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9b2JqZWN0LXN5bmMtc2FsZXNmb3JjZS1hZG1pbiZ0YWI9c2NoZWR1bGUnICkgLiAnIj4lMSRzPC9hPiB0YWIgdG8gdXBkYXRlIHRoZW0uJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQllc2NfaHRtbF9fKCAnU2NoZWR1bGluZycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKQoJCSk7CgoJCSR0aGlzLT5sb2dnaW5nLT5zZXR1cCgKCQkJc3ByaW50ZigKCQkJCS8vIHRyYW5zbGF0b3JzOiAlMSRzIGlzIHRoZSBsb2cgc3RhdHVzLCAlMiRzIGlzIHRoZSBuYW1lIG9mIGEgV29yZFByZXNzIG9iamVjdC4gJTMkcyBpcyB0aGUgaWQgb2YgdGhhdCBvYmplY3QuCgkJCQllc2NfaHRtbF9fKCAnJTEkcyBBY3Rpb25TY2hlZHVsZXI6IHRoZSBBY3Rpb25TY2hlZHVsZXIgbGlicmFyeSBoYXMgY29tcGxldGVkIGl0cyBtaWdyYXRpb24uIFNlZSB0aGUgbG9nIGVudHJ5IGNvbnRlbnQgZm9yIHN0YXR1cyBvbiBlYWNoIHJlY3VycmluZyB0YXNrLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCXVjZmlyc3QoIGVzY19hdHRyKCAkc3RhdHVzICkgKQoJCQkpLAoJCQkkYm9keSwKCQkJMCwKCQkJMCwKCQkJJHN0YXR1cwoJCSk7Cgl9CgoJLyoqCgkgKiBDcmVhdGUgdGhlIFdvcmRQcmVzcyBhZG1pbiBvcHRpb25zIHBhZ2UKCSAqLwoJcHVibGljIGZ1bmN0aW9uIGNyZWF0ZV9hZG1pbl9tZW51KCkgewoJCSR0aXRsZSA9IF9fKCAnU2FsZXNmb3JjZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsKCQlhZGRfb3B0aW9uc19wYWdlKCAkdGl0bGUsICR0aXRsZSwgJ2NvbmZpZ3VyZV9zYWxlc2ZvcmNlJywgJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSwgYXJyYXkoICR0aGlzLCAnc2hvd19hZG1pbl9wYWdlJyApICk7Cgl9CgoJLyoqCgkgKiBSZW5kZXIgdGhlIGFkbWluIHBhZ2VzIGluIFdvcmRQcmVzcy4gVGhpcyBhbHNvIGFsbG93cyBvdGhlciBwbHVnaW5zIHRvIGFkZCB0YWJzIHRvIHRoaXMgcGx1Z2luJ3Mgc2V0dGluZ3Mgc2NyZWVuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBzaG93X2FkbWluX3BhZ2UoKSB7CgkJJGdldF9kYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9HRVQsIEZJTFRFUl9TQU5JVElaRV9TUEVDSUFMX0NIQVJTICk7CgkJZWNobyAnPGRpdiBjbGFzcz0id3JhcCI+JzsKCQllY2hvICc8aDE+JyAuIGVzY19odG1sKCBnZXRfYWRtaW5fcGFnZV90aXRsZSgpICkgLiAnPC9oMT4nOwoJCSRhbGxvd2VkID0gJHRoaXMtPmNoZWNrX3dvcmRwcmVzc19hZG1pbl9wZXJtaXNzaW9ucygpOwoJCWlmICggZmFsc2UgPT09ICRhbGxvd2VkICkgewoJCQlyZXR1cm47CgkJfQoJCSR0YWJzID0gYXJyYXkoCgkJCSdzZXR0aW5ncycgICAgICA9PiBfXyggJ1NldHRpbmdzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQknYXV0aG9yaXplJyAgICAgPT4gX18oICdBdXRob3JpemUnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCSdmaWVsZG1hcHMnICAgICA9PiBfXyggJ0ZpZWxkbWFwcycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJJ3NjaGVkdWxlJyAgICAgID0+IF9fKCAnU2NoZWR1bGluZycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJJ2ltcG9ydC1leHBvcnQnID0+IF9fKCAnSW1wb3J0ICZhbXA7IEV4cG9ydCcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkpOyAvLyB0aGlzIGNyZWF0ZXMgdGhlIHRhYnMgZm9yIHRoZSBhZG1pbi4KCgkJLy8gb3B0aW9uYWxseSBtYWtlIHRhYihzKSBmb3IgbG9nZ2luZyBhbmQgbG9nIHNldHRpbmdzLgoJCSRsb2dnaW5nX2VuYWJsZWQgICAgICA9IGdldF9vcHRpb24oICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ2VuYWJsZV9sb2dnaW5nJywgZmFsc2UgKTsKCQkkdGFic1snbG9nX3NldHRpbmdzJ10gPSBfXyggJ0xvZyBTZXR0aW5ncycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsKCgkJJG1hcHBpbmdfZXJyb3JzICAgICAgID0gJHRoaXMtPm1hcHBpbmdzLT5nZXRfZmFpbGVkX29iamVjdF9tYXBzKCk7CgkJJG1hcHBpbmdfZXJyb3JzX3RvdGFsID0gaXNzZXQoICRtYXBwaW5nX2Vycm9yc1sndG90YWwnXSApID8gJG1hcHBpbmdfZXJyb3JzWyd0b3RhbCddIDogMDsKCQlpZiAoIDAgPCAkbWFwcGluZ19lcnJvcnNfdG90YWwgKSB7CgkJCSR0YWJzWydtYXBwaW5nX2Vycm9ycyddID0gX18oICdNYXBwaW5nIEVycm9ycycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsKCQl9CgoJCS8vIGZpbHRlciBmb3IgZXh0ZW5kaW5nIHRoZSB0YWJzIGF2YWlsYWJsZSBvbiB0aGUgcGFnZQoJCS8vIGN1cnJlbnRseSBpdCB3aWxsIGdvIGludG8gdGhlIGRlZmF1bHQgc3dpdGNoIGNhc2UgZm9yICR0YWIuCgkJJHRhYnMgPSBhcHBseV9maWx0ZXJzKCAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICdzZXR0aW5nc190YWJzJywgJHRhYnMgKTsKCgkJJHRhYiA9IGlzc2V0KCAkZ2V0X2RhdGFbJ3RhYiddICkgPyBzYW5pdGl6ZV9rZXkoICRnZXRfZGF0YVsndGFiJ10gKSA6ICdzZXR0aW5ncyc7CgkJJHRoaXMtPnRhYnMoICR0YWJzLCAkdGFiICk7CgoJCSRjb25zdW1lcl9rZXkgICAgPSAkdGhpcy0+bG9naW5fY3JlZGVudGlhbHNbJ2NvbnN1bWVyX2tleSddOwoJCSRjb25zdW1lcl9zZWNyZXQgPSAkdGhpcy0+bG9naW5fY3JlZGVudGlhbHNbJ2NvbnN1bWVyX3NlY3JldCddOwoJCSRjYWxsYmFja191cmwgICAgPSAkdGhpcy0+bG9naW5fY3JlZGVudGlhbHNbJ2NhbGxiYWNrX3VybCddOwoKCQlpZiAoIHRydWUgIT09ICR0aGlzLT5zYWxlc2ZvcmNlWydpc19hdXRob3JpemVkJ10gKSB7CgkJCSR1cmwgICAgID0gZXNjX3VybCggJGNhbGxiYWNrX3VybCApOwoJCQkkYW5jaG9yICA9IGVzY19odG1sX18oICdBdXRob3JpemUgdGFiJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApOwoJCQkkbWVzc2FnZSA9IHNwcmludGYoICdTYWxlc2ZvcmNlIG5lZWRzIHRvIGJlIGF1dGhvcml6ZWQgdG8gY29ubmVjdCB0byB0aGlzIHdlYnNpdGUuIFVzZSB0aGUgPGEgaHJlZj0iJXMiPiVzPC9hPiB0byBjb25uZWN0LicsICR1cmwsICRhbmNob3IgKTsKCQkJcmVxdWlyZSBwbHVnaW5fZGlyX3BhdGgoICR0aGlzLT5maWxlICkgLiAnL3RlbXBsYXRlcy9hZG1pbi9lcnJvci5waHAnOwoJCX0KCgkJaWYgKCAwID09PSBjb3VudCggJHRoaXMtPm1hcHBpbmdzLT5nZXRfZmllbGRtYXBzKCkgKSApIHsKCQkJJHVybCAgICAgPSBlc2NfdXJsKCBnZXRfYWRtaW5fdXJsKCBudWxsLCAnb3B0aW9ucy1nZW5lcmFsLnBocD9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9ZmllbGRtYXBzJyApICk7CgkJCSRhbmNob3IgID0gZXNjX2h0bWxfXyggJ0ZpZWxkbWFwcyB0YWInLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICk7CgkJCSRtZXNzYWdlID0gc3ByaW50ZiggJ05vIGZpZWxkbWFwcyBleGlzdCB5ZXQuIFVzZSB0aGUgPGEgaHJlZj0iJXMiPiVzPC9hPiB0byBtYXAgV29yZFByZXNzIGFuZCBTYWxlc2ZvcmNlIG9iamVjdHMgdG8gZWFjaCBvdGhlci4nLCAkdXJsLCAkYW5jaG9yICk7CgkJCXJlcXVpcmUgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vZXJyb3IucGhwJzsKCQl9CgoJCXRyeSB7CgkJCXN3aXRjaCAoICR0YWIgKSB7CgkJCQljYXNlICdhdXRob3JpemUnOgoJCQkJCWlmICggaXNzZXQoICRnZXRfZGF0YVsnY29kZSddICkgKSB7CgkJCQkJCS8vIHRoaXMgc3RyaW5nIGlzIGFuIG9hdXRoIHRva2VuLgoJCQkJCQkkZGF0YSAgICAgICAgICA9IGVzY19odG1sKCB3cF91bnNsYXNoKCAkZ2V0X2RhdGFbJ2NvZGUnXSApICk7CgkJCQkJCSRpc19hdXRob3JpemVkID0gJHRoaXMtPnNhbGVzZm9yY2VbJ3NmYXBpJ10tPnJlcXVlc3RfdG9rZW4oICRkYXRhICk7CgkJCQkJCT8+CgkJCQkJCTxzY3JpcHQ+d2luZG93LmxvY2F0aW9uID0gJzw/cGhwIGVjaG8gZXNjX3VybF9yYXcoICRjYWxsYmFja191cmwgKTsgPz4nPC9zY3JpcHQ+CgkJCQkJCTw/cGhwCgkJCQkJfSBlbHNlaWYgKCB0cnVlID09PSAkdGhpcy0+c2FsZXNmb3JjZVsnaXNfYXV0aG9yaXplZCddICkgewoJCQkJCQkJcmVxdWlyZV9vbmNlIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICcvdGVtcGxhdGVzL2FkbWluL2F1dGhvcml6ZWQucGhwJzsKCQkJCQkJCSR0aGlzLT5zdGF0dXMoICR0aGlzLT5zYWxlc2ZvcmNlWydzZmFwaSddICk7CgkJCQkJfSBlbHNlaWYgKCB0cnVlID09PSBpc19vYmplY3QoICR0aGlzLT5zYWxlc2ZvcmNlWydzZmFwaSddICkgJiYgaXNzZXQoICRjb25zdW1lcl9rZXkgKSAmJiBpc3NldCggJGNvbnN1bWVyX3NlY3JldCApICkgewoJCQkJCQk/PgoJCQkJCQk8cD48YSBjbGFzcz0iYnV0dG9uIGJ1dHRvbi1wcmltYXJ5IiBocmVmPSI8P3BocCBlY2hvIGVzY191cmwoICR0aGlzLT5zYWxlc2ZvcmNlWydzZmFwaSddLT5nZXRfYXV0aG9yaXphdGlvbl9jb2RlKCkgKTsgPz4iPjw/cGhwIGVjaG8gZXNjX2h0bWxfXyggJ0Nvbm5lY3QgdG8gU2FsZXNmb3JjZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsgPz48L2E+PC9wPgoJCQkJCQk8P3BocAoJCQkJCX0gZWxzZSB7CgkJCQkJCSR1cmwgICAgPSBlc2NfdXJsKCBnZXRfYWRtaW5fdXJsKCBudWxsLCAnb3B0aW9ucy1nZW5lcmFsLnBocD9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9c2V0dGluZ3MnICkgKTsKCQkJCQkJJGFuY2hvciA9IGVzY19odG1sX18oICdTZXR0aW5ncycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKTsKCQkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmUgZm9yIHRoZSBzZXR0aW5ncyB0YWIgbGluazogMSkgdGhlIHVybCwgYW5kIDIpIHRoZSBhbmNob3IgdGV4dC4KCQkJCQkJJG1lc3NhZ2UgPSBzcHJpbnRmKCBlc2NfaHRtbF9fKCAnU2FsZXNmb3JjZSBuZWVkcyB0byBiZSBhdXRob3JpemVkIHRvIGNvbm5lY3QgdG8gdGhpcyB3ZWJzaXRlIGJ1dCB0aGUgY3JlZGVudGlhbHMgYXJlIG1pc3NpbmcuIFVzZSB0aGUgPGEgaHJlZj0iJTEkcyI+JTIkczwvYT4gdGFiIHRvIGFkZCB0aGVtLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwgJHVybCwgJGFuY2hvciApOwoJCQkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vZXJyb3IucGhwJzsKCQkJCQl9CgkJCQkJYnJlYWs7CgkJCQljYXNlICdmaWVsZG1hcHMnOgoJCQkJCWlmICggaXNzZXQoICRnZXRfZGF0YVsnbWV0aG9kJ10gKSApIHsKCgkJCQkJCSRtZXRob2QgICAgICA9IHNhbml0aXplX2tleSggJGdldF9kYXRhWydtZXRob2QnXSApOwoJCQkJCQkkZXJyb3JfdXJsICAgPSBnZXRfYWRtaW5fdXJsKCBudWxsLCAnb3B0aW9ucy1nZW5lcmFsLnBocD9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9ZmllbGRtYXBzJm1ldGhvZD0nIC4gJG1ldGhvZCApOwoJCQkJCQkkc3VjY2Vzc191cmwgPSBnZXRfYWRtaW5fdXJsKCBudWxsLCAnb3B0aW9ucy1nZW5lcmFsLnBocD9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9ZmllbGRtYXBzJyApOwoKCQkJCQkJJGRpc2FibGVfbWFwcGVkX2ZpZWxkcyA9IGdldF9vcHRpb24oICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ2Rpc2FibGVfbWFwcGVkX2ZpZWxkcycsIGZhbHNlICk7CgkJCQkJCSRkaXNhYmxlX21hcHBlZF9maWVsZHMgPSBmaWx0ZXJfdmFyKCAkZGlzYWJsZV9tYXBwZWRfZmllbGRzLCBGSUxURVJfVkFMSURBVEVfQk9PTEVBTiApOwoJCQkJCQkkZmllbGRtYXBfY2xhc3MgICAgICAgID0gJ2ZpZWxkbWFwJzsKCQkJCQkJaWYgKCB0cnVlID09PSAkZGlzYWJsZV9tYXBwZWRfZmllbGRzICkgewoJCQkJCQkJJGZpZWxkbWFwX2NsYXNzIC49ICcgZmllbGRtYXAtZGlzYWJsZS1tYXBwZWQtZmllbGRzJzsKCQkJCQkJfQoKCQkJCQkJaWYgKCBpc3NldCggJGdldF9kYXRhWyd0cmFuc2llbnQnXSApICkgewoJCQkJCQkJJHRyYW5zaWVudCA9IHNhbml0aXplX2tleSggJGdldF9kYXRhWyd0cmFuc2llbnQnXSApOwoJCQkJCQkJJHBvc3RlZCAgICA9ICR0aGlzLT5zZndwX3RyYW5zaWVudHMtPmdldCggJHRyYW5zaWVudCApOwoJCQkJCQl9CgoJCQkJCQlpZiAoIGlzc2V0KCAkcG9zdGVkICkgJiYgaXNfYXJyYXkoICRwb3N0ZWQgKSApIHsKCQkJCQkJCSRtYXAgPSAkcG9zdGVkOwoJCQkJCQl9IGVsc2VpZiAoICdlZGl0JyA9PT0gJG1ldGhvZCB8fCAnY2xvbmUnID09PSAkbWV0aG9kIHx8ICdkZWxldGUnID09PSAkbWV0aG9kICkgewoJCQkJCQkJJG1hcCA9ICR0aGlzLT5tYXBwaW5ncy0+Z2V0X2ZpZWxkbWFwcyggaXNzZXQoICRnZXRfZGF0YVsnaWQnXSApID8gc2FuaXRpemVfa2V5KCAkZ2V0X2RhdGFbJ2lkJ10gKSA6ICcnICk7CgkJCQkJCX0KCgkJCQkJCWlmICggJ2FkZCcgPT09ICRtZXRob2QgfHwgKCBpc3NldCggJG1hcCApICYmIGlzX2FycmF5KCAkbWFwICkgJiYgaXNzZXQoICRtYXBbJ2lkJ10gKSApICkgewoJCQkJCQkJaWYgKCBpc3NldCggJG1hcCApICYmIGlzX2FycmF5KCAkbWFwICkgJiYgaXNzZXQoICRtYXBbJ2lkJ10gKSApIHsKCQkJCQkJCQkkbGFiZWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPSAkbWFwWydsYWJlbCddOwoJCQkJCQkJCSRmaWVsZG1hcF9zdGF0dXMgICAgICAgICAgICAgICAgICAgICA9ICRtYXBbJ2ZpZWxkbWFwX3N0YXR1cyddOwoJCQkJCQkJCSRzYWxlc2ZvcmNlX29iamVjdCAgICAgICAgICAgICAgICAgICA9ICRtYXBbJ3NhbGVzZm9yY2Vfb2JqZWN0J107CgkJCQkJCQkJJHNhbGVzZm9yY2VfcmVjb3JkX3R5cGVzX2FsbG93ZWQgICAgID0gbWF5YmVfdW5zZXJpYWxpemUoICRtYXBbJ3NhbGVzZm9yY2VfcmVjb3JkX3R5cGVzX2FsbG93ZWQnXSApOwoJCQkJCQkJCSRzYWxlc2ZvcmNlX3JlY29yZF90eXBlX2RlZmF1bHQgICAgICA9ICRtYXBbJ3NhbGVzZm9yY2VfcmVjb3JkX3R5cGVfZGVmYXVsdCddOwoJCQkJCQkJCSR3b3JkcHJlc3Nfb2JqZWN0ICAgICAgICAgICAgICAgICAgICA9ICRtYXBbJ3dvcmRwcmVzc19vYmplY3QnXTsKCQkJCQkJCQkkcHVsbF90cmlnZ2VyX2ZpZWxkICAgICAgICAgICAgICAgICAgPSAkbWFwWydwdWxsX3RyaWdnZXJfZmllbGQnXTsKCQkJCQkJCQkkZmllbGRtYXBfZmllbGRzICAgICAgICAgICAgICAgICAgICAgPSAkbWFwWydmaWVsZHMnXTsKCQkJCQkJCQkkc3luY190cmlnZ2VycyAgICAgICAgICAgICAgICAgICAgICAgPSAkbWFwWydzeW5jX3RyaWdnZXJzJ107CgkJCQkJCQkJJGFsd2F5c19kZWxldGVfb2JqZWN0X21hcHNfb25fZGVsZXRlID0gJG1hcFsnYWx3YXlzX2RlbGV0ZV9vYmplY3RfbWFwc19vbl9kZWxldGUnXTsKCQkJCQkJCQkkcHVzaF9hc3luYyAgICAgICAgICAgICAgICAgICAgICAgICAgPSAkbWFwWydwdXNoX2FzeW5jJ107CgkJCQkJCQkJJHB1c2hfZHJhZnRzICAgICAgICAgICAgICAgICAgICAgICAgID0gJG1hcFsncHVzaF9kcmFmdHMnXTsKCQkJCQkJCQkkcHVsbF90b19kcmFmdHMgICAgICAgICAgICAgICAgICAgICAgPSAkbWFwWydwdWxsX3RvX2RyYWZ0cyddOwoJCQkJCQkJCSR3ZWlnaHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9ICRtYXBbJ3dlaWdodCddOwoJCQkJCQkJfQoJCQkJCQkJaWYgKCAnYWRkJyA9PT0gJG1ldGhvZCB8fCAnZWRpdCcgPT09ICRtZXRob2QgfHwgJ2Nsb25lJyA9PT0gJG1ldGhvZCApIHsKCQkJCQkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vZmllbGRtYXBzLWFkZC1lZGl0LWNsb25lLnBocCc7CgkJCQkJCQl9IGVsc2VpZiAoICdkZWxldGUnID09PSAkbWV0aG9kICkgewoJCQkJCQkJCXJlcXVpcmVfb25jZSBwbHVnaW5fZGlyX3BhdGgoICR0aGlzLT5maWxlICkgLiAnL3RlbXBsYXRlcy9hZG1pbi9maWVsZG1hcHMtZGVsZXRlLnBocCc7CgkJCQkJCQl9CgkJCQkJCX0gZWxzZSB7CgkJCQkJCQkkbm9fZmllbGRtYXBfdXJsID0gZ2V0X2FkbWluX3VybCggbnVsbCwgJ29wdGlvbnMtZ2VuZXJhbC5waHA/cGFnZT0nIC4gJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSAuICcmdGFiPWZpZWxkbWFwcyZtaXNzaW5nX2ZpZWxkbWFwPXRydWUnICk7CgkJCQkJCQl3cF9zYWZlX3JlZGlyZWN0KCAkbm9fZmllbGRtYXBfdXJsICk7CgkJCQkJCQlleGl0KCk7CgkJCQkJCX0KCQkJCQl9IGVsc2UgewoJCQkJCQkkZmllbGRtYXBzID0gJHRoaXMtPm1hcHBpbmdzLT5nZXRfZmllbGRtYXBzKCk7CgkJCQkJCXJlcXVpcmVfb25jZSBwbHVnaW5fZGlyX3BhdGgoICR0aGlzLT5maWxlICkgLiAnL3RlbXBsYXRlcy9hZG1pbi9maWVsZG1hcHMtbGlzdC5waHAnOwoJCQkJCX0gLy8gRW5kIGlmIHN0YXRlbWVudC4KCQkJCQlicmVhazsKCQkJCWNhc2UgJ2xvZ291dCc6CgkJCQkJJHRoaXMtPmxvZ291dCgpOwoJCQkJCWJyZWFrOwoJCQkJY2FzZSAnY2xlYXJfY2FjaGUnOgoJCQkJCSR0aGlzLT5jbGVhcl9jYWNoZSgpOwoJCQkJCWJyZWFrOwoJCQkJY2FzZSAnY2xlYXJfc2NoZWR1bGUnOgoJCQkJCWlmICggaXNzZXQoICRnZXRfZGF0YVsnc2NoZWR1bGVfbmFtZSddICkgKSB7CgkJCQkJCSRzY2hlZHVsZV9uYW1lID0gc2FuaXRpemVfa2V5KCAkZ2V0X2RhdGFbJ3NjaGVkdWxlX25hbWUnXSApOwoJCQkJCX0KCQkJCQkkdGhpcy0+Y2xlYXJfc2NoZWR1bGUoICRzY2hlZHVsZV9uYW1lICk7CgkJCQkJYnJlYWs7CgkJCQljYXNlICdzZXR0aW5ncyc6CgkJCQkJcmVxdWlyZV9vbmNlIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICcvdGVtcGxhdGVzL2FkbWluL3NldHRpbmdzLnBocCc7CgkJCQkJYnJlYWs7CgkJCQljYXNlICdtYXBwaW5nX2Vycm9ycyc6CgkJCQkJaWYgKCBpc3NldCggJGdldF9kYXRhWydtZXRob2QnXSApICkgewoKCQkJCQkJJG1ldGhvZCAgICAgID0gc2FuaXRpemVfa2V5KCAkZ2V0X2RhdGFbJ21ldGhvZCddICk7CgkJCQkJCSRlcnJvcl91cmwgICA9IGdldF9hZG1pbl91cmwoIG51bGwsICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9JyAuICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gLiAnJnRhYj1tYXBwaW5nX2Vycm9ycyZtZXRob2Q9JyAuICRtZXRob2QgKTsKCQkJCQkJJHN1Y2Nlc3NfdXJsID0gZ2V0X2FkbWluX3VybCggbnVsbCwgJ29wdGlvbnMtZ2VuZXJhbC5waHA/cGFnZT0nIC4gJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSAuICcmdGFiPW1hcHBpbmdfZXJyb3JzJyApOwoKCQkJCQkJaWYgKCBpc3NldCggJGdldF9kYXRhWydtYXBfdHJhbnNpZW50J10gKSApIHsKCQkJCQkJCSR0cmFuc2llbnQgPSBzYW5pdGl6ZV9rZXkoICRnZXRfZGF0YVsnbWFwX3RyYW5zaWVudCddICk7CgkJCQkJCQkkcG9zdGVkICAgID0gJHRoaXMtPnNmd3BfdHJhbnNpZW50cy0+Z2V0KCAkdHJhbnNpZW50ICk7CgkJCQkJCX0KCgkJCQkJCWlmICggaXNzZXQoICRwb3N0ZWQgKSAmJiBpc19hcnJheSggJHBvc3RlZCApICkgewoJCQkJCQkJJG1hcF9yb3cgPSAkcG9zdGVkOwoJCQkJCQl9IGVsc2VpZiAoICdlZGl0JyA9PT0gJG1ldGhvZCB8fCAnZGVsZXRlJyA9PT0gJG1ldGhvZCApIHsKCQkJCQkJCSRtYXBfcm93ID0gJHRoaXMtPm1hcHBpbmdzLT5nZXRfZmFpbGVkX29iamVjdF9tYXAoIGlzc2V0KCAkZ2V0X2RhdGFbJ2lkJ10gKSA/IHNhbml0aXplX2tleSggJGdldF9kYXRhWydpZCddICkgOiAnJyApOwoJCQkJCQl9CgoJCQkJCQlpZiAoIGlzc2V0KCAkbWFwX3JvdyApICYmIGlzX2FycmF5KCAkbWFwX3JvdyApICkgewoJCQkJCQkJJHNhbGVzZm9yY2VfaWQgICAgPSAkbWFwX3Jvd1snc2FsZXNmb3JjZV9pZCddOwoJCQkJCQkJJHdvcmRwcmVzc19pZCAgICAgPSAkbWFwX3Jvd1snd29yZHByZXNzX2lkJ107CgkJCQkJCQkkd29yZHByZXNzX29iamVjdCA9ICRtYXBfcm93Wyd3b3JkcHJlc3Nfb2JqZWN0J107CgkJCQkJCX0KCgkJCQkJCWlmICggJ2VkaXQnID09PSAkbWV0aG9kICkgewoJCQkJCQkJcmVxdWlyZV9vbmNlIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICcvdGVtcGxhdGVzL2FkbWluL21hcHBpbmctZXJyb3JzLWVkaXQucGhwJzsKCQkJCQkJfSBlbHNlaWYgKCAnZGVsZXRlJyA9PT0gJG1ldGhvZCApIHsKCQkJCQkJCXJlcXVpcmVfb25jZSBwbHVnaW5fZGlyX3BhdGgoICR0aGlzLT5maWxlICkgLiAnL3RlbXBsYXRlcy9hZG1pbi9tYXBwaW5nLWVycm9ycy1kZWxldGUucGhwJzsKCQkJCQkJfQoJCQkJCX0gZWxzZSB7CgoJCQkJCQlpZiAoIGlzc2V0KCAkZ2V0X2RhdGFbJ21hcHBpbmdfZXJyb3JfdHJhbnNpZW50J10gKSApIHsKCQkJCQkJCSR0cmFuc2llbnQgPSBzYW5pdGl6ZV9rZXkoICRnZXRfZGF0YVsnbWFwcGluZ19lcnJvcl90cmFuc2llbnQnXSApOwoJCQkJCQkJJHBvc3RlZCAgICA9ICR0aGlzLT5zZndwX3RyYW5zaWVudHMtPmdldCggJHRyYW5zaWVudCApOwoJCQkJCQl9CgoJCQkJCQkkaWRzX3N0cmluZyA9ICcnOwoJCQkJCQkkaWRzICAgICAgICA9IGFycmF5KCk7CgkJCQkJCWlmICggaXNzZXQoICRwb3N0ZWRbJ2RlbGV0ZSddICkgKSB7CgkJCQkJCQkkaWRzX3N0cmluZyA9IG1heWJlX3NlcmlhbGl6ZSggJHBvc3RlZFsnZGVsZXRlJ10gKTsKCQkJCQkJCSRpZHMgICAgICAgID0gJHBvc3RlZFsnZGVsZXRlJ107CgkJCQkJCX0KCgkJCQkJCSRlcnJvcl91cmwgICA9IGdldF9hZG1pbl91cmwoIG51bGwsICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9JyAuICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gLiAnJnRhYj1tYXBwaW5nX2Vycm9ycyZpZHM9JyAuICRpZHNfc3RyaW5nICk7CgkJCQkJCSRzdWNjZXNzX3VybCA9IGdldF9hZG1pbl91cmwoIG51bGwsICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9JyAuICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gLiAnJnRhYj1tYXBwaW5nX2Vycm9ycycgKTsKCQkJCQkJcmVxdWlyZV9vbmNlIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICcvdGVtcGxhdGVzL2FkbWluL21hcHBpbmctZXJyb3JzLnBocCc7CgkJCQkJfQoJCQkJCWJyZWFrOwoJCQkJY2FzZSAnaW1wb3J0LWV4cG9ydCc6CgkJCQkJcmVxdWlyZV9vbmNlIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICcvdGVtcGxhdGVzL2FkbWluL2ltcG9ydC1leHBvcnQucGhwJzsKCQkJCQlicmVhazsKCQkJCWRlZmF1bHQ6CgkJCQkJJGluY2x1ZGVfc2V0dGluZ3MgPSBhcHBseV9maWx0ZXJzKCAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICdzZXR0aW5nc190YWJfaW5jbHVkZV9zZXR0aW5ncycsIHRydWUsICR0YWIgKTsKCQkJCQkkY29udGVudF9iZWZvcmUgICA9IGFwcGx5X2ZpbHRlcnMoICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ3NldHRpbmdzX3RhYl9jb250ZW50X2JlZm9yZScsIG51bGwsICR0YWIgKTsKCQkJCQkkY29udGVudF9hZnRlciAgICA9IGFwcGx5X2ZpbHRlcnMoICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ3NldHRpbmdzX3RhYl9jb250ZW50X2FmdGVyJywgbnVsbCwgJHRhYiApOwoJCQkJCWlmICggbnVsbCAhPT0gJGNvbnRlbnRfYmVmb3JlICkgewoJCQkJCQllY2hvIGVzY19odG1sKCAkY29udGVudF9iZWZvcmUgKTsKCQkJCQl9CgkJCQkJaWYgKCB0cnVlID09PSAkaW5jbHVkZV9zZXR0aW5ncyApIHsKCQkJCQkJcmVxdWlyZV9vbmNlIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICcvdGVtcGxhdGVzL2FkbWluL3NldHRpbmdzLnBocCc7CgkJCQkJfQoJCQkJCWlmICggbnVsbCAhPT0gJGNvbnRlbnRfYWZ0ZXIgKSB7CgkJCQkJCWVjaG8gZXNjX2h0bWwoICRjb250ZW50X2FmdGVyICk7CgkJCQkJfQoJCQkJCWJyZWFrOwoJCQl9IC8vIEVuZCBzd2l0Y2ggc3RhdGVtZW50LgoJCX0gY2F0Y2ggKCBPYmplY3RfU3luY19TZl9FeGNlcHRpb24gJGV4ICkgewoJCQllY2hvIHNwcmludGYoCgkJCQknPHA+RXJyb3IgPHN0cm9uZz4lMSRzPC9zdHJvbmc+OiAlMiRzPC9wPicsCgkJCQlhYnNpbnQoICRleC0+Z2V0Q29kZSgpICksCgkJCQllc2NfaHRtbCggJGV4LT5nZXRNZXNzYWdlKCkgKQoJCQkpOwoJCX0gLy8gRW5kIHRyeSBmb3IgbWVudS9wYWdlIHNldHVwLgoJCWVjaG8gJzwvZGl2Pic7Cgl9CgoJLyoqCgkgKiBDcmVhdGUgZGVmYXVsdCBXb3JkUHJlc3MgYWRtaW4gc2V0dGluZ3MgZm9ybS4gVGhpcyBydW5zIHRoZSBTZXR0aW5ncyBwYWdlLgoJICovCglwdWJsaWMgZnVuY3Rpb24gc2FsZXNmb3JjZV9zZXR0aW5nc19mb3JtcygpIHsKCQkkZ2V0X2RhdGEgPSBmaWx0ZXJfaW5wdXRfYXJyYXkoIElOUFVUX0dFVCwgRklMVEVSX1NBTklUSVpFX1NQRUNJQUxfQ0hBUlMgKTsKCQkkcGFnZSAgICAgPSBpc3NldCggJGdldF9kYXRhWyd0YWInXSApID8gc2FuaXRpemVfa2V5KCAkZ2V0X2RhdGFbJ3RhYiddICkgOiAnc2V0dGluZ3MnOwoJCSRzZWN0aW9uICA9IGlzc2V0KCAkZ2V0X2RhdGFbJ3RhYiddICkgPyBzYW5pdGl6ZV9rZXkoICRnZXRfZGF0YVsndGFiJ10gKSA6ICdzZXR0aW5ncyc7CgoJCSRpbnB1dF9jYWxsYmFja19kZWZhdWx0ICAgPSBhcnJheSggJHRoaXMsICdkaXNwbGF5X2lucHV0X2ZpZWxkJyApOwoJCSRpbnB1dF9jaGVja2JveGVzX2RlZmF1bHQgPSBhcnJheSggJHRoaXMsICdkaXNwbGF5X2NoZWNrYm94ZXMnICk7CgkJJGlucHV0X3NlbGVjdF9kZWZhdWx0ICAgICA9IGFycmF5KCAkdGhpcywgJ2Rpc3BsYXlfc2VsZWN0JyApOwoJCSRsaW5rX2RlZmF1bHQgICAgICAgICAgICAgPSBhcnJheSggJHRoaXMsICdkaXNwbGF5X2xpbmsnICk7CgoJCSRhbGxfZmllbGRfY2FsbGJhY2tzID0gYXJyYXkoCgkJCSd0ZXh0JyAgICAgICA9PiAkaW5wdXRfY2FsbGJhY2tfZGVmYXVsdCwKCQkJJ2NoZWNrYm94ZXMnID0+ICRpbnB1dF9jaGVja2JveGVzX2RlZmF1bHQsCgkJCSdzZWxlY3QnICAgICA9PiAkaW5wdXRfc2VsZWN0X2RlZmF1bHQsCgkJCSdsaW5rJyAgICAgICA9PiAkbGlua19kZWZhdWx0LAoJCSk7CgoJCSR0aGlzLT5maWVsZHNfc2V0dGluZ3MoICdzZXR0aW5ncycsICdzZXR0aW5ncycsICRhbGxfZmllbGRfY2FsbGJhY2tzICk7CgkJJHRoaXMtPmZpZWxkc19maWVsZG1hcHMoICdmaWVsZG1hcHMnLCAnb2JqZWN0cycgKTsKCQkkdGhpcy0+ZmllbGRzX3NjaGVkdWxpbmcoICdzY2hlZHVsZScsICdzY2hlZHVsZScsICRhbGxfZmllbGRfY2FsbGJhY2tzICk7CgkJJHRoaXMtPmZpZWxkc19sb2dfc2V0dGluZ3MoICdsb2dfc2V0dGluZ3MnLCAnbG9nX3NldHRpbmdzJywgJGFsbF9maWVsZF9jYWxsYmFja3MgKTsKCQkkdGhpcy0+ZmllbGRzX2Vycm9ycyggJ21hcHBpbmdfZXJyb3JzJywgJ21hcHBpbmdfZXJyb3JzJywgJGFsbF9maWVsZF9jYWxsYmFja3MgKTsKCX0KCgkvKioKCSAqIEZpZWxkcyBmb3IgdGhlIFNldHRpbmdzIHRhYgoJICogVGhpcyBydW5zIGFkZF9zZXR0aW5nc19zZWN0aW9uIG9uY2UsIGFzIHdlbGwgYXMgYWRkX3NldHRpbmdzX2ZpZWxkIGFuZCByZWdpc3Rlcl9zZXR0aW5nIG1ldGhvZHMgZm9yIGVhY2ggb3B0aW9uCgkgKgoJICogQHBhcmFtIHN0cmluZyAkcGFnZSB3aGF0IHBhZ2Ugd2UncmUgb24uCgkgKiBAcGFyYW0gc3RyaW5nICRzZWN0aW9uIHdoYXQgc2VjdGlvbiBvZiB0aGUgcGFnZS4KCSAqIEBwYXJhbSBhcnJheSAgJGNhbGxiYWNrcyBtZXRob2QgdG8gY2FsbC4KCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBmaWVsZHNfc2V0dGluZ3MoICRwYWdlLCAkc2VjdGlvbiwgJGNhbGxiYWNrcyApIHsKCQlhZGRfc2V0dGluZ3Nfc2VjdGlvbiggJHBhZ2UsIHVjd29yZHMoICRwYWdlICksIG51bGwsICRwYWdlICk7CgkJJHNhbGVzZm9yY2Vfc2V0dGluZ3MgPSBhcnJheSgKCQkJJ2NvbnN1bWVyX2tleScgICAgICAgICAgICAgICAgICAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnQ29uc3VtZXIgS2V5JywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAndGV4dCcsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnc2FuaXRpemVfdmFsaWRhdGVfdGV4dCcsCgkJCQkJJ2Rlc2MnICAgICA9PiAnJywKCQkJCQknY29uc3RhbnQnID0+ICdPQkpFQ1RfU1lOQ19TRl9TQUxFU0ZPUkNFX0NPTlNVTUVSX0tFWScsCgkJCQkpLAoKCQkJKSwKCQkJJ2NvbnN1bWVyX3NlY3JldCcgICAgICAgICAgICAgICAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnQ29uc3VtZXIgU2VjcmV0JywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAndGV4dCcsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnc2FuaXRpemVfdmFsaWRhdGVfdGV4dCcsCgkJCQkJJ2Rlc2MnICAgICA9PiAnJywKCQkJCQknY29uc3RhbnQnID0+ICdPQkpFQ1RfU1lOQ19TRl9TQUxFU0ZPUkNFX0NPTlNVTUVSX1NFQ1JFVCcsCgkJCQkpLAoJCQkpLAoJCQknY2FsbGJhY2tfdXJsJyAgICAgICAgICAgICAgICAgICA9PiBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdDYWxsYmFjayBVUkwnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3RleHQnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICd1cmwnLAoJCQkJCSd2YWxpZGF0ZScgPT4gJ3Nhbml0aXplX3ZhbGlkYXRlX3RleHQnLAoJCQkJCSdkZXNjJyAgICAgPT4gc3ByaW50ZigKCQkJCQkJLy8gdHJhbnNsYXRvcnM6ICUxJHMgaXMgdGhlIGFkbWluIFVSTCBmb3IgdGhlIEF1dGhvcml6ZSB0YWIuCgkJCQkJCV9fKCAnSW4gbW9zdCBjYXNlcywgeW91IHdpbGwgd2FudCB0byB1c2UgJTEkcyBmb3IgdGhpcyB2YWx1ZS4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCWdldF9hZG1pbl91cmwoIG51bGwsICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9JyAuICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gLiAnJnRhYj1hdXRob3JpemUnICkKCQkJCQkpLAoJCQkJCSdjb25zdGFudCcgPT4gJ09CSkVDVF9TWU5DX1NGX1NBTEVTRk9SQ0VfQ0FMTEJBQ0tfVVJMJywKCQkJCSksCgkJCSksCgkJCSdsb2dpbl9iYXNlX3VybCcgICAgICAgICAgICAgICAgID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ0xvZ2luIEJhc2UgVVJMJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAndXJsJywKCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV92YWxpZGF0ZV90ZXh0JywKCQkJCQknZGVzYycgICAgID0+IHNwcmludGYoCgkJCQkJCS8vIHRyYW5zbGF0b3JzOiAxKSBwcm9kdWN0aW9uIHNhbGVzZm9yY2UgbG9naW4sIDIpIHNhbmRib3ggc2FsZXNmb3JjZSBsb2dpbi4KCQkJCQkJX18oICdGb3IgbW9zdCBTYWxlc2ZvcmNlIHNldHVwcywgeW91IHNob3VsZCB1c2UgJTEkcyBmb3IgcHJvZHVjdGlvbiBhbmQgJTIkcyBmb3Igc2FuZGJveC4gSWYgeW91IHRyeSB0byB1c2UgYW4gaW5zdGFuY2UgbmFtZSBhcyB0aGUgVVJMLCB5b3UgbWF5IGVuY291bnRlciBTYWxlc2ZvcmNlIGVycm9ycy4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCWVzY191cmwoICdodHRwczovL2xvZ2luLnNhbGVzZm9yY2UuY29tJyApLAoJCQkJCQllc2NfdXJsKCAnaHR0cHM6Ly90ZXN0LnNhbGVzZm9yY2UuY29tJyApCgkJCQkJKSwKCQkJCQknY29uc3RhbnQnID0+ICdPQkpFQ1RfU1lOQ19TRl9TQUxFU0ZPUkNFX0xPR0lOX0JBU0VfVVJMJywKCQkJCSksCgkJCSksCgkJCSdhdXRob3JpemVfdXJsX3BhdGgnICAgICAgICAgICAgID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ0F1dGhvcml6ZSBVUkwgUGF0aCcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ3RleHQnLAoJCQkJCSd2YWxpZGF0ZScgPT4gJ3Nhbml0aXplX3ZhbGlkYXRlX3RleHQnLAoJCQkJCSdkZXNjJyAgICAgPT4gX18oICdGb3IgbW9zdCBTYWxlc2ZvcmNlIGluc3RhbGxzLCB0aGlzIHNob3VsZCBub3QgYmUgY2hhbmdlZC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2NvbnN0YW50JyA9PiAnT0JKRUNUX1NZTkNfU0ZfU0FMRVNGT1JDRV9BVVRIT1JJWkVfVVJMX1BBVEgnLAoJCQkJCSdkZWZhdWx0JyAgPT4gJHRoaXMtPmRlZmF1bHRfYXV0aG9yaXplX3VybF9wYXRoLAoJCQkJKSwKCQkJKSwKCQkJJ3Rva2VuX3VybF9wYXRoJyAgICAgICAgICAgICAgICAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnVG9rZW4gVVJMIFBhdGgnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3RleHQnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICd0ZXh0JywKCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV92YWxpZGF0ZV90ZXh0JywKCQkJCQknZGVzYycgICAgID0+IF9fKCAnRm9yIG1vc3QgU2FsZXNmb3JjZSBpbnN0YWxscywgdGhpcyBzaG91bGQgbm90IGJlIGNoYW5nZWQuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCSdjb25zdGFudCcgPT4gJ09CSkVDVF9TWU5DX1NGX1NBTEVTRk9SQ0VfVE9LRU5fVVJMX1BBVEgnLAoJCQkJCSdkZWZhdWx0JyAgPT4gJHRoaXMtPmRlZmF1bHRfdG9rZW5fdXJsX3BhdGgsCgkJCQkpLAoJCQkpLAoJCQknb2JqZWN0X2ZpbHRlcnMnICAgICAgICAgICAgICAgICA9PiBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdMaW1pdCBTYWxlc2ZvcmNlIE9iamVjdHMnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ2NoZWNrYm94ZXMnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICdjaGVja2JveGVzJywKCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV92YWxpZGF0ZV90ZXh0JywKCQkJCQknZGVzYycgICAgID0+IF9fKCAnQWxsb3dzIHlvdSB0byBsaW1pdCB3aGljaCBTYWxlc2ZvcmNlIG9iamVjdHMgY2FuIGJlIG1hcHBlZCcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknaXRlbXMnICAgID0+IGFycmF5KAoJCQkJCQkndHJpZ2dlcmFibGUnID0+IGFycmF5KAoJCQkJCQkJJ3RleHQnICAgID0+IF9fKCAnT25seSBUcmlnZ2VyYWJsZSBvYmplY3RzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQkJJ2lkJyAgICAgID0+ICd0cmlnZ2VyYWJsZScsCgkJCQkJCQknZGVzYycgICAgPT4gJycsCgkJCQkJCQknZGVmYXVsdCcgPT4gJHRoaXMtPmRlZmF1bHRfdHJpZ2dlcmFibGUsCgkJCQkJCSksCgkJCQkJCSd1cGRhdGVhYmxlJyAgPT4gYXJyYXkoCgkJCQkJCQkndGV4dCcgICAgPT4gX18oICdPbmx5IFVwZGF0ZWFibGUgb2JqZWN0cycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSdpZCcgICAgICA9PiAndXBkYXRlYWJsZScsCgkJCQkJCQknZGVzYycgICAgPT4gJycsCgkJCQkJCQknZGVmYXVsdCcgPT4gJHRoaXMtPmRlZmF1bHRfdXBkYXRlYWJsZSwKCQkJCQkJKSwKCQkJCQkpLAoJCQkJKSwKCQkJKSwKCQkJJ3NhbGVzZm9yY2VfZmllbGRfZGlzcGxheV92YWx1ZScgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnU2FsZXNmb3JjZSBGaWVsZCBEaXNwbGF5IFZhbHVlJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWydzZWxlY3QnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICdzZWxlY3QnLAoJCQkJCSd2YWxpZGF0ZScgPT4gJ3Nhbml0aXplX3ZhbGlkYXRlX3RleHQnLAoJCQkJCSdkZXNjJyAgICAgPT4gX18oICdXaGVuIGNob29zaW5nIFNhbGVzZm9yY2UgZmllbGRzIHRvIG1hcCwgdGhpcyB2YWx1ZSBkZXRlcm1pbmVzIGhvdyB0aGUgZHJvcGRvd24gd2lsbCBpZGVudGlmeSBTYWxlc2ZvcmNlIGZpZWxkcy4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJCQknaXRlbXMnICAgID0+IGFycmF5KAoJCQkJCQknZmllbGRfbGFiZWwnID0+IGFycmF5KAoJCQkJCQkJJ3RleHQnICA9PiBfXyggJ0ZpZWxkIExhYmVsJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQkJJ3ZhbHVlJyA9PiAnZmllbGRfbGFiZWwnLAoJCQkJCQkpLAoJCQkJCQknYXBpX25hbWUnICAgID0+IGFycmF5KAoJCQkJCQkJJ3RleHQnICA9PiBfXyggJ0FQSSBOYW1lJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQkJJ3ZhbHVlJyA9PiAnYXBpX25hbWUnLAoJCQkJCQkpLAoJCQkJCSksCgkJCQkpLAoJCQkpLAoJCQknZGlzYWJsZV9tYXBwZWRfZmllbGRzJyAgICAgICAgICA9PiBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdQcmV2ZW50IER1cGxpY2F0ZSBGaWVsZCBNYXBwaW5nPycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ2NoZWNrYm94JywKCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV90ZXh0X2ZpZWxkJywKCQkJCQknZGVzYycgICAgID0+IF9fKCAnSWYgY2hlY2tlZCwgYW55IFdvcmRQcmVzcyBvciBTYWxlc2ZvcmNlIGZpZWxkIHRoYXQgaGFzIGFscmVhZHkgYmVlbiBtYXBwZWQsIG9yIHRoYXQgaXMgc2VsZWN0ZWQgd2hpbGUgY3JlYXRpbmcgb3IgZWRpdGluZyBhIGZpZWxkbWFwLCBjYW5ub3QgYmUgbWFwcGVkIGFnYWluLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknY29uc3RhbnQnID0+ICcnLAoJCQkJKSwKCQkJKSwKCQkJJ3B1bGxfcXVlcnlfbGltaXQnICAgICAgICAgICAgICAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnUHVsbCBRdWVyeSBSZWNvcmQgTGltaXQnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3RleHQnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICdudW1iZXInLAoJCQkJCSd2YWxpZGF0ZScgPT4gJ2Fic2ludCcsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ0xpbWl0IHRoZSBudW1iZXIgb2YgcmVjb3JkcyB0aGF0IGNhbiBiZSBwdWxsZWQgZnJvbSBTYWxlc2ZvcmNlIGluIGEgc2luZ2xlIHF1ZXJ5LicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknY29uc3RhbnQnID0+ICcnLAoJCQkJCSdkZWZhdWx0JyAgPT4gJHRoaXMtPmRlZmF1bHRfcHVsbF9saW1pdCwKCQkJCSksCgkJCSksCgkJCSdwdWxsX3Rocm90dGxlJyAgICAgICAgICAgICAgICAgID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ1B1bGwgVGhyb3R0bGUgKEluIFNlY29uZHMpJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnbnVtYmVyJywKCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV92YWxpZGF0ZV90ZXh0JywKCQkJCQknZGVzYycgICAgID0+IF9fKCAnTnVtYmVyIG9mIHNlY29uZHMgdG8gd2FpdCBiZXR3ZWVuIHJlcGVhdGVkIHNhbGVzZm9yY2UgcHVsbHMuIFByZXZlbnRzIHRoZSB3ZWJzZXJ2ZXIgZnJvbSBiZWNvbWluZyBvdmVybG9hZGVkIGluIGNhc2Ugb2YgdG9vIG1hbnkgY3JvbiBydW5zLCBvciB3ZWJob29rIHVzYWdlLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknY29uc3RhbnQnID0+ICcnLAoJCQkJCSdkZWZhdWx0JyAgPT4gJHRoaXMtPmRlZmF1bHRfcHVsbF90aHJvdHRsZSwKCQkJCSksCgkJCSksCgkJKTsKCgkJLy8gb25seSBzaG93IHNvYXAgc2V0dGluZ3MgaWYgdGhlIHNvYXAgZXh0ZW5zaW9uIGlzIGVuYWJsZWQgb24gdGhlIHNlcnZlci4KCQlpZiAoIHRydWUgPT09ICR0aGlzLT5zYWxlc2ZvcmNlWydzb2FwX2F2YWlsYWJsZSddICkgewoJCQkkc2FsZXNmb3JjZV9zZXR0aW5nc1sndXNlX3NvYXAnXSAgICAgICA9IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ0VuYWJsZSB0aGUgU2FsZXNmb3JjZSBTT0FQIEFQST8nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3RleHQnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2NsYXNzJyAgICA9PiAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UtZW5hYmxlLXNvYXAnLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICdjaGVja2JveCcsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnc2FuaXRpemVfdGV4dF9maWVsZCcsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ0NoZWNrIHRoaXMgdG8gZW5hYmxlIHRoZSBTT0FQIEFQSSBhbmQgdXNlIGl0IGluc3RlYWQgb2YgdGhlIFJFU1QgQVBJIHdoZW4gdGhlIHBsdWdpbiBzdXBwb3J0cyBpdC4gaHR0cHM6Ly9kZXZlbG9wZXIuc2FsZXNmb3JjZS5jb20vYmxvZ3MvdGVjaC1wdWJzLzIwMTEvMTAvc2FsZXNmb3JjZS1hcGlzLXdoYXQtdGhleS1hcmUtd2hlbi10by11c2UtdGhlbS5odG1sIHRvIGNvbXBhcmUgdGhlIHR3by4gTm90ZTogaWYgeW91IG5lZWQgdG8gZGV0ZWN0IFNhbGVzZm9yY2UgbWVyZ2VzIGluIHRoaXMgcGx1Z2luLCB5b3Ugd2lsbCBuZWVkIHRvIGVuYWJsZSBTT0FQLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknY29uc3RhbnQnID0+ICcnLAoJCQkJKSwKCQkJKTsKCQkJJHNhbGVzZm9yY2Vfc2V0dGluZ3NbJ3NvYXBfd3NkbF9wYXRoJ10gPSBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdQYXRoIHRvIFNPQVAgV1NETCBGaWxlJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdjbGFzcycgICAgPT4gJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlLXNvYXAtd3NkbC1wYXRoJywKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAndGV4dCcsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnc2FuaXRpemVfdGV4dF9maWVsZCcsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ09wdGlvbmFsbHkgYWRkIGEgcGF0aCB0byB5b3VyIG93biBXU0RMIGZpbGUuIElmIHlvdSBkbyBub3QsIHRoZSBwbHVnaW4gd2lsbCB1c2UgdGhlIGRlZmF1bHQgcGFydG5lci53c2RsLnhtbCBmcm9tIHRoZSBGb3JjZS5jb20gdG9vbGtpdC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJCSksCgkJCSk7CgkJfQoKCQkkc2FsZXNmb3JjZV9zZXR0aW5nc1snZGVidWdfbW9kZSddICAgICAgICAgICAgICAgPSBhcnJheSgKCQkJJ3RpdGxlJyAgICA9PiBfXyggJ0RlYnVnIE1vZGU/JywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3RleHQnXSwKCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCSd0eXBlJyAgICAgPT4gJ2NoZWNrYm94JywKCQkJCSd2YWxpZGF0ZScgPT4gJ3Nhbml0aXplX3RleHRfZmllbGQnLAoJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ0RlYnVnIG1vZGUgYWN0aXZhdGVzIGxvZ2dpbmcgZm9yIHBsdWdpbiBldmVudHMgbGlrZSBTYWxlc2ZvcmNlIEFQSSByZXF1ZXN0cyBhbmQgV29yZFByZXNzIGRhdGEgb3BlcmF0aW9ucy4gVGhpcyBjYW4gY3JlYXRlIGEgbG90IG9mIGxvZyBlbnRyaWVzOyBpdCBpcyBub3QgcmVjb21tZW5kZWQgdG8gdXNlIGl0IGxvbmctdGVybSBpbiBhIHByb2R1Y3Rpb24gZW52aXJvbm1lbnQuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJKSwKCQkpOwoJCSRzYWxlc2ZvcmNlX3NldHRpbmdzWydkZWxldGVfZGF0YV9vbl91bmluc3RhbGwnXSA9IGFycmF5KAoJCQkndGl0bGUnICAgID0+IF9fKCAnRGVsZXRlIFBsdWdpbiBEYXRhIG9uIFVuaW5zdGFsbD8nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJJ3R5cGUnICAgICA9PiAnY2hlY2tib3gnLAoJCQkJJ3ZhbGlkYXRlJyA9PiAnc2FuaXRpemVfdGV4dF9maWVsZCcsCgkJCQknZGVzYycgICAgID0+IF9fKCAnSWYgY2hlY2tlZCwgdGhlIHBsdWdpbiB3aWxsIGRlbGV0ZSB0aGUgdGFibGVzIGFuZCBvdGhlciBkYXRhIGl0IGNyZWF0ZXMgd2hlbiB5b3UgdW5pbnN0YWxsIGl0LiBVbmNoZWNraW5nIHRoaXMgZmllbGQgY2FuIGJlIHVzZWZ1bCBpZiB5b3UgbmVlZCB0byByZWFjdGl2YXRlIHRoZSBwbHVnaW4gZm9yIGFueSByZWFzb24gd2l0aG91dCBsb3NpbmcgZGF0YS4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY29uc3RhbnQnID0+ICcnLAoJCQkpLAoJCSk7CgoJCWZvcmVhY2ggKCAkc2FsZXNmb3JjZV9zZXR0aW5ncyBhcyAka2V5ID0+ICRhdHRyaWJ1dGVzICkgewoJCQkkaWQgICAgICAgPSAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICRrZXk7CgkJCSRuYW1lICAgICA9ICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJGtleTsKCQkJJHRpdGxlICAgID0gJGF0dHJpYnV0ZXNbJ3RpdGxlJ107CgkJCSRjYWxsYmFjayA9ICRhdHRyaWJ1dGVzWydjYWxsYmFjayddOwoJCQkkdmFsaWRhdGUgPSAkYXR0cmlidXRlc1snYXJncyddWyd2YWxpZGF0ZSddOwoJCQkkcGFnZSAgICAgPSAkYXR0cmlidXRlc1sncGFnZSddOwoJCQkkc2VjdGlvbiAgPSAkYXR0cmlidXRlc1snc2VjdGlvbiddOwoJCQkkY2xhc3MgICAgPSBpc3NldCggJGF0dHJpYnV0ZXNbJ2NsYXNzJ10gKSA/ICRhdHRyaWJ1dGVzWydjbGFzcyddIDogJyc7CgkJCSRhcmdzICAgICA9IGFycmF5X21lcmdlKAoJCQkJJGF0dHJpYnV0ZXNbJ2FyZ3MnXSwKCQkJCWFycmF5KAoJCQkJCSd0aXRsZScgICAgID0+ICR0aXRsZSwKCQkJCQknaWQnICAgICAgICA9PiAkaWQsCgkJCQkJJ2xhYmVsX2ZvcicgPT4gJGlkLAoJCQkJCSduYW1lJyAgICAgID0+ICRuYW1lLAoJCQkJCSdjbGFzcycgICAgID0+ICRjbGFzcywKCQkJCSkKCQkJKTsKCgkJCS8vIGlmIHRoZXJlIGlzIGEgY29uc3RhbnQgYW5kIGl0IGlzIGRlZmluZWQsIGRvbid0IHJ1biBhIHZhbGlkYXRlIGZ1bmN0aW9uLgoJCQlpZiAoIGlzc2V0KCAkYXR0cmlidXRlc1snYXJncyddWydjb25zdGFudCddICkgJiYgZGVmaW5lZCggJGF0dHJpYnV0ZXNbJ2FyZ3MnXVsnY29uc3RhbnQnXSApICkgewoJCQkJJHZhbGlkYXRlID0gJyc7CgkJCX0KCgkJCWFkZF9zZXR0aW5nc19maWVsZCggJGlkLCAkdGl0bGUsICRjYWxsYmFjaywgJHBhZ2UsICRzZWN0aW9uLCAkYXJncyApOwoJCQlyZWdpc3Rlcl9zZXR0aW5nKCAkcGFnZSwgJGlkLCBhcnJheSggJHRoaXMsICR2YWxpZGF0ZSApICk7CgkJfQoJfQoKCS8qKgoJICogRmllbGRzIGZvciB0aGUgRmllbGRtYXBzIHRhYgoJICogVGhpcyBydW5zIGFkZF9zZXR0aW5nc19zZWN0aW9uIG9uY2UsIGFzIHdlbGwgYXMgYWRkX3NldHRpbmdzX2ZpZWxkIGFuZCByZWdpc3Rlcl9zZXR0aW5nIG1ldGhvZHMgZm9yIGVhY2ggb3B0aW9uCgkgKgoJICogQHBhcmFtIHN0cmluZyAkcGFnZSB3aGF0IHBhZ2Ugd2UncmUgb24uCgkgKiBAcGFyYW0gc3RyaW5nICRzZWN0aW9uIHdoYXQgc2VjdGlvbiBvZiB0aGUgcGFnZS4KCSAqIEBwYXJhbSBzdHJpbmcgJGlucHV0X2NhbGxiYWNrIG1ldGhvZCB0byBjYWxsLgoJICovCglwcml2YXRlIGZ1bmN0aW9uIGZpZWxkc19maWVsZG1hcHMoICRwYWdlLCAkc2VjdGlvbiwgJGlucHV0X2NhbGxiYWNrID0gJycgKSB7CgkJYWRkX3NldHRpbmdzX3NlY3Rpb24oICRwYWdlLCB1Y3dvcmRzKCAkcGFnZSApLCBudWxsLCAkcGFnZSApOwoJfQoKCS8qKgoJICogRmllbGRzIGZvciB0aGUgU2NoZWR1bGluZyB0YWIKCSAqIFRoaXMgcnVucyBhZGRfc2V0dGluZ3Nfc2VjdGlvbiBvbmNlLCBhcyB3ZWxsIGFzIGFkZF9zZXR0aW5nc19maWVsZCBhbmQgcmVnaXN0ZXJfc2V0dGluZyBtZXRob2RzIGZvciBlYWNoIG9wdGlvbgoJICoKCSAqIEBwYXJhbSBzdHJpbmcgJHBhZ2Ugd2hhdCBwYWdlIHdlJ3JlIG9uLgoJICogQHBhcmFtIHN0cmluZyAkc2VjdGlvbiB3aGF0IHNlY3Rpb24gb2YgdGhlIHBhZ2UuCgkgKiBAcGFyYW0gYXJyYXkgICRjYWxsYmFja3MgbWV0aG9kIHRvIGNhbGwuCgkgKi8KCXByaXZhdGUgZnVuY3Rpb24gZmllbGRzX3NjaGVkdWxpbmcoICRwYWdlLCAkc2VjdGlvbiwgJGNhbGxiYWNrcyApIHsKCgkJYWRkX3NldHRpbmdzX3NlY3Rpb24oICdiYXRjaCcsIF9fKCAnQmF0Y2ggU2V0dGluZ3MnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksIG51bGwsICRwYWdlICk7CgkJJHNlY3Rpb24gICAgICAgICAgID0gJ2JhdGNoJzsKCQkkc2NoZWR1bGVfc2V0dGluZ3MgPSBhcnJheSgKCQkJJ2FjdGlvbl9zY2hlZHVsZXJfYmF0Y2hfc2l6ZScgICAgICAgICA9PiBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdCYXRjaCBTaXplJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnbnVtYmVyJywKCQkJCQkndmFsaWRhdGUnID0+ICdhYnNpbnQnLAoJCQkJCSdkZWZhdWx0JyAgPT4gNSwKCQkJCQknZGVzYycgICAgID0+IF9fKCAnU2V0IGhvdyBtYW55IGFjdGlvbnMgKGNoZWNraW5nIGZvciBkYXRhIGNoYW5nZXMsIHN5bmNpbmcgYSByZWNvcmQsIGV0Yy4gYWxsIGNvdW50IGFzIGluZGl2aWR1YWwgYWN0aW9ucykgY2FuIGJlIHJ1biBpbiBhIGJhdGNoLiBTdGFydCB3aXRoIGEgbG93IG51bWJlciBoZXJlLCBsaWtlIDUsIGlmIHlvdSBhcmUgdW5zdXJlLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknY29uc3RhbnQnID0+ICcnLAoJCQkJKSwKCgkJCSksCgkJCSdhY3Rpb25fc2NoZWR1bGVyX2NvbmN1cnJlbnRfYmF0Y2hlcycgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnQ29uY3VycmVudCBCYXRjaGVzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnbnVtYmVyJywKCQkJCQkndmFsaWRhdGUnID0+ICdhYnNpbnQnLAoJCQkJCSdkZWZhdWx0JyAgPT4gMywKCQkJCQknZGVzYycgICAgID0+IF9fKCAnU2V0IGhvdyBtYW55IGJhdGNoZXMgb2YgYWN0aW9ucyBjYW4gYmUgcnVuIGF0IG9uY2UuIFN0YXJ0IHdpdGggYSBsb3cgbnVtYmVyIGhlcmUsIGxpa2UgMywgaWYgeW91IGFyZSB1bnN1cmUuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCSdjb25zdGFudCcgPT4gJycsCgkJCQkpLAoJCQkpLAoJCSk7CgoJCWZvcmVhY2ggKCAkdGhpcy0+c2NoZWR1bGFibGVfY2xhc3NlcyBhcyAka2V5ID0+ICR2YWx1ZSApIHsKCQkJYWRkX3NldHRpbmdzX3NlY3Rpb24oICRrZXksICR2YWx1ZVsnbGFiZWwnXSwgbnVsbCwgJHBhZ2UgKTsKCQkJaWYgKCBpc3NldCggJHZhbHVlWydpbml0aWFsaXplciddICkgKSB7CgkJCQkkc2NoZWR1bGVfc2V0dGluZ3NbICRrZXkgLiAnX3NjaGVkdWxlX251bWJlcicgXSA9IGFycmF5KAoJCQkJCSd0aXRsZScgICAgPT4gX18oICdSdW4gU2NoZWR1bGUgRXZlcnknLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCQknc2VjdGlvbicgID0+ICRrZXksCgkJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkJJ3R5cGUnICAgICA9PiAnbnVtYmVyJywKCQkJCQkJJ3ZhbGlkYXRlJyA9PiAnYWJzaW50JywKCQkJCQkJJ2Rlc2MnICAgICA9PiAnJywKCQkJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJCQkpLAoJCQkJKTsKCQkJCSRzY2hlZHVsZV9zZXR0aW5nc1sgJGtleSAuICdfc2NoZWR1bGVfdW5pdCcgXSAgID0gYXJyYXkoCgkJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ1RpbWUgVW5pdCcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3NlbGVjdCddLAoJCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQkJJ3NlY3Rpb24nICA9PiAka2V5LAoJCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJCSd0eXBlJyAgICAgPT4gJ3NlbGVjdCcsCgkJCQkJCSd2YWxpZGF0ZScgPT4gJ3Nhbml0aXplX3ZhbGlkYXRlX3RleHQnLAoJCQkJCQknZGVzYycgICAgID0+ICcnLAoJCQkJCQknaXRlbXMnICAgID0+IGFycmF5KAoJCQkJCQkJJ21pbnV0ZXMnID0+IGFycmF5KAoJCQkJCQkJCSd0ZXh0JyAgPT4gX18oICdNaW51dGVzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQkJCSd2YWx1ZScgPT4gJ21pbnV0ZXMnLAoJCQkJCQkJKSwKCQkJCQkJCSdob3VycycgICA9PiBhcnJheSgKCQkJCQkJCQkndGV4dCcgID0+IF9fKCAnSG91cnMnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQkJJ3ZhbHVlJyA9PiAnaG91cnMnLAoJCQkJCQkJKSwKCQkJCQkJCSdkYXlzJyAgICA9PiBhcnJheSgKCQkJCQkJCQkndGV4dCcgID0+IF9fKCAnRGF5cycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCQkndmFsdWUnID0+ICdkYXlzJywKCQkJCQkJCSksCgkJCQkJCSksCgkJCQkJKSwKCQkJCSk7CgkJCX0KCQkJJHNjaGVkdWxlX3NldHRpbmdzWyAka2V5IC4gJ19jbGVhcl9idXR0b24nIF0gPSBhcnJheSgKCQkJCS8vIHRyYW5zbGF0b3JzOiAkdGhpcy0+Z2V0X3NjaGVkdWxlX2NvdW50IGlzIGFuIGludGVnZXIgc2hvd2luZyBob3cgbWFueSBpdGVtcyBhcmUgaW4gdGhlIGN1cnJlbnQgcXVldWUuCgkJCQkndGl0bGUnICAgID0+IHNwcmludGYoICdUaGlzIFF1ZXVlIEhhcyAnIC4gX24oICclcyBJdGVtJywgJyVzIEl0ZW1zJywgJHRoaXMtPmdldF9zY2hlZHVsZV9jb3VudCggJGtleSApLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksICR0aGlzLT5nZXRfc2NoZWR1bGVfY291bnQoICRrZXkgKSApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWydsaW5rJ10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAka2V5LAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQknbGFiZWwnICAgICAgPT4gX18oICdDbGVhciB0aGlzIHF1ZXVlJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCSdkZXNjJyAgICAgICA9PiAnJywKCQkJCQkndXJsJyAgICAgICAgPT4gZXNjX3VybCggJz9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZhbXA7dGFiPWNsZWFyX3NjaGVkdWxlJmFtcDtzY2hlZHVsZV9uYW1lPScgLiAka2V5ICksCgkJCQkJJ2xpbmtfY2xhc3MnID0+ICdidXR0b24gYnV0dG9uLXNlY29uZGFyeScsCgkJCQkpLAoJCQkpOwoJCQlmb3JlYWNoICggJHNjaGVkdWxlX3NldHRpbmdzIGFzICRrZXkgPT4gJGF0dHJpYnV0ZXMgKSB7CgkJCQkkaWQgICAgICAgPSAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICRrZXk7CgkJCQkkbmFtZSAgICAgPSAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICRrZXk7CgkJCQkkdGl0bGUgICAgPSAkYXR0cmlidXRlc1sndGl0bGUnXTsKCQkJCSRjYWxsYmFjayA9ICRhdHRyaWJ1dGVzWydjYWxsYmFjayddOwoJCQkJJHBhZ2UgICAgID0gJGF0dHJpYnV0ZXNbJ3BhZ2UnXTsKCQkJCSRzZWN0aW9uICA9ICRhdHRyaWJ1dGVzWydzZWN0aW9uJ107CgkJCQkkYXJncyAgICAgPSBhcnJheV9tZXJnZSgKCQkJCQkkYXR0cmlidXRlc1snYXJncyddLAoJCQkJCWFycmF5KAoJCQkJCQkndGl0bGUnICAgICA9PiAkdGl0bGUsCgkJCQkJCSdpZCcgICAgICAgID0+ICRpZCwKCQkJCQkJJ2xhYmVsX2ZvcicgPT4gJGlkLAoJCQkJCQknbmFtZScgICAgICA9PiAkbmFtZSwKCQkJCQkpCgkJCQkpOwoJCQkJYWRkX3NldHRpbmdzX2ZpZWxkKCAkaWQsICR0aXRsZSwgJGNhbGxiYWNrLCAkcGFnZSwgJHNlY3Rpb24sICRhcmdzICk7CgkJCQlyZWdpc3Rlcl9zZXR0aW5nKCAkcGFnZSwgJGlkICk7CgkJCX0KCQl9IC8vIEVuZCBmb3JlYWNoIHN0YXRlbWVudC4KCX0KCgkvKioKCSAqIEZpZWxkcyBmb3IgdGhlIExvZyBTZXR0aW5ncyB0YWIKCSAqIFRoaXMgcnVucyBhZGRfc2V0dGluZ3Nfc2VjdGlvbiBvbmNlLCBhcyB3ZWxsIGFzIGFkZF9zZXR0aW5nc19maWVsZCBhbmQgcmVnaXN0ZXJfc2V0dGluZyBtZXRob2RzIGZvciBlYWNoIG9wdGlvbgoJICoKCSAqIEBwYXJhbSBzdHJpbmcgJHBhZ2Ugd2hhdCBwYWdlIHdlJ3JlIG9uLgoJICogQHBhcmFtIHN0cmluZyAkc2VjdGlvbiB3aGF0IHNlY3Rpb24gb2YgdGhlIHBhZ2UuCgkgKiBAcGFyYW0gYXJyYXkgICRjYWxsYmFja3MgbWV0aG9kIHRvIGNhbGwuCgkgKi8KCXByaXZhdGUgZnVuY3Rpb24gZmllbGRzX2xvZ19zZXR0aW5ncyggJHBhZ2UsICRzZWN0aW9uLCAkY2FsbGJhY2tzICkgewoJCWFkZF9zZXR0aW5nc19zZWN0aW9uKCAkcGFnZSwgdWN3b3Jkcyggc3RyX3JlcGxhY2UoICdfJywgJyAnLCAkcGFnZSApICksIG51bGwsICRwYWdlICk7CgkJJGxvZ19zZXR0aW5ncyA9IGFycmF5KAoJCQknZW5hYmxlX2xvZ2dpbmcnICAgICAgICA9PiBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdFbmFibGUgTG9nZ2luZz8nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3RleHQnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICdjaGVja2JveCcsCgkJCQkJJ3ZhbGlkYXRlJyA9PiAnYWJzaW50JywKCQkJCQknZGVzYycgICAgID0+IF9fKCAnVGhpcyBkZXRlcm1pbmVzIHdoZXRoZXIgdG8gY3JlYXRlIHBsdWdpbiBsb2cgZXZlbnRzIGluIHN0YW5kYXJkIG9wZXJhdGlvbi4gSWYgRGVidWcgTW9kZSBpcyBlbmFibGVkIGluIHRoZSBwbHVnaW4gc2V0dGluZ3MsIGxvZ2dpbmcgd2lsbCBvY2N1ciByZWdhcmRsZXNzIG9mIHRoaXMgc2V0dGluZy4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJCSksCgkJCSksCgkJCSdzdGF0dXNlc190b19sb2cnICAgICAgID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ1N0YXR1c2VzIHRvIExvZycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1snY2hlY2tib3hlcyddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ2NoZWNrYm94ZXMnLAoJCQkJCSd2YWxpZGF0ZScgPT4gJ3Nhbml0aXplX3ZhbGlkYXRlX3RleHQnLAoJCQkJCSdkZXNjJyAgICAgPT4gJycsCgkJCQkJJ2l0ZW1zJyAgICA9PiBhcnJheSgKCQkJCQkJJ2Vycm9yJyAgID0+IGFycmF5KAoJCQkJCQkJJ3RleHQnID0+IF9fKCAnRXJyb3InLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQknaWQnICAgPT4gJ2Vycm9yJywKCQkJCQkJCSdkZXNjJyA9PiAnJywKCQkJCQkJKSwKCQkJCQkJJ3N1Y2Nlc3MnID0+IGFycmF5KAoJCQkJCQkJJ3RleHQnID0+IF9fKCAnU3VjY2VzcycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSdpZCcgICA9PiAnc3VjY2VzcycsCgkJCQkJCQknZGVzYycgPT4gJycsCgkJCQkJCSksCgkJCQkJCSdub3RpY2UnICA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyA9PiBfXyggJ05vdGljZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSdpZCcgICA9PiAnbm90aWNlJywKCQkJCQkJCSdkZXNjJyA9PiAnJywKCQkJCQkJKSwKCQkJCQkpLAoJCQkJKSwKCQkJKSwKCQkJJ3BydW5lX2xvZ3MnICAgICAgICAgICAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnQXV0b21hdGljYWxseSBEZWxldGUgT2xkIExvZyBFbnRyaWVzPycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSdjYWxsYmFjaycgPT4gJGNhbGxiYWNrc1sndGV4dCddLAoJCQkJJ3BhZ2UnICAgICA9PiAkcGFnZSwKCQkJCSdzZWN0aW9uJyAgPT4gJHNlY3Rpb24sCgkJCQknYXJncycgICAgID0+IGFycmF5KAoJCQkJCSd0eXBlJyAgICAgPT4gJ2NoZWNrYm94JywKCQkJCQkndmFsaWRhdGUnID0+ICdhYnNpbnQnLAoJCQkJCSdkZXNjJyAgICAgPT4gJycsCgkJCQkJJ2NvbnN0YW50JyA9PiAnJywKCQkJCSksCgkJCSksCgkJCSdsb2dzX2hvd19vbGQnICAgICAgICAgID0+IGFycmF5KAoJCQkJJ3RpdGxlJyAgICA9PiBfXyggJ0FnZSB0byBEZWxldGUgTG9nIEVudHJpZXMnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3RleHQnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICd0ZXh0JywKCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV92YWxpZGF0ZV90ZXh0JywKCQkJCQknZGVzYycgICAgID0+IF9fKCAnSWYgYXV0b21hdGljIGRlbGV0aW5nIGlzIGVuYWJsZWQsIGl0IHdpbGwgYWZmZWN0IGxvZ3MgdGhpcyBvbGQuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCSdkZWZhdWx0JyAgPT4gJzIgd2Vla3MnLAoJCQkJCSdjb25zdGFudCcgPT4gJycsCgkJCQkpLAoJCQkpLAoJCQknbG9nc19ob3dfb2Z0ZW5fbnVtYmVyJyA9PiBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdDaGVjayBGb3IgT2xkIExvZ3MgRXZlcnknLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ3RleHQnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICdudW1iZXInLAoJCQkJCSd2YWxpZGF0ZScgPT4gJ2Fic2ludCcsCgkJCQkJJ2Rlc2MnICAgICA9PiAnJywKCQkJCQknZGVmYXVsdCcgID0+ICcxJywKCQkJCQknY29uc3RhbnQnID0+ICcnLAoJCQkJKSwKCQkJKSwKCQkJJ2xvZ3NfaG93X29mdGVuX3VuaXQnICAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnVGltZSBVbml0JywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWydzZWxlY3QnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICdzZWxlY3QnLAoJCQkJCSd2YWxpZGF0ZScgPT4gJ3Nhbml0aXplX3ZhbGlkYXRlX3RleHQnLAoJCQkJCSdkZXNjJyAgICAgPT4gX18oICdUaGVzZSB0d28gZmllbGRzIGFyZSBob3cgb2Z0ZW4gdGhlIHNpdGUgd2lsbCBjaGVjayBmb3IgbG9ncyB0byBkZWxldGUuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCSdpdGVtcycgICAgPT4gYXJyYXkoCgkJCQkJCSdtaW51dGVzJyA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyAgPT4gX18oICdNaW51dGVzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQkJJ3ZhbHVlJyA9PiAnbWludXRlcycsCgkJCQkJCSksCgkJCQkJCSdob3VycycgICA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyAgPT4gX18oICdIb3VycycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSd2YWx1ZScgPT4gJ2hvdXJzJywKCQkJCQkJKSwKCQkJCQkJJ2RheXMnICAgID0+IGFycmF5KAoJCQkJCQkJJ3RleHQnICA9PiBfXyggJ0RheXMnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQkndmFsdWUnID0+ICdkYXlzJywKCQkJCQkJKSwKCQkJCQkpLAoJCQkJKSwKCQkJKSwKCQkJJ2xvZ3NfaG93X21hbnlfbnVtYmVyJyAgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnQ2xlYXIgVGhpcyBNYW55IExvZyBFbnRyaWVzJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnbnVtYmVyJywKCQkJCQkndmFsaWRhdGUnID0+ICdhYnNpbnQnLAoJCQkJCSdkZXNjJyAgICAgPT4gX18oICdUaGlzIG51bWJlciBpcyBob3cgbWFueSBsb2cgZW50cmllcyB0aGUgcGx1Z2luIHdpbGwgdHJ5IHRvIGNsZWFyIGF0IGEgdGltZS4gSWYgeW91IGRvIG5vdCBlbnRlciBhIG51bWJlciwgdGhlIGRlZmF1bHQgaXMgMTAwLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQknZGVmYXVsdCcgID0+ICcxMDAnLAoJCQkJCSdjb25zdGFudCcgPT4gJycsCgkJCQkpLAoJCQkpLAoJCQkndHJpZ2dlcnNfdG9fbG9nJyAgICAgICA9PiBhcnJheSgKCQkJCSd0aXRsZScgICAgPT4gX18oICdUcmlnZ2VycyB0byBMb2cnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQknY2FsbGJhY2snID0+ICRjYWxsYmFja3NbJ2NoZWNrYm94ZXMnXSwKCQkJCSdwYWdlJyAgICAgPT4gJHBhZ2UsCgkJCQknc2VjdGlvbicgID0+ICRzZWN0aW9uLAoJCQkJJ2FyZ3MnICAgICA9PiBhcnJheSgKCQkJCQkndHlwZScgICAgID0+ICdjaGVja2JveGVzJywKCQkJCQkndmFsaWRhdGUnID0+ICdzYW5pdGl6ZV92YWxpZGF0ZV90ZXh0JywKCQkJCQknZGVzYycgICAgID0+IF9fKCAnVGhlc2UgYXJlIHRoZSB0cmlnZ2VycyB0byBsb2cuIFdoZW4gdGhlIHBsdWdpbiBpcyBpbiBkZWJ1ZyBtb2RlIChzZWUgdGhlIHNldHRpbmdzIHRhYiksIGFsbCB0cmlnZ2VycyB3aWxsIGJlIGNvbnNpZGVyZWQgdG8gYmUgdHJpZ2dlcnMgdG8gbG9nLCBldmVuIGlmIHRoZXkgYXJlIG5vdCBjaGVja2VkIGhlcmUuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCSdpdGVtcycgICAgPT4gYXJyYXkoCgkJCQkJCSR0aGlzLT5tYXBwaW5ncy0+c3luY193b3JkcHJlc3NfY3JlYXRlID0+IGFycmF5KAoJCQkJCQkJJ3RleHQnID0+IF9fKCAnV29yZFByZXNzIENyZWF0ZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSdpZCcgICA9PiAnd29yZHByZXNzX2NyZWF0ZScsCgkJCQkJCQknZGVzYycgPT4gJycsCgkJCQkJCSksCgkJCQkJCSR0aGlzLT5tYXBwaW5ncy0+c3luY193b3JkcHJlc3NfdXBkYXRlID0+IGFycmF5KAoJCQkJCQkJJ3RleHQnID0+IF9fKCAnV29yZFByZXNzIFVwZGF0ZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSdpZCcgICA9PiAnd29yZHByZXNzX3VwZGF0ZScsCgkJCQkJCQknZGVzYycgPT4gJycsCgkJCQkJCSksCgkJCQkJCSR0aGlzLT5tYXBwaW5ncy0+c3luY193b3JkcHJlc3NfZGVsZXRlID0+IGFycmF5KAoJCQkJCQkJJ3RleHQnID0+IF9fKCAnV29yZFByZXNzIERlbGV0ZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSdpZCcgICA9PiAnd29yZHByZXNzX2RlbGV0ZScsCgkJCQkJCQknZGVzYycgPT4gJycsCgkJCQkJCSksCgkJCQkJCSR0aGlzLT5tYXBwaW5ncy0+c3luY19zZl9jcmVhdGUgPT4gYXJyYXkoCgkJCQkJCQkndGV4dCcgPT4gX18oICdTYWxlc2ZvcmNlIENyZWF0ZScsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQkJCSdpZCcgICA9PiAnc2ZfY3JlYXRlJywKCQkJCQkJCSdkZXNjJyA9PiAnJywKCQkJCQkJKSwKCQkJCQkJJHRoaXMtPm1hcHBpbmdzLT5zeW5jX3NmX3VwZGF0ZSA9PiBhcnJheSgKCQkJCQkJCSd0ZXh0JyA9PiBfXyggJ1NhbGVzZm9yY2UgVXBkYXRlJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCQkJJ2lkJyAgID0+ICdzZl91cGRhdGUnLAoJCQkJCQkJJ2Rlc2MnID0+ICcnLAoJCQkJCQkpLAoJCQkJCQkkdGhpcy0+bWFwcGluZ3MtPnN5bmNfc2ZfZGVsZXRlID0+IGFycmF5KAoJCQkJCQkJJ3RleHQnID0+IF9fKCAnU2FsZXNmb3JjZSBEZWxldGUnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJCQknaWQnICAgPT4gJ3NmX2RlbGV0ZScsCgkJCQkJCQknZGVzYycgPT4gJycsCgkJCQkJCSksCgkJCQkJKSwKCQkJCSksCgkJCSksCgkJKTsKCQlmb3JlYWNoICggJGxvZ19zZXR0aW5ncyBhcyAka2V5ID0+ICRhdHRyaWJ1dGVzICkgewoJCQkkaWQgICAgICAgPSAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICRrZXk7CgkJCSRuYW1lICAgICA9ICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJGtleTsKCQkJJHRpdGxlICAgID0gJGF0dHJpYnV0ZXNbJ3RpdGxlJ107CgkJCSRjYWxsYmFjayA9ICRhdHRyaWJ1dGVzWydjYWxsYmFjayddOwoJCQkkcGFnZSAgICAgPSAkYXR0cmlidXRlc1sncGFnZSddOwoJCQkkc2VjdGlvbiAgPSAkYXR0cmlidXRlc1snc2VjdGlvbiddOwoJCQkkYXJncyAgICAgPSBhcnJheV9tZXJnZSgKCQkJCSRhdHRyaWJ1dGVzWydhcmdzJ10sCgkJCQlhcnJheSgKCQkJCQkndGl0bGUnICAgICA9PiAkdGl0bGUsCgkJCQkJJ2lkJyAgICAgICAgPT4gJGlkLAoJCQkJCSdsYWJlbF9mb3InID0+ICRpZCwKCQkJCQknbmFtZScgICAgICA9PiAkbmFtZSwKCQkJCSkKCQkJKTsKCQkJYWRkX3NldHRpbmdzX2ZpZWxkKCAkaWQsICR0aXRsZSwgJGNhbGxiYWNrLCAkcGFnZSwgJHNlY3Rpb24sICRhcmdzICk7CgkJCXJlZ2lzdGVyX3NldHRpbmcoICRwYWdlLCAkaWQgKTsKCQl9Cgl9CgoJLyoqCgkgKiBGaWVsZHMgZm9yIHRoZSBNYXBwaW5nIEVycm9ycyB0YWIKCSAqIFRoaXMgcnVucyBhZGRfc2V0dGluZ3Nfc2VjdGlvbiBvbmNlLCBhcyB3ZWxsIGFzIGFkZF9zZXR0aW5nc19maWVsZCBhbmQgcmVnaXN0ZXJfc2V0dGluZyBtZXRob2RzIGZvciBlYWNoIG9wdGlvbgoJICoKCSAqIEBwYXJhbSBzdHJpbmcgJHBhZ2Ugd2hhdCBwYWdlIHdlJ3JlIG9uLgoJICogQHBhcmFtIHN0cmluZyAkc2VjdGlvbiB3aGF0IHNlY3Rpb24gb2YgdGhlIHBhZ2UuCgkgKiBAcGFyYW0gYXJyYXkgICRjYWxsYmFja3MgbWV0aG9kIHRvIGNhbGwuCgkgKi8KCXByaXZhdGUgZnVuY3Rpb24gZmllbGRzX2Vycm9ycyggJHBhZ2UsICRzZWN0aW9uLCAkY2FsbGJhY2tzICkgewoKCQlhZGRfc2V0dGluZ3Nfc2VjdGlvbiggJHNlY3Rpb24sIF9fKCAnTWFwcGluZyBFcnJvciBTZXR0aW5ncycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwgbnVsbCwgJHBhZ2UgKTsKCQkkZXJyb3Jfc2V0dGluZ3MgPSBhcnJheSgKCQkJJ2Vycm9yc19wZXJfcGFnZScgPT4gYXJyYXkoCgkJCQkndGl0bGUnICAgID0+IF9fKCAnRXJyb3JzIHBlciBwYWdlJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ2NhbGxiYWNrJyA9PiAkY2FsbGJhY2tzWyd0ZXh0J10sCgkJCQkncGFnZScgICAgID0+ICRwYWdlLAoJCQkJJ3NlY3Rpb24nICA9PiAkc2VjdGlvbiwKCQkJCSdhcmdzJyAgICAgPT4gYXJyYXkoCgkJCQkJJ3R5cGUnICAgICA9PiAnbnVtYmVyJywKCQkJCQkndmFsaWRhdGUnID0+ICdhYnNpbnQnLAoJCQkJCSdkZWZhdWx0JyAgPT4gNTAsCgkJCQkJJ2Rlc2MnICAgICA9PiBfXyggJ1NldCBob3cgbWFueSBtYXBwaW5nIGVycm9ycyB0byBzaG93IG9uIGEgc2luZ2xlIHBhZ2UuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJCSdjb25zdGFudCcgPT4gJycsCgkJCQkpLAoJCQkpLAoJCSk7CgoJCWZvcmVhY2ggKCAkZXJyb3Jfc2V0dGluZ3MgYXMgJGtleSA9PiAkYXR0cmlidXRlcyApIHsKCQkJJGlkICAgICAgID0gJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAka2V5OwoJCQkkbmFtZSAgICAgPSAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICRrZXk7CgkJCSR0aXRsZSAgICA9ICRhdHRyaWJ1dGVzWyd0aXRsZSddOwoJCQkkY2FsbGJhY2sgPSAkYXR0cmlidXRlc1snY2FsbGJhY2snXTsKCQkJJHBhZ2UgICAgID0gJGF0dHJpYnV0ZXNbJ3BhZ2UnXTsKCQkJJHNlY3Rpb24gID0gJGF0dHJpYnV0ZXNbJ3NlY3Rpb24nXTsKCQkJJGFyZ3MgICAgID0gYXJyYXlfbWVyZ2UoCgkJCQkkYXR0cmlidXRlc1snYXJncyddLAoJCQkJYXJyYXkoCgkJCQkJJ3RpdGxlJyAgICAgPT4gJHRpdGxlLAoJCQkJCSdpZCcgICAgICAgID0+ICRpZCwKCQkJCQknbGFiZWxfZm9yJyA9PiAkaWQsCgkJCQkJJ25hbWUnICAgICAgPT4gJG5hbWUsCgkJCQkpCgkJCSk7CgkJCWFkZF9zZXR0aW5nc19maWVsZCggJGlkLCAkdGl0bGUsICRjYWxsYmFjaywgJHBhZ2UsICRzZWN0aW9uLCAkYXJncyApOwoJCQlyZWdpc3Rlcl9zZXR0aW5nKCAkcGFnZSwgJGlkICk7CgkJfSAvLyBFbmQgZm9yZWFjaCgpIG1ldGhvZC4KCX0KCgkvKioKCSAqIENyZWF0ZSBhbmQgcmV0dXJuIHRoZSBkYXRhIGZvciBub3RpY2VzLgoJICoKCSAqIEByZXR1cm4gYXJyYXkgJG5vdGljZXMgaXMgdGhlIGFycmF5IG9mIG5vdGljZXMuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBub3RpY2VzX2RhdGEoKSB7CgkJJG5vdGljZXMgPSBhcnJheSgKCQkJJ3Blcm1pc3Npb24nICAgICAgICAgICAgICA9PiBhcnJheSgKCQkJCSdjb25kaXRpb24nICAgPT4gKCBmYWxzZSA9PT0gJHRoaXMtPmNoZWNrX3dvcmRwcmVzc19hZG1pbl9wZXJtaXNzaW9ucygpICksCgkJCQknbWVzc2FnZScgICAgID0+IF9fKCAiWW91ciBhY2NvdW50IGRvZXMgbm90IGhhdmUgcGVybWlzc2lvbiB0byBlZGl0IHRoZSBPYmplY3QgU3luYyBmb3IgU2FsZXNmb3JjZSBwbHVnaW4ncyBzZXR0aW5ncy4iLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkndHlwZScgICAgICAgID0+ICdlcnJvcicsCgkJCQknZGlzbWlzc2libGUnID0+IGZhbHNlLAoJCQkpLAoJCQknbm90X3NlY3VyZScgICAgICAgICAgICAgID0+IGFycmF5KAoJCQkJJ2NvbmRpdGlvbicgICA9PiAoIGZhbHNlID09PSAkdGhpcy0+Y2hlY2tfd29yZHByZXNzX3NzbCgpICYmIGZhbHNlID09PSAkdGhpcy0+Y2hlY2tfd29yZHByZXNzX3NzbF9zdXBwb3J0KCkgKSwKCQkJCSdtZXNzYWdlJyAgICAgPT4gZXNjX2h0bWxfXyggJ0F0IGxlYXN0IHRoZSBhZG1pbiBhcmVhIG9mIHlvdXIgd2Vic2l0ZSBtdXN0IHVzZSBIVFRQUyB0byBjb25uZWN0IHdpdGggU2FsZXNmb3JjZS4gV29yZFByZXNzIHJlcG9ydHMgdGhhdCB5b3VyIHNpdGUgZW52aXJvbm1lbnQgZG9lcyBub3QsIGFuZCBjYW5ub3QsIHVzZSBIVFRQUy4gWW91IG1heSBuZWVkIHRvIHdvcmsgd2l0aCB5b3VyIGhvc3RpbmcgY29tcGFueSB0byBtYWtlIHRoZSBzd2l0Y2ggYmVmb3JlIHlvdSBjYW4gdXNlIHRoaXMgcGx1Z2luLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSd0eXBlJyAgICAgICAgPT4gJ2Vycm9yJywKCQkJCSdkaXNtaXNzaWJsZScgPT4gZmFsc2UsCgkJCSksCgkJCSdzZWN1cmVfc3VwcG9ydGVkJyAgICAgICAgPT4gYXJyYXkoCgkJCQknY29uZGl0aW9uJyAgID0+ICggZmFsc2UgPT09ICR0aGlzLT5jaGVja193b3JkcHJlc3Nfc3NsKCkgJiYgdHJ1ZSA9PT0gJHRoaXMtPmNoZWNrX3dvcmRwcmVzc19zc2xfc3VwcG9ydCgpICksCgkJCQknbWVzc2FnZScgICAgID0+IHNwcmludGYoCgkJCQkJLy8gdHJhbnNsYXRvcnM6IDEpIGlzIHRoZSBzaXRlIGhlYWx0aCBVUkwsIGFuZCAyKSBpcyB0aGUgdGV4dCBmb3IgdGhlIHNpdGUgaGVhbHRoIHBhZ2UgdGl0bGUuCgkJCQkJX18oICdZb3VyIHdlYnNpdGUgaXMgbm90IGN1cnJlbnRseSB1c2luZyBIVFRQUywgYnV0IHlvdXIgZW52aXJvbm1lbnQgZG9lcyBzdXBwb3J0IGl0LiBWaXNpdCB5b3VyIHdlYnNpdGVcJ3MgPGEgaHJlZj0iJTEkcyI+JTIkczwvYT4gZm9yIG1vcmUgaW5mb3JtYXRpb24uIElmIHlvdSBoYXZlIGp1c3QgbWlncmF0ZWQgdG8gSFRUUFMsIFdvcmRQcmVzcyBtYXkgdGFrZSBzb21lIHRpbWUgdG8gdXBkYXRlIHRoaXMgZGV0ZWN0aW9uLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCQllc2NfdXJsKCBhZG1pbl91cmwoICdzaXRlLWhlYWx0aC5waHAnICkgKSwKCQkJCQllc2NfaHRtbF9fKCAnU2l0ZSBIZWFsdGggc2NyZWVuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApCgkJCQkpLAoJCQkJJ3R5cGUnICAgICAgICA9PiAnZXJyb3InLAoJCQkJJ2Rpc21pc3NpYmxlJyA9PiBmYWxzZSwKCQkJKSwKCQkJJ2RlcHJlY2F0ZWRfYXBpX3ZlcnNpb24nICA9PiBhcnJheSgKCQkJCSdjb25kaXRpb24nICAgPT4gKCBpc3NldCggJHRoaXMtPmxvZ2luX2NyZWRlbnRpYWxzWyd1c2luZ19kZXByZWNhdGVkX29wdGlvbiddICkgJiYgdHJ1ZSA9PT0gJHRoaXMtPmxvZ2luX2NyZWRlbnRpYWxzWyd1c2luZ19kZXByZWNhdGVkX29wdGlvbiddICksCgkJCQknbWVzc2FnZScgICAgID0+IHNwcmludGYoCgkJCQkJLy8gdHJhbnNsYXRvcnM6IDEpIGlzIHRoZSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgU2FsZXNmb3JjZSBSRVNUIEFQSSwgMikgaXMgdGhlIG9wdGlvbiBrZXkgZm9yIHdoZXJlIHRoZSBkZXByZWNhdGVkIHZlcnNpb24gaXMgc3RvcmVkLCAzKSBpcyB0aGUgcHJlZml4ZWQgb3B0aW9ucyB0YWJsZSBuYW1lLCA0KSBpcyB0aGUgbGluayB0byBkZWxldGUgdGhlIG9wdGlvbiwgNSkgaXMgdGhlIGRlZmF1bHQgQVBJIHZlcnNpb24gdG8gdXNlLCBhbmQgNikgaXMgdGhlIG5hbWUgb2YgdGhlIHdwLWNvbmZpZyB2YWx1ZS4KCQkJCQllc2NfaHRtbF9fKCAnT2JqZWN0IFN5bmMgZm9yIFNhbGVzZm9yY2UgaXMgdXNpbmcgdmVyc2lvbiAlMSRzIG9mIHRoZSBTYWxlc2ZvcmNlIFJFU1QgQVBJLCB3aGljaCBpcyBjb25maWd1cmVkIGZyb20gYSBwcmV2aW91cyB2ZXJzaW9uLiBUaGlzIHZhbHVlIGlzIG5vIGxvbmdlciBjb25maWd1cmFibGUgaW4gdGhlIHBsdWdpbiBzZXR0aW5ncywgYW5kIGluIHZlcnNpb24gMy4wLjAsIHByZXZpb3VzbHkgc2F2ZWQgdmFsdWVzIHdpbGwgYmUgcmVtb3ZlZC4gWW91IGNhbiBkZWxldGUgdGhlICUyJHMgZmllbGQgZnJvbSB0aGUgJTMkcyB0YWJsZSBvbiB5b3VyIG93biwgdXNlICU0JHMsIHNldCBpdCB0byAlNSRzIHNvIHRoZSBwbHVnaW4gY2FuIGRlbGV0ZSBpdCwgb3Igd2FpdCB1bnRpbCB0aGF0IHJlbGVhc2UuIElmIHRoZSAlNiRzIHZhbHVlIGlzIGluIHlvdXIgd3AtY29uZmlnLnBocCBmaWxlIGluc3RlYWQsIHlvdSBzaG91bGQgZGVsZXRlIGl0IGZyb20gdGhlcmUgYXMgd2VsbC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJZXNjX2F0dHIoICR0aGlzLT5sb2dpbl9jcmVkZW50aWFsc1sncmVzdF9hcGlfdmVyc2lvbiddICksCgkJCQkJJzxjb2RlPicgLiBlc2NfYXR0ciggJHRoaXMtPm9wdGlvbl9wcmVmaXggLiAnYXBpX3ZlcnNpb24nICkgLiAnPC9jb2RlPicsCgkJCQkJJzxjb2RlPicgLiBlc2NfYXR0ciggJHRoaXMtPndwZGItPnByZWZpeCAuICdvcHRpb25zJyApIC4gJzwvY29kZT4nLAoJCQkJCSc8YSBocmVmPSIjIiBpZD0ic2FsZXNmb3JjZS1kZWxldGUtcmVzdC1hcGktdmVyc2lvbiI+dGhpcyBsaW5rIHRoYXQgd2lsbCBhdHRlbXB0IHRvIGRlbGV0ZSBpdDwvYT4nLAoJCQkJCSc8Y29kZT4nIC4gZXNjX2F0dHIoIE9CSkVDVF9TWU5DX1NGX0RFRkFVTFRfQVBJX1ZFUlNJT04gKSAuICc8L2NvZGU+JywKCQkJCQknPGNvZGU+JyAuIGVzY19hdHRyKCAnT0JKRUNUX1NZTkNfU0ZfREVGQVVMVF9BUElfVkVSU0lPTicgKSAuICc8L2NvZGU+JwoJCQkJKSwKCQkJCSd0eXBlJyAgICAgICAgPT4gJ2Vycm9yJywKCQkJCSdkaXNtaXNzaWJsZScgPT4gdHJ1ZSwKCQkJKSwKCQkJJ2ZpZWxkbWFwJyAgICAgICAgICAgICAgICA9PiBhcnJheSgKCQkJCSdjb25kaXRpb24nICAgPT4gaXNzZXQoICRnZXRfZGF0YVsndHJhbnNpZW50J10gKSwKCQkJCSdtZXNzYWdlJyAgICAgPT4gZXNjX2h0bWxfXyggJ0Vycm9ycyBrZXB0IHRoaXMgZmllbGRtYXAgZnJvbSBiZWluZyBzYXZlZC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkndHlwZScgICAgICAgID0+ICdlcnJvcicsCgkJCQknZGlzbWlzc2libGUnID0+IHRydWUsCgkJCSksCgkJCSdmaWVsZG1hcF9taXNzaW5nJyAgICAgICAgPT4gYXJyYXkoCgkJCQknY29uZGl0aW9uJyAgID0+IGlzc2V0KCAkZ2V0X2RhdGFbJ21pc3NpbmdfZmllbGRtYXAnXSApLAoJCQkJJ21lc3NhZ2UnICAgICA9PiBfXyggJ1RoZXJlIGlzIG5vIGZpZWxkbWFwIHdpdGggdGhlIHN1cHBsaWVkIElELiBJbnN0ZWFkLCB0aGUgbGlzdCBvZiBhbGwgYXZhaWxhYmxlIGZpZWxkbWFwcyBpcyBkaXNwbGF5ZWQuJywgJ29iamVjdC1zeW5jLWZvci1zYWxlc2ZvcmNlJyApLAoJCQkJJ3R5cGUnICAgICAgICA9PiAnZXJyb3InLAoJCQkJJ2Rpc21pc3NpYmxlJyA9PiB0cnVlLAoJCQkpLAoJCQknb2JqZWN0X21hcCcgICAgICAgICAgICAgID0+IGFycmF5KAoJCQkJJ2NvbmRpdGlvbicgICA9PiBpc3NldCggJGdldF9kYXRhWydtYXBfdHJhbnNpZW50J10gKSwKCQkJCSdtZXNzYWdlJyAgICAgPT4gZXNjX2h0bWxfXyggJ0Vycm9ycyBrZXB0IHRoaXMgb2JqZWN0IG1hcCBmcm9tIGJlaW5nIHNhdmVkLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSd0eXBlJyAgICAgICAgPT4gJ2Vycm9yJywKCQkJCSdkaXNtaXNzaWJsZScgPT4gdHJ1ZSwKCQkJKSwKCQkJJ2RhdGFfc2F2ZWQnICAgICAgICAgICAgICA9PiBhcnJheSgKCQkJCSdjb25kaXRpb24nICAgPT4gaXNzZXQoICRnZXRfZGF0YVsnZGF0YV9zYXZlZCddICkgJiYgJ3RydWUnID09PSAkZ2V0X2RhdGFbJ2RhdGFfc2F2ZWQnXSwKCQkJCSdtZXNzYWdlJyAgICAgPT4gZXNjX2h0bWxfXyggJ1RoaXMgZGF0YSB3YXMgc3VjY2Vzc2Z1bGx5IHNhdmVkLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSd0eXBlJyAgICAgICAgPT4gJ3N1Y2Nlc3MnLAoJCQkJJ2Rpc21pc3NpYmxlJyA9PiB0cnVlLAoJCQkpLAoJCQknZGF0YV9zYXZlX3BhcnRpYWwnICAgICAgID0+IGFycmF5KAoJCQkJJ2NvbmRpdGlvbicgICA9PiBpc3NldCggJGdldF9kYXRhWydkYXRhX3NhdmVkJ10gKSAmJiAncGFydGlhbCcgPT09ICRnZXRfZGF0YVsnZGF0YV9zYXZlZCddLAoJCQkJJ21lc3NhZ2UnICAgICA9PiBfXyggJ1RoaXMgZGF0YSB3YXMgcGFydGlhbGx5IHN1Y2Nlc3NmdWxseSBzYXZlZC4gVGhpcyBtZWFucyBzb21lIG9mIHRoZSBkYXRhIHdhcyB1bmFibGUgdG8gc2F2ZS4gSWYgeW91IGhhdmUgZW5hYmxlZCBsb2dnaW5nIG9yIGRlYnVnIG1vZGUgaW4gdGhlIHBsdWdpbiBzZXR0aW5ncywgdGhlcmUgc2hvdWxkIGJlIGEgbG9nIGVudHJ5IHdpdGggZnVydGhlciBkZXRhaWxzLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwKCQkJCSd0eXBlJyAgICAgICAgPT4gJ2Vycm9yJywKCQkJCSdkaXNtaXNzaWJsZScgPT4gdHJ1ZSwKCQkJKSwKCQkJJ2RhdGFfc2F2ZV9lcnJvcicgICAgICAgICA9PiBhcnJheSgKCQkJCSdjb25kaXRpb24nICAgPT4gaXNzZXQoICRnZXRfZGF0YVsnZGF0YV9zYXZlZCddICkgJiYgJ2ZhbHNlJyA9PT0gJGdldF9kYXRhWydkYXRhX3NhdmVkJ10sCgkJCQknbWVzc2FnZScgICAgID0+IGVzY19odG1sX18oICdUaGlzIGRhdGEgd2FzIG5vdCBzdWNjZXNzZnVsbHkgc2F2ZWQuIFRyeSBhZ2Fpbi4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkndHlwZScgICAgICAgID0+ICdlcnJvcicsCgkJCQknZGlzbWlzc2libGUnID0+IHRydWUsCgkJCSksCgkJCSdtYXBwaW5nX2Vycm9yX3RyYW5zaWVudCcgPT4gYXJyYXkoCgkJCQknY29uZGl0aW9uJyAgID0+IGlzc2V0KCAkZ2V0X2RhdGFbJ21hcHBpbmdfZXJyb3JfdHJhbnNpZW50J10gKSwKCQkJCSdtZXNzYWdlJyAgICAgPT4gZXNjX2h0bWxfXyggJ0Vycm9ycyBrZXB0IHRoZXNlIG1hcHBpbmcgZXJyb3JzIGZyb20gYmVpbmcgZGVsZXRlZC4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkndHlwZScgICAgICAgID0+ICdlcnJvcicsCgkJCQknZGlzbWlzc2libGUnID0+IHRydWUsCgkJCSksCgkJKTsKCQlyZXR1cm4gJG5vdGljZXM7Cgl9CgoJLyoqCgkgKiBDcmVhdGUgdGhlIG5vdGljZXMsIHNldHRpbmdzLCBhbmQgY29uZGl0aW9ucyBieSB3aGljaCBhZG1pbiBub3RpY2VzIHNob3VsZCBhcHBlYXIKCSAqLwoJcHVibGljIGZ1bmN0aW9uIGRpc3BsYXlfbm90aWNlcygpIHsKCgkJLy8gYmVmb3JlIGEgbm90aWNlIGlzIGRpc3BsYXllZCwgd2Ugc2hvdWxkIG1ha2Ugc3VyZSB3ZSBhcmUgb24gYSBwYWdlIHJlbGF0ZWQgdG8gdGhpcyBwbHVnaW4uCgkJaWYgKCAhIGlzc2V0KCAkX0dFVFsncGFnZSddICkgfHwgJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSAhPT0gJF9HRVRbJ3BhZ2UnXSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJJGdldF9kYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9HRVQsIEZJTFRFUl9TQU5JVElaRV9TUEVDSUFMX0NIQVJTICk7CgkJJG5vdGljZXMgID0gJHRoaXMtPm5vdGljZXNfZGF0YSgpOwoKCQlmb3JlYWNoICggJG5vdGljZXMgYXMgJGtleSA9PiAkdmFsdWUgKSB7CgoJCQkkY29uZGl0aW9uID0gKGJvb2wpICR2YWx1ZVsnY29uZGl0aW9uJ107CgkJCSRtZXNzYWdlICAgPSAkdmFsdWVbJ21lc3NhZ2UnXTsKCgkJCWlmICggaXNzZXQoICR2YWx1ZVsnZGlzbWlzc2libGUnXSApICkgewoJCQkJJGRpc21pc3NpYmxlID0gJHZhbHVlWydkaXNtaXNzaWJsZSddOwoJCQl9IGVsc2UgewoJCQkJJGRpc21pc3NpYmxlID0gZmFsc2U7CgkJCX0KCgkJCWlmICggaXNzZXQoICR2YWx1ZVsndHlwZSddICkgKSB7CgkJCQkkdHlwZSA9ICR2YWx1ZVsndHlwZSddOwoJCQl9IGVsc2UgewoJCQkJJHR5cGUgPSAnJzsKCQkJfQoKCQkJaWYgKCAhIGlzc2V0KCAkdmFsdWVbJ3RlbXBsYXRlJ10gKSApIHsKCQkJCSR0ZW1wbGF0ZSA9ICcnOwoJCQl9CgoJCQlpZiAoICRjb25kaXRpb24gKSB7CgkJCQluZXcgT2JqZWN0X1N5bmNfU2ZfQWRtaW5fTm90aWNlKCAkY29uZGl0aW9uLCAkbWVzc2FnZSwgJGRpc21pc3NpYmxlLCAkdHlwZSwgJHRlbXBsYXRlICk7CgkJCX0KCQl9CgoJfQoKCS8qKgoJICogR2V0IGFsbCB0aGUgU2FsZXNmb3JjZSBvYmplY3Qgc2V0dGluZ3MgZm9yIGZpZWxkbWFwcGluZwoJICogVGhpcyB0YWtlcyBlaXRoZXIgdGhlICRfUE9TVCBhcnJheSB2aWEgYWpheCwgb3IgY2FuIGJlIGRpcmVjdGx5IGNhbGxlZCB3aXRoIGEgJGRhdGEgYXJyYXkKCSAqCgkgKiBAcGFyYW0gYXJyYXkgJGRhdGEgbXVzdCBjb250YWluIGEgU2FsZXNmb3JjZSBvYmplY3QsIGNhbiBvcHRpb25hbGx5IGNvbnRhaW4gYSB0eXBlLgoJICogQHJldHVybiBhcnJheSAkb2JqZWN0X3NldHRpbmdzCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBnZXRfc2FsZXNmb3JjZV9vYmplY3RfZGVzY3JpcHRpb24oICRkYXRhID0gYXJyYXkoKSApIHsKCQkkYWpheCA9IGZhbHNlOwoJCWlmICggZW1wdHkoICRkYXRhICkgKSB7CgkJCSRkYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9QT1NULCBGSUxURVJfU0FOSVRJWkVfU1BFQ0lBTF9DSEFSUyApOwoJCQkkYWpheCA9IHRydWU7CgkJfQoKCQkkb2JqZWN0X2Rlc2NyaXB0aW9uID0gYXJyYXkoKTsKCgkJaWYgKCAhIGVtcHR5KCAkZGF0YVsnc2FsZXNmb3JjZV9vYmplY3QnXSApICkgewoJCQkkb2JqZWN0ID0gJHRoaXMtPnNhbGVzZm9yY2VbJ3NmYXBpJ10tPm9iamVjdF9kZXNjcmliZSggZXNjX2F0dHIoICRkYXRhWydzYWxlc2ZvcmNlX29iamVjdCddICkgKTsKCgkJCSRvYmplY3RfZmllbGRzICAgICAgICA9IGFycmF5KCk7CgkJCSRpbmNsdWRlX3JlY29yZF90eXBlcyA9IGFycmF5KCk7CgoJCQkvLyB0aGVzZSBjYW4gY29tZSBmcm9tIGFqYXguCgkJCSRpbmNsdWRlID0gaXNzZXQoICRkYXRhWydpbmNsdWRlJ10gKSA/IChhcnJheSkgJGRhdGFbJ2luY2x1ZGUnXSA6IGFycmF5KCk7CgkJCSRpbmNsdWRlID0gYXJyYXlfbWFwKCAnZXNjX2F0dHInLCAkaW5jbHVkZSApOwoKCQkJaWYgKCBpbl9hcnJheSggJ2ZpZWxkcycsICRpbmNsdWRlLCB0cnVlICkgfHwgZW1wdHkoICRpbmNsdWRlICkgKSB7CgkJCQkkdHlwZSA9IGlzc2V0KCAkZGF0YVsnZmllbGRfdHlwZSddICkgPyBlc2NfYXR0ciggJGRhdGFbJ2ZpZWxkX3R5cGUnXSApIDogJyc7IC8vIGNhbiBjb21lIGZyb20gYWpheC4KCgkJCQkvLyBoZXJlLCB3ZSBzaG91bGQgcmVzcGVjdCB0aGUgZGVjaXNpb24gb2Ygd2hldGhlciB0byBzaG93IHRoZSBBUEkgbmFtZSBvciB0aGUgbGFiZWwuCgkJCQkkZGlzcGxheV92YWx1ZSA9IGdldF9vcHRpb24oICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ3NhbGVzZm9yY2VfZmllbGRfZGlzcGxheV92YWx1ZScsICdmaWVsZF9sYWJlbCcgKTsKCQkJCWlmICggJ2FwaV9uYW1lJyA9PT0gJGRpc3BsYXlfdmFsdWUgKSB7CgkJCQkJJHZpc2libGVfbGFiZWxfZmllbGQgPSAnbmFtZSc7CgkJCQl9IGVsc2UgewoJCQkJCSR2aXNpYmxlX2xhYmVsX2ZpZWxkID0gJ2xhYmVsJzsKCQkJCX0KCQkJCSRhdHRyaWJ1dGVzID0gYXJyYXkoICduYW1lJywgJHZpc2libGVfbGFiZWxfZmllbGQgKTsKCgkJCQlmb3JlYWNoICggJG9iamVjdFsnZGF0YSddWydmaWVsZHMnXSBhcyAka2V5ID0+ICR2YWx1ZSApIHsKCQkJCQlpZiAoICcnID09PSAkdHlwZSB8fCAkdHlwZSA9PT0gJHZhbHVlWyd0eXBlJ10gKSB7CgkJCQkJCSRvYmplY3RfZmllbGRzWyAka2V5IF0gPSAkdmFsdWU7CgkJCQkJCWlmICggaXNzZXQoICRhdHRyaWJ1dGVzICkgKSB7CgkJCQkJCQkkb2JqZWN0X2ZpZWxkc1sgJGtleSBdID0gYXJyYXlfaW50ZXJzZWN0X2tleSggJHZhbHVlLCBhcnJheV9mbGlwKCAkYXR0cmlidXRlcyApICk7CgkJCQkJCX0KCQkJCQl9CgkJCQl9CgkJCQkkb2JqZWN0X2Rlc2NyaXB0aW9uWydmaWVsZHMnXSA9ICRvYmplY3RfZmllbGRzOwoJCQl9CgoJCQlpZiAoIGluX2FycmF5KCAncmVjb3JkVHlwZUluZm9zJywgJGluY2x1ZGUsIHRydWUgKSApIHsKCQkJCWlmICggaXNzZXQoICRvYmplY3RbJ2RhdGEnXVsncmVjb3JkVHlwZUluZm9zJ10gKSAmJiBjb3VudCggJG9iamVjdFsnZGF0YSddWydyZWNvcmRUeXBlSW5mb3MnXSApID4gMSApIHsKCQkJCQlmb3JlYWNoICggJG9iamVjdFsnZGF0YSddWydyZWNvcmRUeXBlSW5mb3MnXSBhcyAkdHlwZSApIHsKCQkJCQkJJG9iamVjdF9yZWNvcmRfdHlwZXNbICR0eXBlWydyZWNvcmRUeXBlSWQnXSBdID0gJHR5cGVbJ25hbWUnXTsKCQkJCQl9CgkJCQkJJG9iamVjdF9kZXNjcmlwdGlvblsncmVjb3JkVHlwZUluZm9zJ10gPSAkb2JqZWN0X3JlY29yZF90eXBlczsKCQkJCX0KCQkJfQoJCX0KCgkJaWYgKCB0cnVlID09PSAkYWpheCApIHsKCQkJd3Bfc2VuZF9qc29uX3N1Y2Nlc3MoICRvYmplY3RfZGVzY3JpcHRpb24gKTsKCQl9IGVsc2UgewoJCQlyZXR1cm4gJG9iamVjdF9kZXNjcmlwdGlvbjsKCQl9Cgl9CgoJLyoqCgkgKiBHZXQgYWxsIHRoZSBTYWxlc2ZvcmNlIGZpZWxkcyBzZXR0aW5ncyBmb3IgZmllbGRtYXBwaW5nCgkgKiBUaGlzIHRha2VzIGVpdGhlciB0aGUgJF9QT1NUIGFycmF5IHZpYSBhamF4LCBvciBjYW4gYmUgZGlyZWN0bHkgY2FsbGVkIHdpdGggYSAkZGF0YSBhcnJheQoJICoKCSAqIEBwYXJhbSBhcnJheSAkZGF0YSBtdXN0IGNvbnRhaW4gYSBTYWxlc2ZvcmNlIG9iamVjdCB1bmxlc3MgaXQgaXMgQWpheCwgY2FuIG9wdGlvbmFsbHkgY29udGFpbiBhIHR5cGUuCgkgKiBAcmV0dXJuIGFycmF5ICRvYmplY3RfZmllbGRzCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBnZXRfc2FsZXNmb3JjZV9vYmplY3RfZmllbGRzKCAkZGF0YSA9IGFycmF5KCkgKSB7CgkJJGFqYXggICAgICA9IGZhbHNlOwoJCSRwb3N0X2RhdGEgPSBmaWx0ZXJfaW5wdXRfYXJyYXkoIElOUFVUX1BPU1QsIEZJTFRFUl9VTlNBRkVfUkFXICk7CgkJaWYgKCBlbXB0eSggJGRhdGEgKSApIHsKCQkJJHNhbGVzZm9yY2Vfb2JqZWN0ID0gaXNzZXQoICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKSA/IHNhbml0aXplX3RleHRfZmllbGQoIHdwX3Vuc2xhc2goICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKSApIDogJyc7CgkJCSRhamF4ICAgICAgICAgICAgICA9IHRydWU7CgkJCS8vIGhlcmUsIHdlIHNob3VsZCByZXNwZWN0IHRoZSBkZWNpc2lvbiBvZiB3aGV0aGVyIHRvIHNob3cgdGhlIEFQSSBuYW1lIG9yIHRoZSBsYWJlbC4KCQkJJGRpc3BsYXlfdmFsdWUgPSBnZXRfb3B0aW9uKCAkdGhpcy0+b3B0aW9uX3ByZWZpeCAuICdzYWxlc2ZvcmNlX2ZpZWxkX2Rpc3BsYXlfdmFsdWUnLCAnZmllbGRfbGFiZWwnICk7CgkJCWlmICggJ2FwaV9uYW1lJyA9PT0gJGRpc3BsYXlfdmFsdWUgKSB7CgkJCQkkdmlzaWJsZV9sYWJlbF9maWVsZCA9ICduYW1lJzsKCQkJfSBlbHNlIHsKCQkJCSR2aXNpYmxlX2xhYmVsX2ZpZWxkID0gJ2xhYmVsJzsKCQkJfQoJCQkkYXR0cmlidXRlcyA9IGFycmF5KCAnbmFtZScsICR2aXNpYmxlX2xhYmVsX2ZpZWxkICk7CgkJfSBlbHNlIHsKCQkJJHNhbGVzZm9yY2Vfb2JqZWN0ID0gaXNzZXQoICRkYXRhWydzYWxlc2ZvcmNlX29iamVjdCddICkgPyBzYW5pdGl6ZV90ZXh0X2ZpZWxkKCB3cF91bnNsYXNoKCAkZGF0YVsnc2FsZXNmb3JjZV9vYmplY3QnXSApICkgOiAnJzsKCQl9CgkJJG9iamVjdF9maWVsZHMgPSBhcnJheSgpOwoJCWlmICggISBlbXB0eSggJHNhbGVzZm9yY2Vfb2JqZWN0ICkgKSB7CgkJCSRvYmplY3QgICAgICAgICAgICAgICA9ICR0aGlzLT5zYWxlc2ZvcmNlWydzZmFwaSddLT5vYmplY3RfZGVzY3JpYmUoIGVzY19hdHRyKCAkc2FsZXNmb3JjZV9vYmplY3QgKSApOwoJCQkkb2JqZWN0X2ZpZWxkcyAgICAgICAgPSBhcnJheSgpOwoJCQkkdHlwZSAgICAgICAgICAgICAgICAgPSBpc3NldCggJGRhdGFbJ3R5cGUnXSApID8gZXNjX2F0dHIoICRkYXRhWyd0eXBlJ10gKSA6ICcnOwoJCQkkaW5jbHVkZV9yZWNvcmRfdHlwZXMgPSBpc3NldCggJGRhdGFbJ2luY2x1ZGVfcmVjb3JkX3R5cGVzJ10gKSA/IGVzY19hdHRyKCAkZGF0YVsnaW5jbHVkZV9yZWNvcmRfdHlwZXMnXSApIDogZmFsc2U7CgkJCWZvcmVhY2ggKCAkb2JqZWN0WydkYXRhJ11bJ2ZpZWxkcyddIGFzICRrZXkgPT4gJHZhbHVlICkgewoJCQkJaWYgKCAnJyA9PT0gJHR5cGUgfHwgJHR5cGUgPT09ICR2YWx1ZVsndHlwZSddICkgewoJCQkJCSRvYmplY3RfZmllbGRzWyAka2V5IF0gPSAkdmFsdWU7CgkJCQkJaWYgKCBpc3NldCggJGF0dHJpYnV0ZXMgKSApIHsKCQkJCQkJJG9iamVjdF9maWVsZHNbICRrZXkgXSA9IGFycmF5X2ludGVyc2VjdF9rZXkoICR2YWx1ZSwgYXJyYXlfZmxpcCggJGF0dHJpYnV0ZXMgKSApOwoJCQkJCX0KCQkJCX0KCQkJfQoJCQlpZiAoIHRydWUgPT09ICRpbmNsdWRlX3JlY29yZF90eXBlcyApIHsKCQkJCSRvYmplY3RfcmVjb3JkX3R5cGVzID0gYXJyYXkoKTsKCQkJCWlmICggaXNzZXQoICRvYmplY3RbJ2RhdGEnXVsncmVjb3JkVHlwZUluZm9zJ10gKSAmJiBjb3VudCggJG9iamVjdFsnZGF0YSddWydyZWNvcmRUeXBlSW5mb3MnXSApID4gMSApIHsKCQkJCQlmb3JlYWNoICggJG9iamVjdFsnZGF0YSddWydyZWNvcmRUeXBlSW5mb3MnXSBhcyAkdHlwZSApIHsKCQkJCQkJJG9iamVjdF9yZWNvcmRfdHlwZXNbICR0eXBlWydyZWNvcmRUeXBlSWQnXSBdID0gJHR5cGVbJ25hbWUnXTsKCQkJCQl9CgkJCQl9CgkJCX0KCQl9CgoJCWlmICggdHJ1ZSA9PT0gJGFqYXggKSB7CgkJCSRhamF4X3Jlc3BvbnNlID0gYXJyYXkoCgkJCQknZmllbGRzJyA9PiAkb2JqZWN0X2ZpZWxkcywKCQkJKTsKCQkJd3Bfc2VuZF9qc29uX3N1Y2Nlc3MoICRhamF4X3Jlc3BvbnNlICk7CgkJfSBlbHNlIHsKCQkJcmV0dXJuICRvYmplY3RfZmllbGRzOwoJCX0KCgl9CgoJLyoqCgkgKiBHZXQgV29yZFByZXNzIG9iamVjdCBmaWVsZHMgZm9yIGZpZWxkbWFwcGluZwoJICogVGhpcyB0YWtlcyBlaXRoZXIgdGhlICRfUE9TVCBhcnJheSB2aWEgYWpheCwgb3IgY2FuIGJlIGRpcmVjdGx5IGNhbGxlZCB3aXRoIGEgJHdvcmRwcmVzc19vYmplY3QgZmllbGQKCSAqCgkgKiBAcGFyYW0gc3RyaW5nICR3b3JkcHJlc3Nfb2JqZWN0IGlzIHRoZSBuYW1lIG9mIHRoZSBXb3JkUHJlc3Mgb2JqZWN0LgoJICogQHJldHVybiBhcnJheSAkb2JqZWN0X2ZpZWxkcwoJICovCglwdWJsaWMgZnVuY3Rpb24gZ2V0X3dvcmRwcmVzc19vYmplY3RfZmllbGRzKCAkd29yZHByZXNzX29iamVjdCA9ICcnICkgewoJCSRhamF4ICAgICAgPSBmYWxzZTsKCQkkcG9zdF9kYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9QT1NULCBGSUxURVJfVU5TQUZFX1JBVyApOwoJCWlmICggZW1wdHkoICR3b3JkcHJlc3Nfb2JqZWN0ICkgKSB7CgkJCSR3b3JkcHJlc3Nfb2JqZWN0ID0gaXNzZXQoICRwb3N0X2RhdGFbJ3dvcmRwcmVzc19vYmplY3QnXSApID8gc2FuaXRpemVfdGV4dF9maWVsZCggd3BfdW5zbGFzaCggJHBvc3RfZGF0YVsnd29yZHByZXNzX29iamVjdCddICkgKSA6ICcnOwoJCQkkYWpheCAgICAgICAgICAgICA9IHRydWU7CgkJfQoKCQkkb2JqZWN0X2ZpZWxkcyA9ICR0aGlzLT53b3JkcHJlc3MtPmdldF93b3JkcHJlc3Nfb2JqZWN0X2ZpZWxkcyggJHdvcmRwcmVzc19vYmplY3QgKTsKCgkJaWYgKCB0cnVlID09PSAkYWpheCApIHsKCQkJJGFqYXhfcmVzcG9uc2UgPSBhcnJheSgKCQkJCSdmaWVsZHMnID0+ICRvYmplY3RfZmllbGRzLAoJCQkpOwoJCQl3cF9zZW5kX2pzb25fc3VjY2VzcyggJGFqYXhfcmVzcG9uc2UgKTsKCQl9IGVsc2UgewoJCQlyZXR1cm4gJG9iamVjdF9maWVsZHM7CgkJfQoJfQoKCS8qKgoJICogTWFudWFsbHkgcHVzaCB0aGUgV29yZFByZXNzIG9iamVjdCB0byBTYWxlc2ZvcmNlCgkgKiBUaGlzIHRha2VzIGVpdGhlciB0aGUgJF9QT1NUIGFycmF5IHZpYSBhamF4LCBvciBjYW4gYmUgZGlyZWN0bHkgY2FsbGVkIHdpdGggJHdvcmRwcmVzc19vYmplY3QgYW5kICR3b3JkcHJlc3NfaWQgZmllbGRzCgkgKgoJICogQHBhcmFtIHN0cmluZyAkd29yZHByZXNzX29iamVjdCBpcyB0aGUgbmFtZSBvZiB0aGUgV29yZFByZXNzIG9iamVjdC4KCSAqIEBwYXJhbSBpbnQgICAgJHdvcmRwcmVzc19pZCBpcyB0aGUgSUQgb2YgdGhlIFdvcmRQcmVzcyByZWNvcmQuCgkgKiBAcGFyYW0gYm9vbCAgICRmb3JjZV9yZXR1cm4gRm9yY2UgdGhlIG1ldGhvZCB0byByZXR1cm4ganNvbiBpbnN0ZWFkIG9mIG91dHB1dHRpbmcgaXQuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBwdXNoX3RvX3NhbGVzZm9yY2UoICR3b3JkcHJlc3Nfb2JqZWN0ID0gJycsICR3b3JkcHJlc3NfaWQgPSAnJywgJGZvcmNlX3JldHVybiA9IGZhbHNlICkgewoJCSRwb3N0X2RhdGEgPSBmaWx0ZXJfaW5wdXRfYXJyYXkoIElOUFVUX1BPU1QsIEZJTFRFUl9VTlNBRkVfUkFXICk7CgkJaWYgKCBlbXB0eSggJHdvcmRwcmVzc19vYmplY3QgKSAmJiBlbXB0eSggJHdvcmRwcmVzc19pZCApICkgewoJCQkkd29yZHByZXNzX29iamVjdCA9IGlzc2V0KCAkcG9zdF9kYXRhWyd3b3JkcHJlc3Nfb2JqZWN0J10gKSA/IHNhbml0aXplX3RleHRfZmllbGQoIHdwX3Vuc2xhc2goICRwb3N0X2RhdGFbJ3dvcmRwcmVzc19vYmplY3QnXSApICkgOiAnJzsKCQkJJHdvcmRwcmVzc19pZCAgICAgPSBpc3NldCggJHBvc3RfZGF0YVsnd29yZHByZXNzX2lkJ10gKSA/IGFic2ludCggJHBvc3RfZGF0YVsnd29yZHByZXNzX2lkJ10gKSA6ICcnOwoJCX0KCgkJLy8gY2xhcmlmeSB3aGF0IHRoYXQgdmFyaWFibGUgaXMgaW4gdGhpcyBjb250ZXh0LgoJCSRvYmplY3RfdHlwZSA9ICR3b3JkcHJlc3Nfb2JqZWN0OwoKCQkvLyBXaGVuIG9iamVjdHMgYXJlIGFscmVhZHkgbWFwcGVkLCB0aGVyZSBpcyBhIFNhbGVzZm9yY2UgaWQgYXMgd2VsbC4gT3RoZXJ3aXNlLCBpdCdzIGJsYW5rLgoJCSRzYWxlc2ZvcmNlX2lkID0gaXNzZXQoICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2VfaWQnXSApID8gc2FuaXRpemVfdGV4dF9maWVsZCggJHBvc3RfZGF0YVsnc2FsZXNmb3JjZV9pZCddICkgOiAnJzsKCQlpZiAoICcnID09PSAkc2FsZXNmb3JjZV9pZCApIHsKCQkJJG1ldGhvZCA9ICdQT1NUJzsKCQl9IGVsc2UgewoJCQkkbWV0aG9kID0gJ1BVVCc7CgkJfQoKCQkkcmVzdWx0ID0gJHRoaXMtPnB1c2gtPm1hbnVhbF9wdXNoKCAkb2JqZWN0X3R5cGUsICR3b3JkcHJlc3NfaWQsICRtZXRob2QgKTsKCgkJaWYgKCBmYWxzZSA9PT0gJGZvcmNlX3JldHVybiAmJiAhIGVtcHR5KCAkcG9zdF9kYXRhWyd3b3JkcHJlc3Nfb2JqZWN0J10gKSAmJiAhIGVtcHR5KCAkcG9zdF9kYXRhWyd3b3JkcHJlc3NfaWQnXSApICkgewoJCQl3cF9zZW5kX2pzb25fc3VjY2VzcyggJHJlc3VsdCApOwoJCX0gZWxzZSB7CgkJCXJldHVybiAkcmVzdWx0OwoJCX0KCgl9CgoJLyoqCgkgKiBNYW51YWxseSBwdWxsIHRoZSBTYWxlc2ZvcmNlIG9iamVjdCBpbnRvIFdvcmRQcmVzcwoJICogVGhpcyB0YWtlcyBlaXRoZXIgdGhlICRfUE9TVCBhcnJheSB2aWEgYWpheCwgb3IgY2FuIGJlIGRpcmVjdGx5IGNhbGxlZCB3aXRoICRzYWxlc2ZvcmNlX2lkIGZpZWxkcwoJICoKCSAqIEBwYXJhbSBzdHJpbmcgJHNhbGVzZm9yY2VfaWQgaXMgdGhlIElEIG9mIHRoZSBTYWxlc2ZvcmNlIHJlY29yZC4KCSAqIEBwYXJhbSBzdHJpbmcgJHdvcmRwcmVzc19vYmplY3QgaXMgdGhlIG5hbWUgb2YgdGhlIFdvcmRQcmVzcyBvYmplY3QuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBwdWxsX2Zyb21fc2FsZXNmb3JjZSggJHNhbGVzZm9yY2VfaWQgPSAnJywgJHdvcmRwcmVzc19vYmplY3QgPSAnJyApIHsKCQkkcG9zdF9kYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9QT1NULCBGSUxURVJfVU5TQUZFX1JBVyApOwoJCWlmICggZW1wdHkoICR3b3JkcHJlc3Nfb2JqZWN0ICkgJiYgZW1wdHkoICRzYWxlc2ZvcmNlX2lkICkgKSB7CgkJCSR3b3JkcHJlc3Nfb2JqZWN0ID0gaXNzZXQoICRwb3N0X2RhdGFbJ3dvcmRwcmVzc19vYmplY3QnXSApID8gc2FuaXRpemVfdGV4dF9maWVsZCggd3BfdW5zbGFzaCggJHBvc3RfZGF0YVsnd29yZHByZXNzX29iamVjdCddICkgKSA6ICcnOwoJCQkkc2FsZXNmb3JjZV9pZCAgICA9IGlzc2V0KCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX2lkJ10gKSA/IHNhbml0aXplX3RleHRfZmllbGQoIHdwX3Vuc2xhc2goICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2VfaWQnXSApICkgOiAnJzsKCQl9CgkJJHR5cGUgICA9ICR0aGlzLT5zYWxlc2ZvcmNlWydzZmFwaSddLT5nZXRfc29iamVjdF90eXBlKCAkc2FsZXNmb3JjZV9pZCApOwoJCSRyZXN1bHQgPSAkdGhpcy0+cHVsbC0+bWFudWFsX3B1bGwoICR0eXBlLCAkc2FsZXNmb3JjZV9pZCwgJHdvcmRwcmVzc19vYmplY3QgKTsgLy8gd2Ugd2FudCB0aGUgd3Agb2JqZWN0IHRvIG1ha2Ugc3VyZSB3ZSBnZXQgdGhlIHJpZ2h0IGZpZWxkbWFwLgoJCWlmICggISBlbXB0eSggJHBvc3RfZGF0YSApICkgewoJCQl3cF9zZW5kX2pzb25fc3VjY2VzcyggJHJlc3VsdCApOwoJCX0gZWxzZSB7CgkJCXJldHVybiAkcmVzdWx0OwoJCX0KCX0KCgkvKioKCSAqIE1hbnVhbGx5IHB1bGwgdGhlIFNhbGVzZm9yY2Ugb2JqZWN0IGludG8gV29yZFByZXNzCgkgKiBUaGlzIHRha2VzIGFuIGlkIGZvciBhIG1hcHBpbmcgb2JqZWN0IHJvdwoJICoKCSAqIEBwYXJhbSBpbnQgJG1hcHBpbmdfaWQgaXMgdGhlIElEIG9mIHRoZSBtYXBwaW5nIG9iamVjdCByZWNvcmQuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiByZWZyZXNoX21hcHBlZF9kYXRhKCAkbWFwcGluZ19pZCA9ICcnICkgewoJCSRwb3N0X2RhdGEgPSBmaWx0ZXJfaW5wdXRfYXJyYXkoIElOUFVUX1BPU1QsIEZJTFRFUl9VTlNBRkVfUkFXICk7CgkJaWYgKCBlbXB0eSggJG1hcHBpbmdfaWQgKSApIHsKCQkJJG1hcHBpbmdfaWQgPSBpc3NldCggJHBvc3RfZGF0YVsnbWFwcGluZ19pZCddICkgPyBhYnNpbnQoICRwb3N0X2RhdGFbJ21hcHBpbmdfaWQnXSApIDogJyc7CgkJfQoJCSRyZXN1bHQgPSAkdGhpcy0+bWFwcGluZ3MtPmdldF9hbGxfb2JqZWN0X21hcHMoCgkJCWFycmF5KAoJCQkJJ2lkJyA9PiAkbWFwcGluZ19pZCwKCQkJKQoJCSk7CgoJCSRvYmplY3RfbWFwID0gYXJyYXkoKTsKCgkJLy8gcmVzdWx0IGlzIGFuIGFycmF5IG9mIGFycmF5cywgbm90IGp1c3Qgb25lIGFycmF5LgoJCWlmICggMSA9PT0gY291bnQoICRyZXN1bHQgKSApIHsKCQkJJG9iamVjdF9tYXAgPSAkcmVzdWx0WzBdOwoJCX0KCgkJaWYgKCAhIGVtcHR5KCAkcG9zdF9kYXRhICkgKSB7CgkJCXdwX3NlbmRfanNvbl9zdWNjZXNzKCAkb2JqZWN0X21hcCApOwoJCX0gZWxzZSB7CgkJCXJldHVybiAkb2JqZWN0X21hcDsKCQl9Cgl9CgoJLyoqCgkgKiBQcmVwYXJlIGZpZWxkbWFwIGRhdGEgYW5kIHJlZGlyZWN0IGFmdGVyIHByb2Nlc3NpbmcKCSAqIFRoaXMgcnVucyB3aGVuIHRoZSBjcmVhdGUgb3IgdXBkYXRlIGZvcm1zIGFyZSBzdWJtaXR0ZWQKCSAqIEl0IGlzIHB1YmxpYyBiZWNhdXNlIGl0IGRlcGVuZHMgb24gYW4gYWRtaW4gaG9vawoJICogSXQgdGhlbiBjYWxscyB0aGUgT2JqZWN0X1N5bmNfU2ZfTWFwcGluZyBjbGFzcyBhbmQgc2VuZHMgcHJlcGFyZWQgZGF0YSBvdmVyIHRvIGl0LCB0aGVuIHJlZGlyZWN0cyB0byB0aGUgY29ycmVjdCBwYWdlCgkgKiBUaGlzIG1ldGhvZCBkb2VzIGluY2x1ZGUgZXJyb3IgaGFuZGxpbmcsIGJ5IGxvYWRpbmcgdGhlIHN1Ym1pc3Npb24gaW4gYSB0cmFuc2llbnQgaWYgdGhlcmUgaXMgYW4gZXJyb3IsIGFuZCB0aGVuIGRlbGV0aW5nIGl0IHVwb24gc3VjY2VzcwoJICovCglwdWJsaWMgZnVuY3Rpb24gcHJlcGFyZV9maWVsZG1hcF9kYXRhKCkgewoJCSRlcnJvciAgICAgPSBmYWxzZTsKCQkkcG9zdF9kYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9QT1NULCBGSUxURVJfU0FOSVRJWkVfU1BFQ0lBTF9DSEFSUyApOwoJCSRjYWNoZWtleSAgPSB3cF9qc29uX2VuY29kZSggJHBvc3RfZGF0YSApOwoJCWlmICggZmFsc2UgIT09ICRjYWNoZWtleSApIHsKCQkJJGNhY2hla2V5ID0gbWQ1KCAkY2FjaGVrZXkgKTsKCQl9CgoJCWlmICggISBpc3NldCggJHBvc3RfZGF0YVsnbGFiZWwnXSApIHx8ICEgaXNzZXQoICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKSB8fCAhIGlzc2V0KCAkcG9zdF9kYXRhWyd3b3JkcHJlc3Nfb2JqZWN0J10gKSApIHsKCQkJJGVycm9yID0gdHJ1ZTsKCQl9CgkJaWYgKCB0cnVlID09PSAkZXJyb3IgKSB7CgkJCSR0aGlzLT5zZndwX3RyYW5zaWVudHMtPnNldCggJGNhY2hla2V5LCAkcG9zdF9kYXRhLCAkdGhpcy0+d29yZHByZXNzLT5vcHRpb25zWydjYWNoZV9leHBpcmF0aW9uJ10gKTsKCQkJaWYgKCAnJyAhPT0gJGNhY2hla2V5ICkgewoJCQkJJHVybCA9IGVzY191cmxfcmF3KCAkcG9zdF9kYXRhWydyZWRpcmVjdF91cmxfZXJyb3InXSApIC4gJyZ0cmFuc2llbnQ9JyAuICRjYWNoZWtleTsKCQkJfQoJCX0gZWxzZSB7IC8vIHRoZXJlIGFyZSBubyBlcnJvcnMKCQkJLy8gc2VuZCB0aGUgcm93IHRvIHRoZSBmaWVsZG1hcCBjbGFzcwoJCQkvLyBpZiBpdCBpcyBhZGQgb3IgY2xvbmUsIHVzZSB0aGUgY3JlYXRlIG1ldGhvZC4KCQkJJG1ldGhvZCAgICAgICAgICAgID0gZXNjX2F0dHIoICRwb3N0X2RhdGFbJ21ldGhvZCddICk7CgkJCSRzYWxlc2ZvcmNlX2ZpZWxkcyA9ICR0aGlzLT5nZXRfc2FsZXNmb3JjZV9vYmplY3RfZmllbGRzKAoJCQkJYXJyYXkoCgkJCQkJJ3NhbGVzZm9yY2Vfb2JqZWN0JyA9PiAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX29iamVjdCddLAoJCQkJKQoJCQkpOwoJCQkkd29yZHByZXNzX2ZpZWxkcyAgPSAkdGhpcy0+Z2V0X3dvcmRwcmVzc19vYmplY3RfZmllbGRzKCAkcG9zdF9kYXRhWyd3b3JkcHJlc3Nfb2JqZWN0J10gKTsKCQkJaWYgKCAnYWRkJyA9PT0gJG1ldGhvZCB8fCAnY2xvbmUnID09PSAkbWV0aG9kICkgewoJCQkJJHJlc3VsdCA9ICR0aGlzLT5tYXBwaW5ncy0+Y3JlYXRlX2ZpZWxkbWFwKCAkcG9zdF9kYXRhLCAkd29yZHByZXNzX2ZpZWxkcywgJHNhbGVzZm9yY2VfZmllbGRzICk7CgkJCX0gZWxzZWlmICggJ2VkaXQnID09PSAkbWV0aG9kICkgeyAvLyBpZiBpdCBpcyBlZGl0LCB1c2UgdGhlIHVwZGF0ZSBtZXRob2QuCgkJCQkkaWQgICAgID0gZXNjX2F0dHIoICRwb3N0X2RhdGFbJ2lkJ10gKTsKCQkJCSRyZXN1bHQgPSAkdGhpcy0+bWFwcGluZ3MtPnVwZGF0ZV9maWVsZG1hcCggJHBvc3RfZGF0YSwgJHdvcmRwcmVzc19maWVsZHMsICRzYWxlc2ZvcmNlX2ZpZWxkcywgJGlkICk7CgkJCX0KCQkJaWYgKCBmYWxzZSA9PT0gJHJlc3VsdCApIHsgLy8gaWYgdGhlIGRhdGFiYXNlIGRpZG4ndCBzYXZlLCBpdCdzIHN0aWxsIGFuIGVycm9yLgoJCQkJJHRoaXMtPnNmd3BfdHJhbnNpZW50cy0+c2V0KCAkY2FjaGVrZXksICRwb3N0X2RhdGEsICR0aGlzLT53b3JkcHJlc3MtPm9wdGlvbnNbJ2NhY2hlX2V4cGlyYXRpb24nXSApOwoJCQkJaWYgKCAnJyAhPT0gJGNhY2hla2V5ICkgewoJCQkJCSR1cmwgPSBlc2NfdXJsX3JhdyggJHBvc3RfZGF0YVsncmVkaXJlY3RfdXJsX2Vycm9yJ10gKSAuICcmdHJhbnNpZW50PScgLiAkY2FjaGVrZXk7CgkJCQl9CgkJCX0gZWxzZSB7CgkJCQkvLyBpZiB0aGUgdXNlciBoYXMgc2F2ZWQgYSBmaWVsZG1hcCwgY2xlYXIgdGhlIGN1cnJlbnRseSBydW5uaW5nIHF1ZXJ5IHZhbHVlIGlmIHRoZXJlIGlzIG9uZS4KCQkJCWlmICggJycgIT09IGdldF9vcHRpb24oICR0aGlzLT5vcHRpb25fcHJlZml4IC4gJ2N1cnJlbnRseV9wdWxsaW5nX3F1ZXJ5XycgLiAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX29iamVjdCddLCAnJyApICkgewoJCQkJCSR0aGlzLT5wdWxsLT5jbGVhcl9jdXJyZW50X3R5cGVfcXVlcnkoICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKTsKCQkJCX0KCQkJCWlmICggaXNzZXQoICRwb3N0X2RhdGFbJ3RyYW5zaWVudCddICkgKSB7IC8vIHRoZXJlIHdhcyBwcmV2aW91c2x5IGFuIGVycm9yIHNhdmVkLiBjYW4gZGVsZXRlIGl0IG5vdy4KCQkJCQkkdGhpcy0+c2Z3cF90cmFuc2llbnRzLT5kZWxldGUoIGVzY19hdHRyKCAkcG9zdF9kYXRhWydtYXBfdHJhbnNpZW50J10gKSApOwoJCQkJfQoJCQkJLy8gdGhlbiBzZW5kIHRoZSB1c2VyIHRvIHRoZSBsaXN0IG9mIGZpZWxkbWFwcy4KCQkJCSR1cmwgPSBlc2NfdXJsX3JhdyggJHBvc3RfZGF0YVsncmVkaXJlY3RfdXJsX3N1Y2Nlc3MnXSApOwoJCQl9CgkJfQoJCXdwX3NhZmVfcmVkaXJlY3QoICR1cmwgKTsKCQlleGl0KCk7Cgl9CgoJLyoqCgkgKiBEZWxldGUgZmllbGRtYXAgZGF0YSBhbmQgcmVkaXJlY3QgYWZ0ZXIgcHJvY2Vzc2luZwoJICogVGhpcyBydW5zIHdoZW4gdGhlIGRlbGV0ZSBsaW5rIGlzIGNsaWNrZWQsIGFmdGVyIHRoZSB1c2VyIGNvbmZpcm1zCgkgKiBJdCBpcyBwdWJsaWMgYmVjYXVzZSBpdCBkZXBlbmRzIG9uIGFuIGFkbWluIGhvb2sKCSAqIEl0IHRoZW4gY2FsbHMgdGhlIE9iamVjdF9TeW5jX1NmX01hcHBpbmcgY2xhc3MgYW5kIHRoZSBkZWxldGUgbWV0aG9kCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBkZWxldGVfZmllbGRtYXAoKSB7CgkJJHBvc3RfZGF0YSA9IGZpbHRlcl9pbnB1dF9hcnJheSggSU5QVVRfUE9TVCwgRklMVEVSX1NBTklUSVpFX1NQRUNJQUxfQ0hBUlMgKTsKCQlpZiAoICRwb3N0X2RhdGFbJ2lkJ10gKSB7CgkJCSRyZXN1bHQgPSAkdGhpcy0+bWFwcGluZ3MtPmRlbGV0ZV9maWVsZG1hcCggJHBvc3RfZGF0YVsnaWQnXSApOwoJCQlpZiAoIHRydWUgPT09ICRyZXN1bHQgKSB7CgkJCQkkdXJsID0gZXNjX3VybF9yYXcoICRwb3N0X2RhdGFbJ3JlZGlyZWN0X3VybF9zdWNjZXNzJ10gKTsKCQkJfSBlbHNlIHsKCQkJCSR1cmwgPSBlc2NfdXJsX3JhdyggJHBvc3RfZGF0YVsncmVkaXJlY3RfdXJsX2Vycm9yJ10gLiAnJmlkPScgLiAkcG9zdF9kYXRhWydpZCddICk7CgkJCX0KCQkJd3Bfc2FmZV9yZWRpcmVjdCggJHVybCApOwoJCQlleGl0KCk7CgkJfQoJfQoKCS8qKgoJICogUHJlcGFyZSBvYmplY3QgZGF0YSBhbmQgcmVkaXJlY3QgYWZ0ZXIgcHJvY2Vzc2luZwoJICogVGhpcyBydW5zIHdoZW4gdGhlIHVwZGF0ZSBmb3JtIGlzIHN1Ym1pdHRlZAoJICogSXQgaXMgcHVibGljIGJlY2F1c2UgaXQgZGVwZW5kcyBvbiBhbiBhZG1pbiBob29rCgkgKiBJdCB0aGVuIGNhbGxzIHRoZSBPYmplY3RfU3luY19TZl9NYXBwaW5nIGNsYXNzIGFuZCBzZW5kcyBwcmVwYXJlZCBkYXRhIG92ZXIgdG8gaXQsIHRoZW4gcmVkaXJlY3RzIHRvIHRoZSBjb3JyZWN0IHBhZ2UKCSAqIFRoaXMgbWV0aG9kIGRvZXMgaW5jbHVkZSBlcnJvciBoYW5kbGluZywgYnkgbG9hZGluZyB0aGUgc3VibWlzc2lvbiBpbiBhIHRyYW5zaWVudCBpZiB0aGVyZSBpcyBhbiBlcnJvciwgYW5kIHRoZW4gZGVsZXRpbmcgaXQgdXBvbiBzdWNjZXNzCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBwcmVwYXJlX29iamVjdF9tYXBfZGF0YSgpIHsKCQkkZXJyb3IgICAgID0gZmFsc2U7CgkJJHBvc3RfZGF0YSA9IGZpbHRlcl9pbnB1dF9hcnJheSggSU5QVVRfUE9TVCwgRklMVEVSX1NBTklUSVpFX1NQRUNJQUxfQ0hBUlMgKTsKCQkkY2FjaGVrZXkgID0gd3BfanNvbl9lbmNvZGUoICRwb3N0X2RhdGEgKTsKCQlpZiAoIGZhbHNlICE9PSAkY2FjaGVrZXkgKSB7CgkJCSRjYWNoZWtleSA9IG1kNSggJGNhY2hla2V5ICk7CgkJfQoKCQlpZiAoICEgaXNzZXQoICRwb3N0X2RhdGFbJ3dvcmRwcmVzc19pZCddICkgfHwgISBpc3NldCggJHBvc3RfZGF0YVsnc2FsZXNmb3JjZV9pZCddICkgKSB7CgkJCSRlcnJvciA9IHRydWU7CgkJfQoJCWlmICggdHJ1ZSA9PT0gJGVycm9yICkgewoJCQkkdGhpcy0+c2Z3cF90cmFuc2llbnRzLT5zZXQoICRjYWNoZWtleSwgJHBvc3RfZGF0YSwgJHRoaXMtPndvcmRwcmVzcy0+b3B0aW9uc1snY2FjaGVfZXhwaXJhdGlvbiddICk7CgkJCWlmICggJycgIT09ICRjYWNoZWtleSApIHsKCQkJCSR1cmwgPSBlc2NfdXJsX3JhdyggJHBvc3RfZGF0YVsncmVkaXJlY3RfdXJsX2Vycm9yJ10gKSAuICcmbWFwX3RyYW5zaWVudD0nIC4gJGNhY2hla2V5OwoJCQl9CgkJfSBlbHNlIHsgLy8gdGhlcmUgYXJlIG5vIGVycm9ycwoJCQkvLyBzZW5kIHRoZSByb3cgdG8gdGhlIG9iamVjdCBtYXAgY2xhc3MuCgkJCSRtZXRob2QgPSBlc2NfYXR0ciggJHBvc3RfZGF0YVsnbWV0aG9kJ10gKTsKCQkJaWYgKCAnZWRpdCcgPT09ICRtZXRob2QgKSB7IC8vIGlmIGl0IGlzIGVkaXQsIHVzZSB0aGUgdXBkYXRlIG1ldGhvZC4KCQkJCSRpZCAgICAgPSBlc2NfYXR0ciggJHBvc3RfZGF0YVsnaWQnXSApOwoJCQkJJHJlc3VsdCA9ICR0aGlzLT5tYXBwaW5ncy0+dXBkYXRlX29iamVjdF9tYXAoICRwb3N0X2RhdGEsICRpZCApOwoJCQl9CgkJCWlmICggZmFsc2UgPT09ICRyZXN1bHQgKSB7IC8vIGlmIHRoZSBkYXRhYmFzZSBkaWRuJ3Qgc2F2ZSwgaXQncyBzdGlsbCBhbiBlcnJvci4KCQkJCSR0aGlzLT5zZndwX3RyYW5zaWVudHMtPnNldCggJGNhY2hla2V5LCAkcG9zdF9kYXRhLCAkdGhpcy0+d29yZHByZXNzLT5vcHRpb25zWydjYWNoZV9leHBpcmF0aW9uJ10gKTsKCQkJCWlmICggJycgIT09ICRjYWNoZWtleSApIHsKCQkJCQkkdXJsID0gZXNjX3VybF9yYXcoICRwb3N0X2RhdGFbJ3JlZGlyZWN0X3VybF9lcnJvciddICkgLiAnJm1hcF90cmFuc2llbnQ9JyAuICRjYWNoZWtleTsKCQkJCX0KCQkJfSBlbHNlIHsKCQkJCWlmICggaXNzZXQoICRwb3N0X2RhdGFbJ21hcF90cmFuc2llbnQnXSApICkgeyAvLyB0aGVyZSB3YXMgcHJldmlvdXNseSBhbiBlcnJvciBzYXZlZC4gY2FuIGRlbGV0ZSBpdCBub3cuCgkJCQkJJHRoaXMtPnNmd3BfdHJhbnNpZW50cy0+ZGVsZXRlKCBlc2NfYXR0ciggJHBvc3RfZGF0YVsnbWFwX3RyYW5zaWVudCddICkgKTsKCQkJCX0KCQkJCS8vIHRoZW4gc2VuZCB0aGUgdXNlciB0byB0aGUgc3VjY2VzcyByZWRpcmVjdCB1cmwuCgkJCQkkdXJsID0gZXNjX3VybF9yYXcoICRwb3N0X2RhdGFbJ3JlZGlyZWN0X3VybF9zdWNjZXNzJ10gKTsKCQkJfQoJCX0KCQl3cF9zYWZlX3JlZGlyZWN0KCAkdXJsICk7CgkJZXhpdCgpOwoJfQoKCS8qKgoJICogRGVsZXRlIG9iamVjdCBtYXAgZGF0YSBhbmQgcmVkaXJlY3QgYWZ0ZXIgcHJvY2Vzc2luZwoJICogVGhpcyBydW5zIHdoZW4gdGhlIGRlbGV0ZSBsaW5rIGlzIGNsaWNrZWQgb24gYW4gZXJyb3Igcm93LCBhZnRlciB0aGUgdXNlciBjb25maXJtcwoJICogSXQgaXMgcHVibGljIGJlY2F1c2UgaXQgZGVwZW5kcyBvbiBhbiBhZG1pbiBob29rCgkgKiBJdCB0aGVuIGNhbGxzIHRoZSBPYmplY3RfU3luY19TZl9NYXBwaW5nIGNsYXNzIGFuZCB0aGUgZGVsZXRlIG1ldGhvZAoJICovCglwdWJsaWMgZnVuY3Rpb24gZGVsZXRlX29iamVjdF9tYXAoKSB7CgkJJHBvc3RfZGF0YSA9IGZpbHRlcl9pbnB1dF9hcnJheSggSU5QVVRfUE9TVCwgRklMVEVSX1NBTklUSVpFX1NQRUNJQUxfQ0hBUlMgKTsKCQlpZiAoIGlzc2V0KCAkcG9zdF9kYXRhWydpZCddICkgKSB7CgkJCSRyZXN1bHQgPSAkdGhpcy0+bWFwcGluZ3MtPmRlbGV0ZV9vYmplY3RfbWFwKCAkcG9zdF9kYXRhWydpZCddICk7CgkJCWlmICggdHJ1ZSA9PT0gJHJlc3VsdCApIHsKCQkJCSR1cmwgPSBlc2NfdXJsX3JhdyggJHBvc3RfZGF0YVsncmVkaXJlY3RfdXJsX3N1Y2Nlc3MnXSApOwoJCQl9IGVsc2UgewoJCQkJJHVybCA9IGVzY191cmxfcmF3KCAkcG9zdF9kYXRhWydyZWRpcmVjdF91cmxfZXJyb3InXSAuICcmaWQ9JyAuICRwb3N0X2RhdGFbJ2lkJ10gKTsKCQkJfQoJCQl3cF9zYWZlX3JlZGlyZWN0KCAkdXJsICk7CgkJCWV4aXQoKTsKCQl9IGVsc2VpZiAoICRwb3N0X2RhdGFbJ2RlbGV0ZSddICkgewoJCQkkcG9zdF9kYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9QT1NULCBGSUxURVJfU0FOSVRJWkVfU1BFQ0lBTF9DSEFSUyApOwoJCQkkY2FjaGVrZXkgID0gd3BfanNvbl9lbmNvZGUoICRwb3N0X2RhdGEgKTsKCQkJaWYgKCBmYWxzZSAhPT0gJGNhY2hla2V5ICkgewoJCQkJJGNhY2hla2V5ID0gbWQ1KCAkY2FjaGVrZXkgKTsKCQkJfQoJCQkkZXJyb3IgPSBmYWxzZTsKCQkJaWYgKCAhIGlzc2V0KCAkcG9zdF9kYXRhWydkZWxldGUnXSApICkgewoJCQkJJGVycm9yID0gdHJ1ZTsKCQkJfQoJCQlpZiAoIHRydWUgPT09ICRlcnJvciApIHsKCQkJCSR0aGlzLT5zZndwX3RyYW5zaWVudHMtPnNldCggJGNhY2hla2V5LCAkcG9zdF9kYXRhLCAkdGhpcy0+d29yZHByZXNzLT5vcHRpb25zWydjYWNoZV9leHBpcmF0aW9uJ10gKTsKCQkJCWlmICggJycgIT09ICRjYWNoZWtleSApIHsKCQkJCQkkdXJsID0gZXNjX3VybF9yYXcoICRwb3N0X2RhdGFbJ3JlZGlyZWN0X3VybF9lcnJvciddICkgLiAnJm1hcHBpbmdfZXJyb3JfdHJhbnNpZW50PScgLiAkY2FjaGVrZXk7CgkJCQl9CgkJCX0gZWxzZSB7IC8vIHRoZXJlIGFyZSBubyBlcnJvcnMuCgkJCQkkcmVzdWx0ID0gJHRoaXMtPm1hcHBpbmdzLT5kZWxldGVfb2JqZWN0X21hcCggYXJyYXlfa2V5cyggJHBvc3RfZGF0YVsnZGVsZXRlJ10gKSApOwoJCQkJaWYgKCB0cnVlID09PSAkcmVzdWx0ICkgewoJCQkJCSR1cmwgPSBlc2NfdXJsX3JhdyggJHBvc3RfZGF0YVsncmVkaXJlY3RfdXJsX3N1Y2Nlc3MnXSApOwoJCQkJfQoKCQkJCWlmICggZmFsc2UgPT09ICRyZXN1bHQgKSB7IC8vIGlmIHRoZSBkYXRhYmFzZSBkaWRuJ3Qgc2F2ZSwgaXQncyBzdGlsbCBhbiBlcnJvci4KCQkJCQkkdGhpcy0+c2Z3cF90cmFuc2llbnRzLT5zZXQoICRjYWNoZWtleSwgJHBvc3RfZGF0YSwgJHRoaXMtPndvcmRwcmVzcy0+b3B0aW9uc1snY2FjaGVfZXhwaXJhdGlvbiddICk7CgkJCQkJaWYgKCAnJyAhPT0gJGNhY2hla2V5ICkgewoJCQkJCQkkdXJsID0gZXNjX3VybF9yYXcoICRwb3N0X2RhdGFbJ3JlZGlyZWN0X3VybF9lcnJvciddICkgLiAnJm1hcHBpbmdfZXJyb3JfdHJhbnNpZW50PScgLiAkY2FjaGVrZXk7CgkJCQkJfQoJCQkJfSBlbHNlIHsKCQkJCQlpZiAoIGlzc2V0KCAkcG9zdF9kYXRhWydtYXBwaW5nX2Vycm9yX3RyYW5zaWVudCddICkgKSB7IC8vIHRoZXJlIHdhcyBwcmV2aW91c2x5IGFuIGVycm9yIHNhdmVkLiBjYW4gZGVsZXRlIGl0IG5vdy4KCQkJCQkJJHRoaXMtPnNmd3BfdHJhbnNpZW50cy0+ZGVsZXRlKCBlc2NfYXR0ciggJHBvc3RfZGF0YVsnbWFwcGluZ19lcnJvcl90cmFuc2llbnQnXSApICk7CgkJCQkJfQoJCQkJCS8vIHRoZW4gc2VuZCB0aGUgdXNlciB0byB0aGUgbGlzdCBvZiBmaWVsZG1hcHMuCgkJCQkJJHVybCA9IGVzY191cmxfcmF3KCAkcG9zdF9kYXRhWydyZWRpcmVjdF91cmxfc3VjY2VzcyddICk7CgkJCQl9CgkJCX0KCQkJd3Bfc2FmZV9yZWRpcmVjdCggJHVybCApOwoJCQlleGl0KCk7CgkJfQoJfQoKCS8qKgoJICogSW1wb3J0IGEganNvbiBmaWxlIGFuZCB1c2UgaXQgZm9yIHBsdWdpbiBkYXRhCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBpbXBvcnRfanNvbl9maWxlKCkgewoKCQlpZiAoICEgd3BfdmVyaWZ5X25vbmNlKCAkX1BPU1RbJ29iamVjdF9zeW5jX2Zvcl9zYWxlc2ZvcmNlX25vbmNlX2ltcG9ydCddLCAnb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2Vfbm9uY2VfaW1wb3J0JyApICkgewoJCQlyZXR1cm47CgkJfQoJCWlmICggISBjdXJyZW50X3VzZXJfY2FuKCAnbWFuYWdlX29wdGlvbnMnICkgKSB7CgkJCXJldHVybjsKCQl9CgkJJHBhdGggICAgICA9ICRfRklMRVNbJ2ltcG9ydF9maWxlJ11bJ25hbWUnXTsKCQkkZXh0ZW5zaW9uID0gcGF0aGluZm8oICRwYXRoLCBQQVRISU5GT19FWFRFTlNJT04gKTsKCQlpZiAoICdqc29uJyAhPT0gJGV4dGVuc2lvbiApIHsKCQkJd3BfZGllKCBlc2NfaHRtbF9fKCAnUGxlYXNlIHVwbG9hZCBhIHZhbGlkIC5qc29uIGZpbGUnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgKTsKCQl9CgoJCSRpbXBvcnRfZmlsZSA9ICRfRklMRVNbJ2ltcG9ydF9maWxlJ11bJ3RtcF9uYW1lJ107CgkJaWYgKCBlbXB0eSggJGltcG9ydF9maWxlICkgKSB7CgkJCXdwX2RpZSggZXNjX2h0bWxfXyggJ1BsZWFzZSB1cGxvYWQgYSBmaWxlIHRvIGltcG9ydCcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSApOwoJCX0KCgkJLy8gUmV0cmlldmUgdGhlIGRhdGEgZnJvbSB0aGUgZmlsZSBhbmQgY29udmVydCB0aGUganNvbiBvYmplY3QgdG8gYW4gYXJyYXkuCgkJJGRhdGEgPSAoYXJyYXkpIGpzb25fZGVjb2RlKCBmaWxlX2dldF9jb250ZW50cyggJGltcG9ydF9maWxlICksIHRydWUgKTsgLy8gcGhwY3M6aWdub3JlIFdvcmRQcmVzcy5XUC5BbHRlcm5hdGl2ZUZ1bmN0aW9ucy5maWxlX2dldF9jb250ZW50c19maWxlX2dldF9jb250ZW50cwoKCQkkb3ZlcndyaXRlID0gaXNzZXQoICRfUE9TVFsnb3ZlcndyaXRlJ10gKSA/IGVzY19hdHRyKCAkX1BPU1RbJ292ZXJ3cml0ZSddICkgOiAnJzsKCQlpZiAoIHRydWUgPT09IGZpbHRlcl92YXIoICRvdmVyd3JpdGUsIEZJTFRFUl9WQUxJREFURV9CT09MRUFOICkgKSB7CgkJCWlmICggaXNzZXQoICRkYXRhWydmaWVsZG1hcHMnXSApICkgewoJCQkJJGZpZWxkbWFwcyA9ICR0aGlzLT5tYXBwaW5ncy0+Z2V0X2ZpZWxkbWFwcygpOwoJCQkJZm9yZWFjaCAoICRmaWVsZG1hcHMgYXMgJGZpZWxkbWFwICkgewoJCQkJCSRpZCAgICAgPSAkZmllbGRtYXBbJ2lkJ107CgkJCQkJJGRlbGV0ZSA9ICR0aGlzLT5tYXBwaW5ncy0+ZGVsZXRlX2ZpZWxkbWFwKCAkaWQgKTsKCQkJCX0KCQkJfQoJCQlpZiAoIGlzc2V0KCAkZGF0YVsnb2JqZWN0X21hcHMnXSApICkgewoJCQkJJG9iamVjdF9tYXBzID0gJHRoaXMtPm1hcHBpbmdzLT5nZXRfYWxsX29iamVjdF9tYXBzKCk7CgkJCQlmb3JlYWNoICggJG9iamVjdF9tYXBzIGFzICRvYmplY3RfbWFwICkgewoJCQkJCSRpZCAgICAgPSAkb2JqZWN0X21hcFsnaWQnXTsKCQkJCQkkZGVsZXRlID0gJHRoaXMtPm1hcHBpbmdzLT5kZWxldGVfb2JqZWN0X21hcCggJGlkICk7CgkJCQl9CgkJCX0KCQkJaWYgKCBpc3NldCggJGRhdGFbJ3BsdWdpbl9zZXR0aW5ncyddICkgKSB7CgkJCQlmb3JlYWNoICggJGRhdGFbJ3BsdWdpbl9zZXR0aW5ncyddIGFzICRrZXkgPT4gJHZhbHVlICkgewoJCQkJCWRlbGV0ZV9vcHRpb24oICR2YWx1ZVsnb3B0aW9uX25hbWUnXSApOwoJCQkJfQoJCQl9CgkJfQoKCQkvLyBpZiB0aGUgb3B0aW9uIHNheXMgdG8sIHNldCBhbGwgdGhlIGltcG9ydGVkIGZpZWxkbWFwcyB0byBpbmFjdGl2ZS4KCQkkaW1wb3J0X2ZpZWxkbWFwc19pbmFjdGl2ZSA9IGlzc2V0KCAkX1BPU1RbJ2ltcG9ydF9maWVsZG1hcHNfaW5hY3RpdmUnXSApID8gZXNjX2F0dHIoICRfUE9TVFsnaW1wb3J0X2ZpZWxkbWFwc19pbmFjdGl2ZSddICkgOiAnJzsKCQlpZiAoIHRydWUgPT09IGZpbHRlcl92YXIoICRpbXBvcnRfZmllbGRtYXBzX2luYWN0aXZlLCBGSUxURVJfVkFMSURBVEVfQk9PTEVBTiApICkgewoJCQlpZiAoIGlzc2V0KCAkZGF0YVsnZmllbGRtYXBzJ10gKSApIHsKCQkJCWZvcmVhY2ggKCAkZGF0YVsnZmllbGRtYXBzJ10gYXMgJGtleSA9PiAkZmllbGRtYXAgKSB7CgkJCQkJJGRhdGFbJ2ZpZWxkbWFwcyddWyAka2V5IF1bJ2ZpZWxkbWFwX3N0YXR1cyddID0gJ2luYWN0aXZlJzsKCQkJCX0KCQkJfQoJCX0KCgkJJHN1Y2Nlc3MgPSB0cnVlOwoKCQlpZiAoIGlzc2V0KCAkZGF0YVsnZmllbGRtYXBzJ10gKSApIHsKCQkJJHN1Y2Nlc3NmdWxfZmllbGRtYXBzID0gYXJyYXkoKTsKCQkJJGVycm9yX2ZpZWxkbWFwcyAgICAgID0gYXJyYXkoKTsKCQkJZm9yZWFjaCAoICRkYXRhWydmaWVsZG1hcHMnXSBhcyAkZmllbGRtYXAgKSB7CgkJCQl1bnNldCggJGZpZWxkbWFwWydpZCddICk7CgkJCQkkY3JlYXRlID0gJHRoaXMtPm1hcHBpbmdzLT5jcmVhdGVfZmllbGRtYXAoICRmaWVsZG1hcCApOwoJCQkJaWYgKCBmYWxzZSA9PT0gJGNyZWF0ZSApIHsKCQkJCQkkc3VjY2VzcyA9IGZhbHNlOwoJCQkJfQoJCQkJaWYgKCBmYWxzZSA9PT0gJGNyZWF0ZSApIHsKCQkJCQkkZXJyb3JfZmllbGRtYXBzW10gPSAkZmllbGRtYXA7CgkJCQl9IGVsc2UgewoJCQkJCSRzdWNjZXNzZnVsX2ZpZWxkbWFwc1tdID0gJGNyZWF0ZTsKCQkJCX0KCQkJfQoJCX0KCgkJaWYgKCBpc3NldCggJGRhdGFbJ29iamVjdF9tYXBzJ10gKSApIHsKCQkJJHN1Y2Nlc3NmdWxfb2JqZWN0X21hcHMgPSBhcnJheSgpOwoJCQkkZXJyb3Jfb2JqZWN0X21hcHMgICAgICA9IGFycmF5KCk7CgkJCWZvcmVhY2ggKCAkZGF0YVsnb2JqZWN0X21hcHMnXSBhcyAkb2JqZWN0X21hcCApIHsKCQkJCXVuc2V0KCAkb2JqZWN0X21hcFsnaWQnXSApOwoJCQkJaWYgKCBpc3NldCggJG9iamVjdF9tYXBbJ29iamVjdF90eXBlJ10gKSApIHsKCQkJCQkkc2Zfc3luY190cmlnZ2VyID0gJHRoaXMtPm1hcHBpbmdzLT5zeW5jX3NmX2NyZWF0ZTsKCQkJCQkkY3JlYXRlICAgICAgICAgID0gJHRoaXMtPnB1bGwtPnNhbGVzZm9yY2VfcHVsbF9wcm9jZXNzX3JlY29yZHMoICRvYmplY3RfbWFwWydvYmplY3RfdHlwZSddLCAkb2JqZWN0X21hcFsnc2FsZXNmb3JjZV9pZCddLCAkc2Zfc3luY190cmlnZ2VyICk7CgkJCQl9IGVsc2UgewoJCQkJCSRjcmVhdGUgPSAkdGhpcy0+bWFwcGluZ3MtPmNyZWF0ZV9vYmplY3RfbWFwKCAkb2JqZWN0X21hcCApOwoJCQkJfQoJCQkJaWYgKCBmYWxzZSA9PT0gJGNyZWF0ZSApIHsKCQkJCQkkZXJyb3Jfb2JqZWN0X21hcHNbXSA9ICRvYmplY3RfbWFwOwoJCQkJfSBlbHNlIHsKCQkJCQkkc3VjY2Vzc2Z1bF9vYmplY3RfbWFwc1tdID0gJGNyZWF0ZTsKCQkJCX0KCQkJfQoJCX0KCgkJaWYgKCBpc3NldCggJGRhdGFbJ3BsdWdpbl9zZXR0aW5ncyddICkgKSB7CgkJCWZvcmVhY2ggKCAkZGF0YVsncGx1Z2luX3NldHRpbmdzJ10gYXMgJGtleSA9PiAkdmFsdWUgKSB7CgkJCQl1cGRhdGVfb3B0aW9uKCAkdmFsdWVbJ29wdGlvbl9uYW1lJ10sIG1heWJlX3Vuc2VyaWFsaXplKCAkdmFsdWVbJ29wdGlvbl92YWx1ZSddICksICR2YWx1ZVsnYXV0b2xvYWQnXSApOwoJCQl9CgkJfQoKCQlpZiAoICEgZW1wdHkoICRlcnJvcl9maWVsZG1hcHMgKSAmJiAhIGVtcHR5KCAkZXJyb3Jfb2JqZWN0X21hcHMgKSApIHsKCQkJJHN0YXR1cyA9ICdlcnJvcic7CgkJCSRib2R5ICAgPSBzcHJpbnRmKCBlc2NfaHRtbF9fKCAnVGhlc2UgYXJlIHRoZSBpbXBvcnQgaXRlbXMgdGhhdCB3ZXJlIG5vdCBhYmxlIHRvIHNhdmU6ICcsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSAuICc8dWw+JyApOwoJCQlmb3JlYWNoICggJGVycm9yX2ZpZWxkbWFwcyBhcyAkZmllbGRtYXAgKSB7CgkJCQkkYm9keSAuPSBzcHJpbnRmKAoJCQkJCS8vIHRyYW5zbGF0b3JzOiBwbGFjZWhvbGRlcnMgYXJlOiAxKSB0aGUgZmllbGRtYXAgcm93IElELCAyKSB0aGUgU2FsZXNmb3JjZSBvYmplY3QgdHlwZSwgMykgdGhlIFdvcmRQcmVzcyBvYmplY3QgdHlwZS4KCQkJCQknPGxpPicgLiBlc2NfaHRtbF9fKCAnRmllbGRtYXAgaWQgKGlmIGl0IGV4aXN0cyk6ICUxJHMuIFNhbGVzZm9yY2Ugb2JqZWN0IHR5cGU6ICUyJHMuIFdvcmRQcmVzcyBvYmplY3QgdHlwZTogJTMkcycsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSAuICc8L2xpPicsCgkJCQkJaXNzZXQoICRmaWVsZG1hcFsnaWQnXSApID8gYWJzaW50KCAkZmllbGRtYXBbJ2lkJ10gKSA6ICcnLAoJCQkJCWVzY19hdHRyKCAkZmllbGRtYXBbJ3NhbGVzZm9yY2Vfb2JqZWN0J10gKSwKCQkJCQllc2NfYXR0ciggJGZpZWxkbWFwWyd3b3JkcHJlc3Nfb2JqZWN0J10gKQoJCQkJKTsKCQkJfQoJCQlmb3JlYWNoICggJGVycm9yX29iamVjdF9tYXBzIGFzICRtYXBwaW5nX29iamVjdCApIHsKCQkJCSRib2R5IC49IHNwcmludGYoCgkJCQkJLy8gdHJhbnNsYXRvcnM6IHBsYWNlaG9sZGVycyBhcmU6IDEpIHRoZSBtYXBwaW5nIG9iamVjdCByb3cgSUQsIDIpIHRoZSBJRCBvZiB0aGUgU2FsZXNmb3JjZSBvYmplY3QsIDMpIHRoZSBXb3JkUHJlc3Mgb2JqZWN0IHR5cGUuCgkJCQkJJzxsaT4nIC4gZXNjX2h0bWxfXyggJ01hcHBpbmcgb2JqZWN0IGlkIChpZiBpdCBleGlzdHMpOiAlMSRzLiBTYWxlc2ZvcmNlIElkOiAlMiRzLiBXb3JkUHJlc3Mgb2JqZWN0IHR5cGU6ICUzJHMnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgLiAnPC9saT4nLAoJCQkJCWlzc2V0KCAkbWFwcGluZ19vYmplY3RbJ2lkJ10gKSA/IGFic2ludCggJG1hcHBpbmdfb2JqZWN0WydpZCddICkgOiAnJywKCQkJCQllc2NfYXR0ciggJG1hcHBpbmdfb2JqZWN0WydzYWxlc2ZvcmNlX2lkJ10gKSwKCQkJCQllc2NfYXR0ciggJG1hcHBpbmdfb2JqZWN0Wyd3b3JkcHJlc3Nfb2JqZWN0J10gKQoJCQkJKTsKCQkJfQoJCQkkYm9keSAuPSBzcHJpbnRmKCAnPC91bD4nICk7CgoJCQkkdGhpcy0+bG9nZ2luZy0+c2V0dXAoCgkJCQlzcHJpbnRmKAoJCQkJCS8vIHRyYW5zbGF0b3JzOiAlMSRzIGlzIHRoZSBsb2cgc3RhdHVzLgoJCQkJCWVzY19odG1sX18oICclMSRzIG9uIGltcG9ydDogc29tZSBvZiB0aGUgcm93cyB3ZXJlIHVuYWJsZSB0byBzYXZlLiBSZWFkIHRoaXMgcG9zdCBmb3IgZGV0YWlscy4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICksCgkJCQkJdWNmaXJzdCggZXNjX2F0dHIoICRzdGF0dXMgKSApCgkJCQkpLAoJCQkJJGJvZHksCgkJCQkwLAoJCQkJMCwKCQkJCSRzdGF0dXMKCQkJKTsKCQl9CgoJCWlmICggZW1wdHkoICRlcnJvcl9maWVsZG1hcHMgKSAmJiBlbXB0eSggJGVycm9yX29iamVjdF9tYXBzICkgJiYgKCAhIGVtcHR5KCAkc3VjY2Vzc2Z1bF9maWVsZG1hcHMgKSB8fCAhIGVtcHR5KCAkc3VjY2Vzc2Z1bF9vYmplY3RfbWFwcyApICkgKSB7CgkJCSR0aGlzLT5jbGVhcl9jYWNoZSggZmFsc2UgKTsKCQkJd3Bfc2FmZV9yZWRpcmVjdCggZ2V0X2FkbWluX3VybCggbnVsbCwgJ29wdGlvbnMtZ2VuZXJhbC5waHA/cGFnZT0nIC4gJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSAuICcmdGFiPWltcG9ydC1leHBvcnQmZGF0YV9zYXZlZD10cnVlJyApICk7CgkJCWV4aXQ7CgkJfSBlbHNlaWYgKCAhIGVtcHR5KCAkZXJyb3JfZmllbGRtYXBzICkgJiYgISBlbXB0eSggJHN1Y2Nlc3NmdWxfZmllbGRtYXBzICkgKSB7CgkJCSR0aGlzLT5jbGVhcl9jYWNoZSggZmFsc2UgKTsKCQkJd3Bfc2FmZV9yZWRpcmVjdCggZ2V0X2FkbWluX3VybCggbnVsbCwgJ29wdGlvbnMtZ2VuZXJhbC5waHA/cGFnZT0nIC4gJHRoaXMtPmFkbWluX3NldHRpbmdzX3VybF9wYXJhbSAuICcmdGFiPWltcG9ydC1leHBvcnQmZGF0YV9zYXZlZD1wYXJ0aWFsJyApICk7CgkJfSBlbHNlaWYgKCAhIGVtcHR5KCAkZXJyb3Jfb2JqZWN0X21hcHMgKSAmJiAhIGVtcHR5KCAkc3VjY2Vzc2Z1bF9vYmplY3RfbWFwcyApICkgewoJCQkkdGhpcy0+Y2xlYXJfY2FjaGUoIGZhbHNlICk7CgkJCXdwX3NhZmVfcmVkaXJlY3QoIGdldF9hZG1pbl91cmwoIG51bGwsICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9JyAuICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gLiAnJnRhYj1pbXBvcnQtZXhwb3J0JmRhdGFfc2F2ZWQ9cGFydGlhbCcgKSApOwoJCX0gZWxzZSB7CgkJCXdwX3NhZmVfcmVkaXJlY3QoIGdldF9hZG1pbl91cmwoIG51bGwsICdvcHRpb25zLWdlbmVyYWwucGhwP3BhZ2U9JyAuICR0aGlzLT5hZG1pbl9zZXR0aW5nc191cmxfcGFyYW0gLiAnJnRhYj1pbXBvcnQtZXhwb3J0JmRhdGFfc2F2ZWQ9ZmFsc2UnICkgKTsKCQkJZXhpdDsKCQl9CgoJfQoKCS8qKgoJICogQ3JlYXRlIGEganNvbiBmaWxlIGZvciBleHBvcnRpbmcKCSAqLwoJcHVibGljIGZ1bmN0aW9uIGV4cG9ydF9qc29uX2ZpbGUoKSB7CgoJCWlmICggISB3cF92ZXJpZnlfbm9uY2UoICRfUE9TVFsnb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2Vfbm9uY2VfZXhwb3J0J10sICdvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZV9ub25jZV9leHBvcnQnICkgKSB7CgkJCXJldHVybjsKCQl9CgkJaWYgKCAhIGN1cnJlbnRfdXNlcl9jYW4oICdtYW5hZ2Vfb3B0aW9ucycgKSApIHsKCQkJcmV0dXJuOwoJCX0KCQkkcG9zdF9kYXRhID0gZmlsdGVyX2lucHV0X2FycmF5KCBJTlBVVF9QT1NULCBGSUxURVJfU0FOSVRJWkVfU1BFQ0lBTF9DSEFSUyApOwoJCSRleHBvcnQgICAgPSBhcnJheSgpOwoJCWlmICggaW5fYXJyYXkoICdmaWVsZG1hcHMnLCAkcG9zdF9kYXRhWydleHBvcnQnXSwgdHJ1ZSApICkgewoJCQkkZXhwb3J0WydmaWVsZG1hcHMnXSA9ICR0aGlzLT5tYXBwaW5ncy0+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+JyAuIGVzY19odG1sKCAkbWVzc2FnZSApIC4gJzwvcD4nOwoJCX0gZWxzZSB7CgkJCXJldHVybiBhcnJheSgKCQkJCSdtZXNzYWdlJyA9PiBlc2NfaHRtbCggJG1lc3NhZ2UgKSwKCQkJCSdzdWNjZXNzJyA9PiAkc3VjY2VzcywKCQkJKTsKCQl9Cgl9CgoJLyoqCgkgKiBDaGVjayBXb3JkUHJlc3MgQWRtaW4gcGVybWlzc2lvbnMKCSAqIENoZWNrIGlmIHRoZSBjdXJyZW50IHVzZXIgaXMgYWxsb3dlZCB0byBhY2Nlc3MgdGhlIFNhbGVzZm9yY2UgcGx1Z2luIG9wdGlvbnMKCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBjaGVja193b3JkcHJlc3NfYWRtaW5fcGVybWlzc2lvbnMoKSB7CgoJCS8vIG9uZSBwcm9ncmFtbWF0aWMgd2F5IHRvIGdpdmUgdGhpcyBjYXBhYmlsaXR5IHRvIGFkZGl0aW9uYWwgdXNlciByb2xlcyBpcyB0aGUKCQkvLyBvYmplY3Rfc3luY19mb3Jfc2FsZXNmb3JjZV9yb2xlc19jb25maWd1cmVfc2FsZXNmb3JjZSBob29rCgkJLy8gaXQgcnVucyBvbiBhY3RpdmF0aW9uIG9mIHRoaXMgcGx1Z2luLCBhbmQgd2lsbCBhc3NpZ24gdGhlIGJlbG93IGNhcGFiaWxpdHkgdG8gYW55IHJvbGUKCQkvLyBjb21pbmcgZnJvbSB0aGUgaG9vay4KCgkJLy8gYWx0ZXJuYXRpdmVseSwgb3RoZXIgcm9sZXMgY2FuIGdldCB0aGlzIGNhcGFiaWxpdHkgaW4gd2hhdGV2ZXIgb3RoZXIgd2F5IHlvdSBsaWtlCgkJLy8gcG9pbnQgaXM6IHRvIGFkbWluaXN0ZXIgdGhpcyBwbHVnaW4sIHlvdSBuZWVkIHRoaXMgY2FwYWJpbGl0eS4KCgkJaWYgKCAhIGN1cnJlbnRfdXNlcl9jYW4oICdjb25maWd1cmVfc2FsZXNmb3JjZScgKSApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0gZWxzZSB7CgkJCXJldHVybiB0cnVlOwoJCX0KCgl9CgoJLyoqCgkgKiBDaGVjayBXb3JkUHJlc3MgU1NMIHN0YXR1cy4KCSAqIEhUVFBTIGlzIHJlcXVpcmVkIHRvIGNvbm5lY3QgdG8gU2FsZXNmb3JjZS4KCSAqCgkgKiBAcmV0dXJuIGJvb2wgJHNlY3VyZV9hZG1pbgoJICovCglwcml2YXRlIGZ1bmN0aW9uIGNoZWNrX3dvcmRwcmVzc19zc2woKSB7CgoJCS8vIHRoZSB3cF9pc191c2luZ19odHRwcygpIGZ1bmN0aW9uIHdhcyBhZGRlZCBpbiBXb3JkUHJlc3MgNS43LgoJCWlmICggISBmdW5jdGlvbl9leGlzdHMoICd3cF9pc191c2luZ19odHRwcycgKSApIHsKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQkvLyB0aGUgd2hvbGUgc2l0ZSBpcyBhbHJlYWR5IHVzaW5nIFNTTC4KCQlpZiAoIHRydWUgPT09IHdwX2lzX3VzaW5nX2h0dHBzKCkgKSB7CgkJCXJldHVybiB0cnVlOwoJCX0KCgkJJHNlY3VyZV9hZG1pbiA9IGZhbHNlOwoKCQkvLyB0aGUgYWRtaW4gaXMgYWxyZWFkeSBmb3JjZWQgdG8gdXNlIFNTTC4KCQlpZiAoIHRydWUgPT09IEZPUkNFX1NTTF9BRE1JTiApIHsKCQkJJHNlY3VyZV9hZG1pbiA9IHRydWU7CgkJfQoKCQkvLyB0aGUgc2VydmVyIHJlcG9ydHMgdGhhdCB0aGUgY3VycmVudCBVUkwgaXMgdXNpbmcgSFRUUFMuCgkJaWYgKCBpc3NldCggJF9TRVJWRVJbJ0hUVFBTJ10gKSAmJiAnb24nID09PSAkX1NFUlZFUlsnSFRUUFMnXSApIHsKCQkJJHNlY3VyZV9hZG1pbiA9IHRydWU7CgkJfQoKCQlyZXR1cm4gJHNlY3VyZV9hZG1pbjsKCX0KCgkvKioKCSAqIENoZWNrIFdvcmRQcmVzcyBTU0wgc3VwcG9ydC4KCSAqIFRoaXMgYWxsb3dzIHVzIHRvIHNob3cgYSBkaWZmZXJlbnQgbWVzc2FnZSBpZiBTU0wgaXMgc3VwcG9ydGVkLCBidXQgaXMgbm90IGluIHVzZS4KCSAqCgkgKiBAcmV0dXJuIGJvb2wgJGh0dHBzX3N1cHBvcnRlZAoJICovCglwcml2YXRlIGZ1bmN0aW9uIGNoZWNrX3dvcmRwcmVzc19zc2xfc3VwcG9ydCgpIHsKCgkJLy8gdGhlIHdwX2lzX2h0dHBzX3N1cHBvcnRlZCgpIGZ1bmN0aW9uIHdhcyBhZGRlZCBpbiBXb3JkUHJlc3MgNS43LgoJCWlmICggISBmdW5jdGlvbl9leGlzdHMoICd3cF9pc19odHRwc19zdXBwb3J0ZWQnICkgKSB7CgkJCXJldHVybiB0cnVlOwoJCX0KCgkJaWYgKCB0cnVlID09PSB3cF9pc19odHRwc19zdXBwb3J0ZWQoKSApIHsKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQkkaHR0cHNfc3VwcG9ydGVkID0gZmFsc2U7CgkJcmV0dXJuICRodHRwc19zdXBwb3J0ZWQ7CgoJfQoKCS8qKgoJICogU2hvdyB3aGF0IHdlIGtub3cgYWJvdXQgdGhpcyB1c2VyJ3MgcmVsYXRpb25zaGlwIHRvIGEgU2FsZXNmb3JjZSBvYmplY3QsIGlmIGFueQoJICoKCSAqIEBwYXJhbSBvYmplY3QgJHVzZXIgdGhpcyBpcyB0aGUgdXNlciBvYmplY3QgZnJvbSBXb3JkUHJlc3MuCgkgKi8KCXB1YmxpYyBmdW5jdGlvbiBzaG93X3NhbGVzZm9yY2VfdXNlcl9maWVsZHMoICR1c2VyICkgewoJCSRnZXRfZGF0YSA9IGZpbHRlcl9pbnB1dF9hcnJheSggSU5QVVRfR0VULCBGSUxURVJfU0FOSVRJWkVfU1BFQ0lBTF9DSEFSUyApOwoJCWlmICggdHJ1ZSA9PT0gJHRoaXMtPmNoZWNrX3dvcmRwcmVzc19hZG1pbl9wZXJtaXNzaW9ucygpICkgewoJCQkkbWFwcGluZ3MgPSAkdGhpcy0+bWFwcGluZ3MtPmxvYWRfYWxsX2J5X3dvcmRwcmVzcyggJ3VzZXInLCAkdXNlci0+SUQgKTsKCQkJJGZpZWxkbWFwID0gJHRoaXMtPm1hcHBpbmdzLT5nZXRfZmllbGRtYXBzKAoJCQkJbnVsbCwgLy8gaWQgZmllbGQgbXVzdCBiZSBudWxsIGZvciBtdWx0aXBsZXMuCgkJCQlhcnJheSgKCQkJCQknd29yZHByZXNzX29iamVjdCcgPT4gJ3VzZXInLAoJCQkJKQoJCQkpOwoJCQlpZiAoIGNvdW50KCAkbWFwcGluZ3MgKSA+IDAgKSB7CgkJCQlmb3JlYWNoICggJG1hcHBpbmdzIGFzICRtYXBwaW5nICkgewoJCQkJCWlmICggaXNzZXQoICRtYXBwaW5nWydpZCddICkgJiYgISBpc3NldCggJGdldF9kYXRhWydlZGl0X3NhbGVzZm9yY2VfbWFwcGluZyddICkgJiYgISBpc3NldCggJGdldF9kYXRhWydkZWxldGVfc2FsZXNmb3JjZV9tYXBwaW5nJ10gKSApIHsKCQkJCQkJcmVxdWlyZV9vbmNlIHBsdWdpbl9kaXJfcGF0aCggJHRoaXMtPmZpbGUgKSAuICcvdGVtcGxhdGVzL2FkbWluL3VzZXItcHJvZmlsZS1zYWxlc2ZvcmNlLnBocCc7CgkJCQkJfSBlbHNlaWYgKCAhIGVtcHR5KCAkZmllbGRtYXAgKSApIHsgLy8gaXMgdGhlIHVzZXIgbWFwcGVkIHRvIHNvbWV0aGluZyBhbHJlYWR5PwoJCQkJCQlpZiAoIGlzc2V0KCAkZ2V0X2RhdGFbJ2VkaXRfc2FsZXNmb3JjZV9tYXBwaW5nJ10gKSAmJiB0cnVlID09PSBmaWx0ZXJfdmFyKCAkZ2V0X2RhdGFbJ2VkaXRfc2FsZXNmb3JjZV9tYXBwaW5nJ10sIEZJTFRFUl9WQUxJREFURV9CT09MRUFOICkgKSB7CgkJCQkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vdXNlci1wcm9maWxlLXNhbGVzZm9yY2UtY2hhbmdlLnBocCc7CgkJCQkJCX0gZWxzZWlmICggaXNzZXQoICRnZXRfZGF0YVsnZGVsZXRlX3NhbGVzZm9yY2VfbWFwcGluZyddICkgJiYgdHJ1ZSA9PT0gZmlsdGVyX3ZhciggJGdldF9kYXRhWydkZWxldGVfc2FsZXNmb3JjZV9tYXBwaW5nJ10sIEZJTFRFUl9WQUxJREFURV9CT09MRUFOICkgKSB7CgkJCQkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vdXNlci1wcm9maWxlLXNhbGVzZm9yY2UtZGVsZXRlLnBocCc7CgkJCQkJCX0gZWxzZSB7CgkJCQkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vdXNlci1wcm9maWxlLXNhbGVzZm9yY2UtbWFwLnBocCc7CgkJCQkJCX0KCQkJCQl9CgkJCQl9CgkJCX0gZWxzZSB7CgkJCQlyZXF1aXJlX29uY2UgcGx1Z2luX2Rpcl9wYXRoKCAkdGhpcy0+ZmlsZSApIC4gJy90ZW1wbGF0ZXMvYWRtaW4vdXNlci1wcm9maWxlLXNhbGVzZm9yY2UtbWFwLnBocCc7CgkJCX0KCQl9Cgl9CgoJLyoqCgkgKiBJZiB0aGUgdXNlciBwcm9maWxlIGhhcyBiZWVuIG1hcHBlZCB0byBTYWxlc2ZvcmNlLCBkbyBpdAoJICoKCSAqIEBwYXJhbSBpbnQgJHVzZXJfaWQgdGhlIElEIG9mIHRoZSBXb3JkUHJlc3MgdXNlci4KCSAqLwoJcHVibGljIGZ1bmN0aW9uIHNhdmVfc2FsZXNmb3JjZV91c2VyX2ZpZWxkcyggJHVzZXJfaWQgKSB7CgkJJHBvc3RfZGF0YSA9IGZpbHRlcl9pbnB1dF9hcnJheSggSU5QVVRfUE9TVCwgRklMVEVSX1VOU0FGRV9SQVcgKTsKCQlpZiAoIGlzc2V0KCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX3VwZGF0ZV9tYXBwZWRfdXNlciddICkgJiYgdHJ1ZSA9PT0gZmlsdGVyX3ZhciggJHBvc3RfZGF0YVsnc2FsZXNmb3JjZV91cGRhdGVfbWFwcGVkX3VzZXInXSwgRklMVEVSX1ZBTElEQVRFX0JPT0xFQU4gKSApIHsKCQkJJG1hcHBpbmdfb2JqZWN0cyA9ICR0aGlzLT5tYXBwaW5ncy0+Z2V0X2FsbF9vYmplY3RfbWFwcygKCQkJCWFycmF5KAoJCQkJCSd3b3JkcHJlc3NfaWQnICAgICA9PiAkdXNlcl9pZCwKCQkJCQknd29yZHByZXNzX29iamVjdCcgPT4gJ3VzZXInLAoJCQkJKQoJCQkpOwoJCQlmb3JlYWNoICggJG1hcHBpbmdfb2JqZWN0cyBhcyAkbWFwcGluZ19vYmplY3QgKSB7CgkJCQkkbWFwcGluZ19vYmplY3RbJ3NhbGVzZm9yY2VfaWQnXSA9ICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2VfaWQnXTsKCQkJCSRyZXN1bHQgICAgICAgICAgICAgICAgICAgICAgICAgID0gJHRoaXMtPm1hcHBpbmdzLT51cGRhdGVfb2JqZWN0X21hcCggJG1hcHBpbmdfb2JqZWN0LCAkbWFwcGluZ19vYmplY3RbJ2lkJ10gKTsKCQkJfQoJCX0gZWxzZWlmICggaXNzZXQoICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2VfY3JlYXRlX21hcHBlZF91c2VyJ10gKSAmJiB0cnVlID09PSBmaWx0ZXJfdmFyKCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX2NyZWF0ZV9tYXBwZWRfdXNlciddLCBGSUxURVJfVkFMSURBVEVfQk9PTEVBTiApICkgewoJCQkvLyBpZiBhIFNhbGVzZm9yY2UgSUQgd2FzIGVudGVyZWQuCgkJCWlmICggaXNzZXQoICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2VfaWQnXSApICYmICEgZW1wdHkoICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2VfaWQnXSApICkgewoJCQkJJG1hcHBpbmdfb2JqZWN0ID0gJHRoaXMtPmNyZWF0ZV9vYmplY3RfbWFwKCAkdXNlcl9pZCwgJ3VzZXInLCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX2lkJ10gKTsKCQkJfSBlbHNlaWYgKCBpc3NldCggJHBvc3RfZGF0YVsncHVzaF9uZXdfdXNlcl90b19zYWxlc2ZvcmNlJ10gKSApIHsKCQkJCS8vIG90aGVyd2lzZSwgY3JlYXRlIGEgbmV3IHJlY29yZCBpbiBTYWxlc2ZvcmNlLgoJCQkJJHJlc3VsdCA9ICR0aGlzLT5wdXNoX3RvX3NhbGVzZm9yY2UoICd1c2VyJywgJHVzZXJfaWQgKTsKCQkJfQoJCX0gZWxzZWlmICggaXNzZXQoICRwb3N0X2RhdGFbJ3NhbGVzZm9yY2VfZGVsZXRlX21hcHBlZF91c2VyJ10gKSAmJiB0cnVlID09PSBmaWx0ZXJfdmFyKCAkcG9zdF9kYXRhWydzYWxlc2ZvcmNlX2RlbGV0ZV9tYXBwZWRfdXNlciddLCBGSUxURVJfVkFMSURBVEVfQk9PTEVBTiApICkgewoJCQkvLyBpZiBhIFNhbGVzZm9yY2UgSUQgd2FzIGVudGVyZWQuCgkJCWlmICggaXNzZXQoICRwb3N0X2RhdGFbJ21hcHBpbmdfaWQnXSApICYmICEgZW1wdHkoICRwb3N0X2RhdGFbJ21hcHBpbmdfaWQnXSApICkgewoJCQkJJGRlbGV0ZSA9ICR0aGlzLT5tYXBwaW5ncy0+ZGVsZXRlX29iamVjdF9tYXAoICRwb3N0X2RhdGFbJ21hcHBpbmdfaWQnXSApOwoJCQl9CgkJfQoJfQoKCS8qKgoJICogUmVuZGVyIHRhYnMgZm9yIHNldHRpbmdzIHBhZ2VzIGluIGFkbWluCgkgKgoJICogQHBhcmFtIGFycmF5ICAkdGFicyBpcyB0aGUgdGFicyBmb3IgdGhlIHNldHRpbmdzIG1lbnUuCgkgKiBAcGFyYW0gc3RyaW5nICR0YWIgaXMgYSBzaW5nbGUgdGFiLgoJICovCglwcml2YXRlIGZ1bmN0aW9uIHRhYnMoICR0YWJzLCAkdGFiID0gJycgKSB7CgoJCSRnZXRfZGF0YSAgICAgICAgPSBmaWx0ZXJfaW5wdXRfYXJyYXkoIElOUFVUX0dFVCwgRklMVEVSX1NBTklUSVpFX1NQRUNJQUxfQ0hBUlMgKTsKCQkkY29uc3VtZXJfa2V5ICAgID0gJHRoaXMtPmxvZ2luX2NyZWRlbnRpYWxzWydjb25zdW1lcl9rZXknXTsKCQkkY29uc3VtZXJfc2VjcmV0ID0gJHRoaXMtPmxvZ2luX2NyZWRlbnRpYWxzWydjb25zdW1lcl9zZWNyZXQnXTsKCQkkY2FsbGJhY2tfdXJsICAgID0gJHRoaXMtPmxvZ2luX2NyZWRlbnRpYWxzWydjYWxsYmFja191cmwnXTsKCgkJJGN1cnJlbnRfdGFiID0gJHRhYjsKCQllY2hvICc8aDIgY2xhc3M9Im5hdi10YWItd3JhcHBlciI+JzsKCQlmb3JlYWNoICggJHRhYnMgYXMgJHRhYl9rZXkgPT4gJHRhYl9jYXB0aW9uICkgewoJCQkkYWN0aXZlID0gJGN1cnJlbnRfdGFiID09PSAkdGFiX2tleSA/ICcgbmF2LXRhYi1hY3RpdmUnIDogJyc7CgoJCQlpZiAoIHRydWUgPT09ICR0aGlzLT5zYWxlc2ZvcmNlWydpc19hdXRob3JpemVkJ10gKSB7CgkJCQllY2hvIHNwcmludGYoCgkJCQkJJzxhIGNsYXNzPSJuYXYtdGFiJTEkcyIgaHJlZj0iJTIkcyI+JTMkczwvYT4nLAoJCQkJCWVzY19hdHRyKCAkYWN0aXZlICksCgkJCQkJZXNjX3VybCggJz9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9JyAuICR0YWJfa2V5ICksCgkJCQkJZXNjX2h0bWwoICR0YWJfY2FwdGlvbiApCgkJCQkpOwoJCQl9IGVsc2VpZiAoICdzZXR0aW5ncycgPT09ICR0YWJfa2V5IHx8ICggJ2F1dGhvcml6ZScgPT09ICR0YWJfa2V5ICYmIGlzc2V0KCAkY29uc3VtZXJfa2V5ICkgJiYgaXNzZXQoICRjb25zdW1lcl9zZWNyZXQgKSAmJiAhIGVtcHR5KCAkY29uc3VtZXJfa2V5ICkgJiYgISBlbXB0eSggJGNvbnN1bWVyX3NlY3JldCApICkgKSB7CgkJCQllY2hvIHNwcmludGYoCgkJCQkJJzxhIGNsYXNzPSJuYXYtdGFiJTEkcyIgaHJlZj0iJTIkcyI+JTMkczwvYT4nLAoJCQkJCWVzY19hdHRyKCAkYWN0aXZlICksCgkJCQkJZXNjX3VybCggJz9wYWdlPScgLiAkdGhpcy0+YWRtaW5fc2V0dGluZ3NfdXJsX3BhcmFtIC4gJyZ0YWI9JyAuICR0YWJfa2V5ICksCgkJCQkJZXNjX2h0bWwoICR0YWJfY2FwdGlvbiApCgkJCQkpOwoJCQl9CgkJfQoJCWVjaG8gJzwvaDI+JzsKCgkJaWYgKCBpc3NldCggJGdldF9kYXRhWyd0YWInXSApICkgewoJCQkkdGFiID0gc2FuaXRpemVfa2V5KCAkZ2V0X2RhdGFbJ3RhYiddICk7CgkJfSBlbHNlIHsKCQkJJHRhYiA9ICcnOwoJCX0KCX0KCgkvKioKCSAqIENsZWFyIHNjaGVkdWxlCgkgKiBUaGlzIGNsZWFycyB0aGUgc2NoZWR1bGUgaWYgdGhlIHVzZXIgY2xpY2tzIHRoZSBidXR0b24KCSAqCgkgKiBAcGFyYW0gc3RyaW5nICRzY2hlZHVsZV9uYW1lIGlzIHRoZSBuYW1lIG9mIHRoZSBzY2hlZHVsZSBiZWluZyBjbGVhcmVkLgoJICovCglwcml2YXRlIGZ1bmN0aW9uIGNsZWFyX3NjaGVkdWxlKCAkc2NoZWR1bGVfbmFtZSA9ICcnICkgewoJCWlmICggJycgIT09ICRzY2hlZHVsZV9uYW1lICkgewoJCQkkdGhpcy0+cXVldWUtPmNhbmNlbCggJHNjaGVkdWxlX25hbWUgKTsKCQkJLy8gdHJhbnNsYXRvcnM6ICRzY2hlZHVsZV9uYW1lIGlzIHRoZSBuYW1lIG9mIHRoZSBjdXJyZW50IHF1ZXVlLiBEZWZhdWx0czogc2FsZXNmb3JjZV9wdWxsLCBzYWxlc2ZvcmNlX3B1c2gsIHNhbGVzZm9yY2UuCgkJCWVjaG8gc3ByaW50ZiggZXNjX2h0bWxfXyggJ1lvdSBoYXZlIGNsZWFyZWQgdGhlICVzIHNjaGVkdWxlLicsICdvYmplY3Qtc3luYy1mb3Itc2FsZXNmb3JjZScgKSwgZXNjX2h0bWwoICRzY2hlZHVsZV9uYW1lICkgKTsKCQl9IGVsc2UgewoJCQllY2hvIGVzY19odG1sX18oICdZb3UgbmVlZCB0byBzcGVjaWZ5IHRoZSBuYW1lIG9mIHRoZSBzY2hlZHVsZSB5b3Ugd2FudCB0byBjbGVhci4nLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICk7CgkJfQoJfQoKCS8qKgoJICogR2V0IGNvdW50IG9mIHNjaGVkdWxlIGl0ZW1zCgkgKgoJICogQHBhcmFtIHN0cmluZyAkc2NoZWR1bGVfbmFtZSBpcyB0aGUgbmFtZSBvZiB0aGUgc2NoZWR1bGUuCgkgKiBAcmV0dXJuIGludCAkY291bnQKCSAqLwoJcHJpdmF0ZSBmdW5jdGlvbiBnZXRfc2NoZWR1bGVfY291bnQoICRzY2hlZHVsZV9uYW1lID0gJycgKSB7CgkJaWYgKCAnJyAhPT0gJHNjaGVkdWxlX25hbWUgKSB7CgkJCSRjb3VudCAgICAgICA9IGNvdW50KAoJCQkJJHRoaXMtPnF1ZXVlLT5zZWFyY2goCgkJCQkJYXJyYXkoCgkJCQkJCSdncm91cCcgID0+ICRzY2hlZHVsZV9uYW1lLAoJCQkJCQknc3RhdHVzJyA9PiBBY3Rpb25TY2hlZHVsZXJfU3RvcmU6OlNUQVRVU19QRU5ESU5HLAoJCQkJCSksCgkJCQkJJ0FSUkFZX0EnCgkJCQkpCgkJCSk7CgkJCSRncm91cF9jb3VudCA9IGNvdW50KAoJCQkJJHRoaXMtPnF1ZXVlLT5zZWFyY2goCgkJCQkJYXJyYXkoCgkJCQkJCSdncm91cCcgID0+ICRzY2hlZHVsZV9uYW1lIC4gJHRoaXMtPmFjdGlvbl9ncm91cF9zdWZmaXgsCgkJCQkJCSdzdGF0dXMnID0+IEFjdGlvblNjaGVkdWxlcl9TdG9yZTo6U1RBVFVTX1BFTkRJTkcsCgkJCQkJKSwKCQkJCQknQVJSQVlfQScKCQkJCSkKCQkJKTsKCQkJcmV0dXJuICRjb3VudCArICRncm91cF9jb3VudDsKCQl9IGVsc2UgewoJCQlyZXR1cm4gMDsKCQl9Cgl9CgoJLyoqCgkgKiBDcmVhdGUgYW4gb2JqZWN0IG1hcCBiZXR3ZWVuIGEgV29yZFByZXNzIG9iamVjdCBhbmQgYSBTYWxlc2ZvcmNlIG9iamVjdAoJICoKCSAqIEBwYXJhbSBpbnQgICAgJHdvcmRwcmVzc19pZCBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIFdvcmRQcmVzcyBvYmplY3QuCgkgKiBAcGFyYW0gc3RyaW5nICR3b3JkcHJlc3Nfb2JqZWN0IFdoYXQga2luZCBvZiBvYmplY3QgaXMgaXQuCgkgKiBAcGFyYW0gc3RyaW5nICRzYWxlc2ZvcmNlX2lkIFVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgU2FsZXNmb3JjZSBvYmplY3QuCgkgKiBAcGFyYW0gc3RyaW5nICRhY3Rpb24gRGlkIHdlIHB1c2ggb3IgcHVsbC4KCSAqIEByZXR1cm4gaW50ICAgJHdwZGItPmluc2VydF9pZCBUaGlzIGlzIHRoZSBkYXRhYmFzZSByb3cgZm9yIHRoZSBtYXAgb2JqZWN0CgkgKi8KCXByaXZhdGUgZnVuY3Rpb24gY3JlYXRlX29iamVjdF9tYXAoICR3b3JkcHJlc3NfaWQsICR3b3JkcHJlc3Nfb2JqZWN0LCAkc2FsZXNmb3JjZV9pZCwgJGFjdGlvbiA9ICcnICkgewoJCS8vIENyZWF0ZSBvYmplY3QgbWFwIGFuZCBzYXZlIGl0LgoJCSRtYXBwaW5nX29iamVjdCA9ICR0aGlzLT5tYXBwaW5ncy0+Y3JlYXRlX29iamVjdF9tYXAoCgkJCWFycmF5KAoJCQkJJ3dvcmRwcmVzc19pZCcgICAgICA9PiAkd29yZHByZXNzX2lkLCAvLyB3b3JkcHJlc3MgdW5pcXVlIGlkLgoJCQkJJ3NhbGVzZm9yY2VfaWQnICAgICA9PiAkc2FsZXNmb3JjZV9pZCwgLy8gc2FsZXNmb3JjZSB1bmlxdWUgaWQuIHdlIGRvbid0IGNhcmUgd2hhdCBraW5kIG9mIG9iamVjdCBpdCBpcyBhdCB0aGlzIHBvaW50LgoJCQkJJ3dvcmRwcmVzc19vYmplY3QnICA9PiAkd29yZHByZXNzX29iamVjdCwgLy8ga2VlcCB0cmFjayBvZiB3aGF0IGtpbmQgb2Ygd3Agb2JqZWN0IHRoaXMgaXMuCgkJCQknbGFzdF9zeW5jJyAgICAgICAgID0+IGN1cnJlbnRfdGltZSggJ215c3FsJyApLAoJCQkJJ2xhc3Rfc3luY19hY3Rpb24nICA9PiAkYWN0aW9uLAoJCQkJJ2xhc3Rfc3luY19zdGF0dXMnICA9PiAkdGhpcy0+bWFwcGluZ3MtPnN0YXR1c19zdWNjZXNzLAoJCQkJJ2xhc3Rfc3luY19tZXNzYWdlJyA9PiBfXyggJ01hcHBpbmcgb2JqZWN0IHVwZGF0ZWQgdmlhIGZ1bmN0aW9uOiAnLCAnb2JqZWN0LXN5bmMtZm9yLXNhbGVzZm9yY2UnICkgLiBfX0ZVTkNUSU9OX18sCgkJCSkKCQkpOwoKCQlyZXR1cm4gJG1hcHBpbmdfb2JqZWN0OwoKCX0KCn0KIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWVzcGFjZXMiO2E6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW5jbHVkZXMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZnVuY3Rpb25zIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNvbnN0YW50cyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjbGFzc2VzIjthOjE6e3M6MjE6IlxPYmplY3RfU3luY19TZl9BZG1pbiI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18iOjEzOntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMToiXE9iamVjdF9TeW5jX1NmX0FkbWluIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjA6Ik9iamVjdF9TeW5jX1NmX0FkbWluIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyNzoiT2JqZWN0X1N5bmNfU2ZfQWRtaW4gY2xhc3MuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBwYXJlbnQiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGltcGxlbWVudHMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBjb25zdGFudHMiO2E6MDp7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBwcm9wZXJ0aWVzIjthOjI4OntzOjMxOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiR2ZXJzaW9uIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozMToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokdmVyc2lvbiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6InZlcnNpb24iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mjk6IkN1cnJlbnQgdmVyc2lvbiBvZiB0aGUgcGx1Z2luIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjI4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRmaWxlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyODoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokZmlsZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjQ6ImZpbGUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MjA6IlRoZSBtYWluIHBsdWdpbiBmaWxlIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjI4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiR3cGRiIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyODoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokd3BkYiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjQ6IndwZGIiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDg6Ikdsb2JhbCBvYmplY3Qgb2YgYCR3cGRiYCwgdGhlIFdvcmRQcmVzcyBkYXRhYmFzZSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjM1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6Mjg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHNsdWciO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRzbHVnIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoic2x1ZyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo1MzoiVGhlIHBsdWdpbidzIHNsdWcgc28gd2UgY2FuIGluY2x1ZGUgaXQgd2hlbiBuZWNlc3NhcnkiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6Mzc6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JG9wdGlvbl9wcmVmaXgiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM3OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRvcHRpb25fcHJlZml4IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6Im9wdGlvbl9wcmVmaXgiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NTU6IlRoZSBwbHVnaW4ncyBwcmVmaXggd2hlbiBzYXZpbmcgb3B0aW9ucyB0byB0aGUgZGF0YWJhc2UiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjQ5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGFjdGlvbl9ncm91cF9zdWZmaXgiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQzOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRhY3Rpb25fZ3JvdXBfc3VmZml4IjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6ImFjdGlvbl9ncm91cF9zdWZmaXgiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDA6IlN1ZmZpeCBmb3IgZ3JvdXAgbmFtZSBpbiBBY3Rpb25TY2hlZHVsZXIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDE6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGxvZ2luX2NyZWRlbnRpYWxzIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokbG9naW5fY3JlZGVudGlhbHMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNzoibG9naW5fY3JlZGVudGlhbHMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6OTA6IkxvZ2luIGNyZWRlbnRpYWxzIGZvciB0aGUgU2FsZXNmb3JjZSBBUEk7IGNvbWVzIGZyb20gd3AtY29uZmlnIG9yIGZyb20gdGhlIHBsdWdpbiBzZXR0aW5ncyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NjM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHNjaGVkdWxhYmxlX2NsYXNzZXMiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQzOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRzY2hlZHVsYWJsZV9jbGFzc2VzIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6InNjaGVkdWxhYmxlX2NsYXNzZXMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6ODM6IkFycmF5IG9mIHdoYXQgY2xhc3NlcyBpbiB0aGUgcGx1Z2luIGNhbiBiZSBzY2hlZHVsZWQgdG8gb2NjdXIgd2l0aCBgd3BfY3JvbmAgZXZlbnRzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo3MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czoyOToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokcXVldWUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI5OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRxdWV1ZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjU6InF1ZXVlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjI2OiJPYmplY3RfU3luY19TZl9RdWV1ZSBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Nzc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjc3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6MzE6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGxvZ2dpbmciO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjMxOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRsb2dnaW5nIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NzoibG9nZ2luZyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyODoiT2JqZWN0X1N5bmNfU2ZfTG9nZ2luZyBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6ODQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjg0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6MzI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JG1hcHBpbmdzIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozMjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokbWFwcGluZ3MiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo4OiJtYXBwaW5ncyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyODoiT2JqZWN0X1N5bmNfU2ZfTWFwcGluZyBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6OTE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjkxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6MzM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHdvcmRwcmVzcyI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHdvcmRwcmVzcyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjk6IndvcmRwcmVzcyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozMDoiT2JqZWN0X1N5bmNfU2ZfV29yZFByZXNzIGNsYXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7Tjt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo5ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6OTg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czozNDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokc2FsZXNmb3JjZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzQ6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHNhbGVzZm9yY2UiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMDoic2FsZXNmb3JjZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo2ODoiT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZSBjbGFzcwpUaGlzIGNvbnRhaW5zIFNhbGVzZm9yY2UgQVBJIG1ldGhvZHMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwNjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTA2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6Mjg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHB1c2giO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRwdXNoIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoicHVzaCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozNjoiT2JqZWN0X1N5bmNfU2ZfU2FsZXNmb3JjZV9QdXNoIGNsYXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7Tjt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMTM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjExMztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjI4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRwdWxsIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyODoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokcHVsbCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjQ6InB1bGwiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MzY6Ik9iamVjdF9TeW5jX1NmX1NhbGVzZm9yY2VfUHVsbCBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTIwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czozOToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokc2Z3cF90cmFuc2llbnRzIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozOToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokc2Z3cF90cmFuc2llbnRzIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6InNmd3BfdHJhbnNpZW50cyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0MDoiT2JqZWN0X1N5bmNfU2ZfV29yZFByZXNzX1RyYW5zaWVudCBjbGFzcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEyNztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTI3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGFkbWluX3NldHRpbmdzX3VybF9wYXJhbSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGFkbWluX3NldHRpbmdzX3VybF9wYXJhbSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI0OiJhZG1pbl9zZXR0aW5nc191cmxfcGFyYW0iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDM6IlVSTCBmcmFnbWVudCBmb3IgdGhlIHBsdWdpbidzIHNldHRpbmdzIHBhZ2UiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEzNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTM0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JG5vdGljZXNfZGF0YSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JG5vdGljZXNfZGF0YSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEyOiJub3RpY2VzX2RhdGEiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MjI6IkRhdGEgZm9yIGFkbWluIG5vdGljZXMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE0MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTQxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGFjY2Vzc190b2tlbiI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGFjY2Vzc190b2tlbiI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEyOiJhY2Nlc3NfdG9rZW4iO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MjM6IlNhbGVzZm9yY2UgYWNjZXNzIHRva2VuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNDg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE0ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjM2OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRpbnN0YW5jZV91cmwiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM2OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRpbnN0YW5jZV91cmwiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoiaW5zdGFuY2VfdXJsIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjIzOiJTYWxlc2ZvcmNlIGluc3RhbmNlIFVSTCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTU1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNTU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czozNzoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokcmVmcmVzaF90b2tlbiI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzc6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JHJlZnJlc2hfdG9rZW4iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMzoicmVmcmVzaF90b2tlbiI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyNDoiU2FsZXNmb3JjZSByZWZyZXNoIHRva2VuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNjI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE2MjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjUwOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OiRkZWZhdWx0X2F1dGhvcml6ZV91cmxfcGF0aCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTA6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfYXV0aG9yaXplX3VybF9wYXRoIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjY6ImRlZmF1bHRfYXV0aG9yaXplX3VybF9wYXRoIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjQ1OiJEZWZhdWx0IHBhdGggZm9yIHRoZSBTYWxlc2ZvcmNlIGF1dGhvcml6ZSBVUkwiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTY5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNjk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo0NjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokZGVmYXVsdF90b2tlbl91cmxfcGF0aCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfdG9rZW5fdXJsX3BhdGgiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMjoiZGVmYXVsdF90b2tlbl91cmxfcGF0aCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0MToiRGVmYXVsdCBwYXRoIGZvciB0aGUgU2FsZXNmb3JjZSB0b2tlbiBVUkwiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTc2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNzY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo0MzoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokZGVmYXVsdF9hcGlfdmVyc2lvbiI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfYXBpX3ZlcnNpb24iO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiZGVmYXVsdF9hcGlfdmVyc2lvbiI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo4MDoiV2hhdCB2ZXJzaW9uIG9mIHRoZSBTYWxlc2ZvcmNlIEFQSSBzaG91bGQgYmUgdGhlIGRlZmF1bHQgb24gdGhlIHNldHRpbmdzIHNjcmVlbi4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTU4OiJVc2VycyBjYW4gZWRpdCB3aGF0IHZlcnNpb24gaXMgdXNlZCwgYnV0IHRoZXkgd29uJ3Qgc2VlIGEgY29ycmVjdCBsaXN0IG9mIGFsbCB0aGVpciBhdmFpbGFibGUgdmVyc2lvbnMgdW50aWwgV29yZFByZXNzIGhhcwpiZWVuIGF1dGhlbnRpY2F0ZWQgd2l0aCBTYWxlc2ZvcmNlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjI6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9aToxO086NDk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXERlcHJlY2F0ZWQiOjM6e3M6NzoiACoAbmFtZSI7czoxMDoiZGVwcmVjYXRlZCI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTQ5OiJhcyBvZiAyLjIuMDsgd2lsbCBiZSByZW1vdmVkIGluIHZlcnNpb24gMy4wLiBUaGlzIHByb3BlcnR5IHdpbGwgc3RheSB1bnRpbCAzLjAuMCBiZWNhdXNlIGl0IGlzIGEgcHVibGljIHZhbHVlIGFuZCBpdCBjb3VsZCBiZSBhY2Nlc3NlZCBieSBvdGhlciBjb2RlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXERlcHJlY2F0ZWQAdmVyc2lvbiI7Tjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE4NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTg2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfcHVsbF9saW1pdCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfcHVsbF9saW1pdCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE4OiJkZWZhdWx0X3B1bGxfbGltaXQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NTY6IkRlZmF1bHQgbWF4IG51bWJlciBvZiBwdWxsIHJlY29yZHMuIFVzZXJzIGNhbiBlZGl0IHRoaXMuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xWYXJfIjo0OntzOjc6IgAqAG5hbWUiO3M6MzoidmFyIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjE1OiIAKgB2YXJpYWJsZU5hbWUiO3M6MDoiIjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE5MztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTkzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDU6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfcHVsbF90aHJvdHRsZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDU6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfcHVsbF90aHJvdHRsZSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIxOiJkZWZhdWx0X3B1bGxfdGhyb3R0bGUiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NzY6IkRlZmF1bHQgdGhyb3R0bGUgZm9yIGhvdyBvZnRlbiB0byBwdWxsIGZyb20gU2FsZXNmb3JjZS4gVXNlcnMgY2FuIGVkaXQgdGhpcy4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjAwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMDA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo0MzoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokZGVmYXVsdF90cmlnZ2VyYWJsZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6JGRlZmF1bHRfdHJpZ2dlcmFibGUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiZGVmYXVsdF90cmlnZ2VyYWJsZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo3MToiRGVmYXVsdCBmb3Igd2hldGhlciB0byBsaW1pdCB0byB0cmlnZ2VyYWJsZSBpdGVtcy4gVXNlcnMgY2FuIGVkaXQgdGhpcy4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFZhcl8iOjQ6e3M6NzoiACoAbmFtZSI7czozOiJ2YXIiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fXM6MTU6IgAqAHZhcmlhYmxlTmFtZSI7czowOiIiO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjA3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMDc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czo0MjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokZGVmYXVsdF91cGRhdGVhYmxlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjokZGVmYXVsdF91cGRhdGVhYmxlIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTg6ImRlZmF1bHRfdXBkYXRlYWJsZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo3OToiRGVmYXVsdCBmb3Igd2hldGhlciB0byBsaW1pdCB0byBpdGVtcyB0aGF0IGNhbiBiZSB1cGRhdGVkLiBVc2VycyBjYW4gZWRpdCB0aGlzLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0MzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcVmFyXyI6NDp7czo3OiIAKgBuYW1lIjtzOjM6InZhciI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9czoxNToiACoAdmFyaWFibGVOYW1lIjtzOjA6IiI7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIxNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX19czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGhvZHMiO2E6NDk6e3M6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6X19jb25zdHJ1Y3QoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjI3OiJDb25zdHJ1Y3RvciBmb3IgYWRtaW4gY2xhc3MiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6X19jb25zdHJ1Y3QoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJfX2NvbnN0cnVjdCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjM2OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmFkZF9hY3Rpb25zKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo1MDoiQ3JlYXRlIHRoZSBhY3Rpb24gaG9va3MgdG8gY3JlYXRlIHRoZSBhZG1pbiBwYWdlcy4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6YWRkX2FjdGlvbnMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjExOiJhZGRfYWN0aW9ucyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNjU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozMjI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ0OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OnBsdWdpbl9hY3Rpb25fbGlua3MoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjQ4OiJEaXNwbGF5IGEgU2V0dGluZ3MgbGluayBvbiB0aGUgbWFpbiBQbHVnaW5zIHBhZ2UiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mzp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQ1OiJ0aGUgYXJyYXkgb2YgbGlua3MgZm9yIHRoZSBtYWluIHBsdWdpbnMgcGFnZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo1OiJsaW5rcyI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEzOiJ0aGUgZmlsZW5hbWUuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJmaWxlIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NTE6IiRsaW5rcyB0aGUgYXJyYXkgb2YgbGlua3MgZm9yIHRoZSBtYWluIHBsdWdpbnMgcGFnZSI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDQ6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cGx1Z2luX2FjdGlvbl9saW5rcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6InBsdWdpbl9hY3Rpb25fbGlua3MiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToibGlua3MiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJmaWxlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzMxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MzM3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0OToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjphZG1pbl9zY3JpcHRzX2FuZF9zdHlsZXMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjY3OiJBZG1pbiBzdHlsZXMuIExvYWQgdGhlIENTUyBhbmQgSmF2YVNjcmlwdCBmb3IgdGhlIHBsdWdpbidzIHNldHRpbmdzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ5OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmFkbWluX3NjcmlwdHNfYW5kX3N0eWxlcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjQ6ImFkbWluX3NjcmlwdHNfYW5kX3N0eWxlcyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNDI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNjg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmluaXRpYWxfYWN0aW9uX3NjaGVkdWxlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0MzoiSW5pdGlhbCByZWN1cnJpbmcgdGFza3MgZm9yIEFjdGlvblNjaGVkdWxlciI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTo0OntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzU6InRoZSBuZXcsIHVuc2VyaWFsaXplZCBvcHRpb24gdmFsdWUuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMjoibmV3X3NjaGVkdWxlIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MjE6InRoZSBvbGQgb3B0aW9uIHZhbHVlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTI6Im9sZF9zY2hlZHVsZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToyO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEyOiJvcHRpb24gbmFtZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjExOiJvcHRpb25fbmFtZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTozO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEzOiIkbmV3X3NjaGVkdWxlIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmluaXRpYWxfYWN0aW9uX3NjaGVkdWxlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMzoiaW5pdGlhbF9hY3Rpb25fc2NoZWR1bGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTI6Im5ld19zY2hlZHVsZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEyOiJvbGRfc2NoZWR1bGUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMToib3B0aW9uX25hbWUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNzg7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0MDM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ3OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNoYW5nZV9hY3Rpb25fc2NoZWR1bGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjYwOiJVcGRhdGUgcmVjdXJyaW5nIHRhc2tzIGZvciBBY3Rpb25TY2hlZHVsZXIgaWYgb3B0aW9ucyBjaGFuZ2UiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mzp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjIxOiJ0aGUgb2xkIG9wdGlvbiB2YWx1ZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEyOiJvbGRfc2NoZWR1bGUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozNToidGhlIG5ldywgdW5zZXJpYWxpemVkIG9wdGlvbiB2YWx1ZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEyOiJuZXdfc2NoZWR1bGUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MjtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxMjoib3B0aW9uIG5hbWUuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMToib3B0aW9uX25hbWUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ3OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNoYW5nZV9hY3Rpb25fc2NoZWR1bGUoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIyOiJjaGFuZ2VfYWN0aW9uX3NjaGVkdWxlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEyOiJvbGRfc2NoZWR1bGUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMjoibmV3X3NjaGVkdWxlIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTE6Im9wdGlvbl9uYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDEyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDIzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpzZXRfYWN0aW9uX3NjaGVkdWxlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0MjoiU2V0IHVwIHJlY3VycmluZyB0YXNrcyBmb3IgQWN0aW9uU2NoZWR1bGVyIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjI6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyNToidGhlIG5hbWUgb2YgdGhlIHNjaGVkdWxlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTM6InNjaGVkdWxlX25hbWUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNzoidGhlIGdyb3VwJ3MgbmFtZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE3OiJhY3Rpb25fZ3JvdXBfbmFtZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDQ6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c2V0X2FjdGlvbl9zY2hlZHVsZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTk6InNldF9hY3Rpb25fc2NoZWR1bGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEzOiJzY2hlZHVsZV9uYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTc6ImFjdGlvbl9ncm91cF9uYW1lIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDMxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDUyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0ODoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpyZXNhdmVfYWN0aW9uX3NjaGVkdWxlcygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Nzk6IldoZW4gaXQgZmluaXNoZXMgaXRzIG1pZ3JhdGlvbiwgcmVzYXZlIHRoZSBzY2hlZHVsZWQgdGFza3MgZm9yIEFjdGlvblNjaGVkdWxlci4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cmVzYXZlX2FjdGlvbl9zY2hlZHVsZXMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIzOiJyZXNhdmVfYWN0aW9uX3NjaGVkdWxlcyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0NTc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo1MjU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNyZWF0ZV9hZG1pbl9tZW51KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozOToiQ3JlYXRlIHRoZSBXb3JkUHJlc3MgYWRtaW4gb3B0aW9ucyBwYWdlIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNyZWF0ZV9hZG1pbl9tZW51KCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNzoiY3JlYXRlX2FkbWluX21lbnUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTMwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTMzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpzaG93X2FkbWluX3BhZ2UoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjExMjoiUmVuZGVyIHRoZSBhZG1pbiBwYWdlcyBpbiBXb3JkUHJlc3MuIFRoaXMgYWxzbyBhbGxvd3Mgb3RoZXIgcGx1Z2lucyB0byBhZGQgdGFicyB0byB0aGlzIHBsdWdpbidzIHNldHRpbmdzIHNjcmVlbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpzaG93X2FkbWluX3BhZ2UoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJzaG93X2FkbWluX3BhZ2UiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTM4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzYwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpzYWxlc2ZvcmNlX3NldHRpbmdzX2Zvcm1zKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo3NDoiQ3JlYXRlIGRlZmF1bHQgV29yZFByZXNzIGFkbWluIHNldHRpbmdzIGZvcm0uIFRoaXMgcnVucyB0aGUgU2V0dGluZ3MgcGFnZS4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTA6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c2FsZXNmb3JjZV9zZXR0aW5nc19mb3JtcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjU6InNhbGVzZm9yY2Vfc2V0dGluZ3NfZm9ybXMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NzY1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Nzg3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpmaWVsZHNfc2V0dGluZ3MoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjEzOToiRmllbGRzIGZvciB0aGUgU2V0dGluZ3MgdGFiClRoaXMgcnVucyBhZGRfc2V0dGluZ3Nfc2VjdGlvbiBvbmNlLCBhcyB3ZWxsIGFzIGFkZF9zZXR0aW5nc19maWVsZCBhbmQgcmVnaXN0ZXJfc2V0dGluZyBtZXRob2RzIGZvciBlYWNoIG9wdGlvbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTozOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTk6IndoYXQgcGFnZSB3ZSdyZSBvbi4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6InBhZ2UiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyNToid2hhdCBzZWN0aW9uIG9mIHRoZSBwYWdlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6Nzoic2VjdGlvbiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToyO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjE1OiJtZXRob2QgdG8gY2FsbC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo5OiJjYWxsYmFja3MiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQwOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmZpZWxkc19zZXR0aW5ncygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTU6ImZpZWxkc19zZXR0aW5ncyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoicGFnZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6InNlY3Rpb24iO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo5OiJjYWxsYmFja3MiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo3OTc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMDU0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0MToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpmaWVsZHNfZmllbGRtYXBzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxNDA6IkZpZWxkcyBmb3IgdGhlIEZpZWxkbWFwcyB0YWIKVGhpcyBydW5zIGFkZF9zZXR0aW5nc19zZWN0aW9uIG9uY2UsIGFzIHdlbGwgYXMgYWRkX3NldHRpbmdzX2ZpZWxkIGFuZCByZWdpc3Rlcl9zZXR0aW5nIG1ldGhvZHMgZm9yIGVhY2ggb3B0aW9uIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjM6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxOToid2hhdCBwYWdlIHdlJ3JlIG9uLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NDoicGFnZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI1OiJ3aGF0IHNlY3Rpb24gb2YgdGhlIHBhZ2UuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo3OiJzZWN0aW9uIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTU6Im1ldGhvZCB0byBjYWxsLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTQ6ImlucHV0X2NhbGxiYWNrIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpmaWVsZHNfZmllbGRtYXBzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiZmllbGRzX2ZpZWxkbWFwcyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoicGFnZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6InNlY3Rpb24iO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxNDoiaW5wdXRfY2FsbGJhY2siO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjI6IicnIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTA2NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwNjY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmZpZWxkc19zY2hlZHVsaW5nKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxNDE6IkZpZWxkcyBmb3IgdGhlIFNjaGVkdWxpbmcgdGFiClRoaXMgcnVucyBhZGRfc2V0dGluZ3Nfc2VjdGlvbiBvbmNlLCBhcyB3ZWxsIGFzIGFkZF9zZXR0aW5nc19maWVsZCBhbmQgcmVnaXN0ZXJfc2V0dGluZyBtZXRob2RzIGZvciBlYWNoIG9wdGlvbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTozOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTk6IndoYXQgcGFnZSB3ZSdyZSBvbi4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6InBhZ2UiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyNToid2hhdCBzZWN0aW9uIG9mIHRoZSBwYWdlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6Nzoic2VjdGlvbiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToyO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjE1OiJtZXRob2QgdG8gY2FsbC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo5OiJjYWxsYmFja3MiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmZpZWxkc19zY2hlZHVsaW5nKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNzoiZmllbGRzX3NjaGVkdWxpbmciO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6InBhZ2UiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo3OiJzZWN0aW9uIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6OToiY2FsbGJhY2tzIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTA3NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjExODQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ0OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmZpZWxkc19sb2dfc2V0dGluZ3MoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjE0MzoiRmllbGRzIGZvciB0aGUgTG9nIFNldHRpbmdzIHRhYgpUaGlzIHJ1bnMgYWRkX3NldHRpbmdzX3NlY3Rpb24gb25jZSwgYXMgd2VsbCBhcyBhZGRfc2V0dGluZ3NfZmllbGQgYW5kIHJlZ2lzdGVyX3NldHRpbmcgbWV0aG9kcyBmb3IgZWFjaCBvcHRpb24iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mzp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjE5OiJ3aGF0IHBhZ2Ugd2UncmUgb24uIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJwYWdlIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MjU6IndoYXQgc2VjdGlvbiBvZiB0aGUgcGFnZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjc6InNlY3Rpb24iO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MjtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNToibWV0aG9kIHRvIGNhbGwuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6OToiY2FsbGJhY2tzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpmaWVsZHNfbG9nX3NldHRpbmdzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiZmllbGRzX2xvZ19zZXR0aW5ncyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoicGFnZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6InNlY3Rpb24iO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo5OiJjYWxsYmFja3MiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMTk0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTM3NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6Mzg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6ZmllbGRzX2Vycm9ycygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTQ1OiJGaWVsZHMgZm9yIHRoZSBNYXBwaW5nIEVycm9ycyB0YWIKVGhpcyBydW5zIGFkZF9zZXR0aW5nc19zZWN0aW9uIG9uY2UsIGFzIHdlbGwgYXMgYWRkX3NldHRpbmdzX2ZpZWxkIGFuZCByZWdpc3Rlcl9zZXR0aW5nIG1ldGhvZHMgZm9yIGVhY2ggb3B0aW9uIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjM6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxOToid2hhdCBwYWdlIHdlJ3JlIG9uLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NDoicGFnZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI1OiJ3aGF0IHNlY3Rpb24gb2YgdGhlIHBhZ2UuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo3OiJzZWN0aW9uIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTU6Im1ldGhvZCB0byBjYWxsLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjk6ImNhbGxiYWNrcyI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzg6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6ZmllbGRzX2Vycm9ycygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTM6ImZpZWxkc19lcnJvcnMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6InBhZ2UiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo3OiJzZWN0aW9uIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6OToiY2FsbGJhY2tzIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTM4NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE0MjQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjM3OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46Om5vdGljZXNfZGF0YSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mzk6IkNyZWF0ZSBhbmQgcmV0dXJuIHRoZSBkYXRhIGZvciBub3RpY2VzLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzM6IiRub3RpY2VzIGlzIHRoZSBhcnJheSBvZiBub3RpY2VzLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mzc6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6bm90aWNlc19kYXRhKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoibm90aWNlc19kYXRhIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE0MzE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNTE1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkaXNwbGF5X25vdGljZXMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjgxOiJDcmVhdGUgdGhlIG5vdGljZXMsIHNldHRpbmdzLCBhbmQgY29uZGl0aW9ucyBieSB3aGljaCBhZG1pbiBub3RpY2VzIHNob3VsZCBhcHBlYXIiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDA6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6ZGlzcGxheV9ub3RpY2VzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNToiZGlzcGxheV9ub3RpY2VzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE1MjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNTU2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1ODoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpnZXRfc2FsZXNmb3JjZV9vYmplY3RfZGVzY3JpcHRpb24oKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjE0NToiR2V0IGFsbCB0aGUgU2FsZXNmb3JjZSBvYmplY3Qgc2V0dGluZ3MgZm9yIGZpZWxkbWFwcGluZwpUaGlzIHRha2VzIGVpdGhlciB0aGUgJF9QT1NUIGFycmF5IHZpYSBhamF4LCBvciBjYW4gYmUgZGlyZWN0bHkgY2FsbGVkIHdpdGggYSAkZGF0YSBhcnJheSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NjQ6Im11c3QgY29udGFpbiBhIFNhbGVzZm9yY2Ugb2JqZWN0LCBjYW4gb3B0aW9uYWxseSBjb250YWluIGEgdHlwZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJkYXRhIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTY6IiRvYmplY3Rfc2V0dGluZ3MiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjU4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmdldF9zYWxlc2ZvcmNlX29iamVjdF9kZXNjcmlwdGlvbigpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MzM6ImdldF9zYWxlc2ZvcmNlX29iamVjdF9kZXNjcmlwdGlvbiI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJkYXRhIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czo3OiJhcnJheSgpIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTU2NTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE2MjI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjUzOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmdldF9zYWxlc2ZvcmNlX29iamVjdF9maWVsZHMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjE0NToiR2V0IGFsbCB0aGUgU2FsZXNmb3JjZSBmaWVsZHMgc2V0dGluZ3MgZm9yIGZpZWxkbWFwcGluZwpUaGlzIHRha2VzIGVpdGhlciB0aGUgJF9QT1NUIGFycmF5IHZpYSBhamF4LCBvciBjYW4gYmUgZGlyZWN0bHkgY2FsbGVkIHdpdGggYSAkZGF0YSBhcnJheSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6ODI6Im11c3QgY29udGFpbiBhIFNhbGVzZm9yY2Ugb2JqZWN0IHVubGVzcyBpdCBpcyBBamF4LCBjYW4gb3B0aW9uYWxseSBjb250YWluIGEgdHlwZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJkYXRhIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTQ6IiRvYmplY3RfZmllbGRzIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1MzoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpnZXRfc2FsZXNmb3JjZV9vYmplY3RfZmllbGRzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyODoiZ2V0X3NhbGVzZm9yY2Vfb2JqZWN0X2ZpZWxkcyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJkYXRhIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czo3OiJhcnJheSgpIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTYzMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE2ODE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjUyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmdldF93b3JkcHJlc3Nfb2JqZWN0X2ZpZWxkcygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTQ2OiJHZXQgV29yZFByZXNzIG9iamVjdCBmaWVsZHMgZm9yIGZpZWxkbWFwcGluZwpUaGlzIHRha2VzIGVpdGhlciB0aGUgJF9QT1NUIGFycmF5IHZpYSBhamF4LCBvciBjYW4gYmUgZGlyZWN0bHkgY2FsbGVkIHdpdGggYSAkd29yZHByZXNzX29iamVjdCBmaWVsZCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzY6ImlzIHRoZSBuYW1lIG9mIHRoZSBXb3JkUHJlc3Mgb2JqZWN0LiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTY6IndvcmRwcmVzc19vYmplY3QiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNDoiJG9iamVjdF9maWVsZHMiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjUyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmdldF93b3JkcHJlc3Nfb2JqZWN0X2ZpZWxkcygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6Mjc6ImdldF93b3JkcHJlc3Nfb2JqZWN0X2ZpZWxkcyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxNjoid29yZHByZXNzX29iamVjdCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNjkwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTcwODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cHVzaF90b19zYWxlc2ZvcmNlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxNjc6Ik1hbnVhbGx5IHB1c2ggdGhlIFdvcmRQcmVzcyBvYmplY3QgdG8gU2FsZXNmb3JjZQpUaGlzIHRha2VzIGVpdGhlciB0aGUgJF9QT1NUIGFycmF5IHZpYSBhamF4LCBvciBjYW4gYmUgZGlyZWN0bHkgY2FsbGVkIHdpdGggJHdvcmRwcmVzc19vYmplY3QgYW5kICR3b3JkcHJlc3NfaWQgZmllbGRzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjM6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozNjoiaXMgdGhlIG5hbWUgb2YgdGhlIFdvcmRQcmVzcyBvYmplY3QuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxNjoid29yZHByZXNzX29iamVjdCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM0OiJpcyB0aGUgSUQgb2YgdGhlIFdvcmRQcmVzcyByZWNvcmQuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMjoid29yZHByZXNzX2lkIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NTc6IkZvcmNlIHRoZSBtZXRob2QgdG8gcmV0dXJuIGpzb24gaW5zdGVhZCBvZiBvdXRwdXR0aW5nIGl0LiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTI6ImZvcmNlX3JldHVybiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cHVzaF90b19zYWxlc2ZvcmNlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxODoicHVzaF90b19zYWxlc2ZvcmNlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjM6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjE2OiJ3b3JkcHJlc3Nfb2JqZWN0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czoyOiInJyI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEyOiJ3b3JkcHJlc3NfaWQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjI6IicnIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTI6ImZvcmNlX3JldHVybiI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6NToiZmFsc2UiO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNzE4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTc0NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDU6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cHVsbF9mcm9tX3NhbGVzZm9yY2UoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjE0ODoiTWFudWFsbHkgcHVsbCB0aGUgU2FsZXNmb3JjZSBvYmplY3QgaW50byBXb3JkUHJlc3MKVGhpcyB0YWtlcyBlaXRoZXIgdGhlICRfUE9TVCBhcnJheSB2aWEgYWpheCwgb3IgY2FuIGJlIGRpcmVjdGx5IGNhbGxlZCB3aXRoICRzYWxlc2ZvcmNlX2lkIGZpZWxkcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzU6ImlzIHRoZSBJRCBvZiB0aGUgU2FsZXNmb3JjZSByZWNvcmQuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMzoic2FsZXNmb3JjZV9pZCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM2OiJpcyB0aGUgbmFtZSBvZiB0aGUgV29yZFByZXNzIG9iamVjdC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE2OiJ3b3JkcHJlc3Nfb2JqZWN0IjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpwdWxsX2Zyb21fc2FsZXNmb3JjZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjA6InB1bGxfZnJvbV9zYWxlc2ZvcmNlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjI6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEzOiJzYWxlc2ZvcmNlX2lkIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czoyOiInJyI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjE2OiJ3b3JkcHJlc3Nfb2JqZWN0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czoyOiInJyI7czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE3NTM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNzY2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpyZWZyZXNoX21hcHBlZF9kYXRhKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo5MjoiTWFudWFsbHkgcHVsbCB0aGUgU2FsZXNmb3JjZSBvYmplY3QgaW50byBXb3JkUHJlc3MKVGhpcyB0YWtlcyBhbiBpZCBmb3IgYSBtYXBwaW5nIG9iamVjdCByb3ciO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM5OiJpcyB0aGUgSUQgb2YgdGhlIG1hcHBpbmcgb2JqZWN0IHJlY29yZC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEwOiJtYXBwaW5nX2lkIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpyZWZyZXNoX21hcHBlZF9kYXRhKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToicmVmcmVzaF9tYXBwZWRfZGF0YSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMDoibWFwcGluZ19pZCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNzc0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTc5NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cHJlcGFyZV9maWVsZG1hcF9kYXRhKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0MTI6IlByZXBhcmUgZmllbGRtYXAgZGF0YSBhbmQgcmVkaXJlY3QgYWZ0ZXIgcHJvY2Vzc2luZwpUaGlzIHJ1bnMgd2hlbiB0aGUgY3JlYXRlIG9yIHVwZGF0ZSBmb3JtcyBhcmUgc3VibWl0dGVkCkl0IGlzIHB1YmxpYyBiZWNhdXNlIGl0IGRlcGVuZHMgb24gYW4gYWRtaW4gaG9vawpJdCB0aGVuIGNhbGxzIHRoZSBPYmplY3RfU3luY19TZl9NYXBwaW5nIGNsYXNzIGFuZCBzZW5kcyBwcmVwYXJlZCBkYXRhIG92ZXIgdG8gaXQsIHRoZW4gcmVkaXJlY3RzIHRvIHRoZSBjb3JyZWN0IHBhZ2UKVGhpcyBtZXRob2QgZG9lcyBpbmNsdWRlIGVycm9yIGhhbmRsaW5nLCBieSBsb2FkaW5nIHRoZSBzdWJtaXNzaW9uIGluIGEgdHJhbnNpZW50IGlmIHRoZXJlIGlzIGFuIGVycm9yLCBhbmQgdGhlbiBkZWxldGluZyBpdCB1cG9uIHN1Y2Nlc3MiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6cHJlcGFyZV9maWVsZG1hcF9kYXRhKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMToicHJlcGFyZV9maWVsZG1hcF9kYXRhIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE4MDY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxODU3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkZWxldGVfZmllbGRtYXAoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjIzNToiRGVsZXRlIGZpZWxkbWFwIGRhdGEgYW5kIHJlZGlyZWN0IGFmdGVyIHByb2Nlc3NpbmcKVGhpcyBydW5zIHdoZW4gdGhlIGRlbGV0ZSBsaW5rIGlzIGNsaWNrZWQsIGFmdGVyIHRoZSB1c2VyIGNvbmZpcm1zCkl0IGlzIHB1YmxpYyBiZWNhdXNlIGl0IGRlcGVuZHMgb24gYW4gYWRtaW4gaG9vawpJdCB0aGVuIGNhbGxzIHRoZSBPYmplY3RfU3luY19TZl9NYXBwaW5nIGNsYXNzIGFuZCB0aGUgZGVsZXRlIG1ldGhvZCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkZWxldGVfZmllbGRtYXAoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE1OiJkZWxldGVfZmllbGRtYXAiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTg2NTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE4Nzc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OnByZXBhcmVfb2JqZWN0X21hcF9kYXRhKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozOTg6IlByZXBhcmUgb2JqZWN0IGRhdGEgYW5kIHJlZGlyZWN0IGFmdGVyIHByb2Nlc3NpbmcKVGhpcyBydW5zIHdoZW4gdGhlIHVwZGF0ZSBmb3JtIGlzIHN1Ym1pdHRlZApJdCBpcyBwdWJsaWMgYmVjYXVzZSBpdCBkZXBlbmRzIG9uIGFuIGFkbWluIGhvb2sKSXQgdGhlbiBjYWxscyB0aGUgT2JqZWN0X1N5bmNfU2ZfTWFwcGluZyBjbGFzcyBhbmQgc2VuZHMgcHJlcGFyZWQgZGF0YSBvdmVyIHRvIGl0LCB0aGVuIHJlZGlyZWN0cyB0byB0aGUgY29ycmVjdCBwYWdlClRoaXMgbWV0aG9kIGRvZXMgaW5jbHVkZSBlcnJvciBoYW5kbGluZywgYnkgbG9hZGluZyB0aGUgc3VibWlzc2lvbiBpbiBhIHRyYW5zaWVudCBpZiB0aGVyZSBpcyBhbiBlcnJvciwgYW5kIHRoZW4gZGVsZXRpbmcgaXQgdXBvbiBzdWNjZXNzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OnByZXBhcmVfb2JqZWN0X21hcF9kYXRhKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMzoicHJlcGFyZV9vYmplY3RfbWFwX2RhdGEiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTg4NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE5MjQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQyOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmRlbGV0ZV9vYmplY3RfbWFwKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyNTM6IkRlbGV0ZSBvYmplY3QgbWFwIGRhdGEgYW5kIHJlZGlyZWN0IGFmdGVyIHByb2Nlc3NpbmcKVGhpcyBydW5zIHdoZW4gdGhlIGRlbGV0ZSBsaW5rIGlzIGNsaWNrZWQgb24gYW4gZXJyb3Igcm93LCBhZnRlciB0aGUgdXNlciBjb25maXJtcwpJdCBpcyBwdWJsaWMgYmVjYXVzZSBpdCBkZXBlbmRzIG9uIGFuIGFkbWluIGhvb2sKSXQgdGhlbiBjYWxscyB0aGUgT2JqZWN0X1N5bmNfU2ZfTWFwcGluZyBjbGFzcyBhbmQgdGhlIGRlbGV0ZSBtZXRob2QiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6ZGVsZXRlX29iamVjdF9tYXAoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE3OiJkZWxldGVfb2JqZWN0X21hcCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxOTMyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTk4MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDE6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6aW1wb3J0X2pzb25fZmlsZSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NDU6IkltcG9ydCBhIGpzb24gZmlsZSBhbmQgdXNlIGl0IGZvciBwbHVnaW4gZGF0YSI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjppbXBvcnRfanNvbl9maWxlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNjoiaW1wb3J0X2pzb25fZmlsZSI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxOTg1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjEzNTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDE6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6ZXhwb3J0X2pzb25fZmlsZSgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MzI6IkNyZWF0ZSBhIGpzb24gZmlsZSBmb3IgZXhwb3J0aW5nIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQxOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmV4cG9ydF9qc29uX2ZpbGUoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE2OiJleHBvcnRfanNvbl9maWxlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIxNDA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTY3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkaXNwbGF5X2lucHV0X2ZpZWxkKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czozNDoiRGVmYXVsdCBkaXNwbGF5IGZvciA8aW5wdXQ+IGZpZWxkcyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6Mzc6ImlzIHRoZSBhcmd1bWVudHMgdG8gY3JlYXRlIHRoZSBmaWVsZC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJhcmdzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkaXNwbGF5X2lucHV0X2ZpZWxkKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxOToiZGlzcGxheV9pbnB1dF9maWVsZCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJhcmdzIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjE3NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyMjU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQzOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmRpc3BsYXlfY2hlY2tib3hlcygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6ODI6IkRpc3BsYXkgZm9yIG11bHRpcGxlIGNoZWNrYm94ZXMKQWJvdmUgbWV0aG9kIGNhbiBoYW5kbGUgYSBzaW5nbGUgY2hlY2tib3ggYXMgaXQgaXMiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQyOiJpcyB0aGUgYXJndW1lbnRzIHRvIGNyZWF0ZSB0aGUgY2hlY2tib3hlcy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJhcmdzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MzoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkaXNwbGF5X2NoZWNrYm94ZXMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE4OiJkaXNwbGF5X2NoZWNrYm94ZXMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiYXJncyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyMzM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMjcyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czozOToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkaXNwbGF5X3NlbGVjdCgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MjI6IkRpc3BsYXkgZm9yIGEgZHJvcGRvd24iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQ3OiJpcyB0aGUgYXJndW1lbnRzIG5lZWRlZCB0byBjcmVhdGUgdGhlIGRyb3Bkb3duLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6ImFyZ3MiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM5OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmRpc3BsYXlfc2VsZWN0KCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNDoiZGlzcGxheV9zZWxlY3QiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiYXJncyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyNzk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMzIzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czozNzoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpkaXNwbGF5X2xpbmsoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjM0OiJEZWZhdWx0IGRpc3BsYXkgZm9yIDxhIGhyZWY+IGxpbmtzIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozNDoiaXMgdGhlIGFyZ3VtZW50cyB0byBtYWtlIHRoZSBsaW5rLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6ImFyZ3MiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM3OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmRpc3BsYXlfbGluaygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTI6ImRpc3BsYXlfbGluayI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czo0OiJhcmdzIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjMzMDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIzNTY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ3OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OnNhbml0aXplX3ZhbGlkYXRlX3RleHQoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjEyNDoiQWxsb3cgZm9yIGEgc3RhbmRhcmQgc2FuaXRpemUvdmFsaWRhdGUgbWV0aG9kLiBXZSBjb3VsZCB1c2UgbW9yZSBzcGVjaWZpYyBvbmVzIGlmIG5lZWQgYmUsIGJ1dCB0aGlzIG9uZSBwcm92aWRlcyBhIGJhc2VsaW5lLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MjA6ImlzIHRoZSBvcHRpb24gdmFsdWUuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo2OiJvcHRpb24iO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozODoiJG9wdGlvbiBpcyB0aGUgc2FuaXRpemVkIG9wdGlvbiB2YWx1ZS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e319fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDc6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c2FuaXRpemVfdmFsaWRhdGVfdGV4dCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjI6InNhbml0aXplX3ZhbGlkYXRlX3RleHQiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MTp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6Njoib3B0aW9uIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjM2NDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIzNzQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjMxOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OnN0YXR1cygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6OTk6IlJ1biBhIGRlbW8gb2YgU2FsZXNmb3JjZSBBUEkgY2FsbCBvbiB0aGUgYXV0aGVudGljYXRlIHRhYiBhZnRlciBXb3JkUHJlc3MgaGFzIGF1dGhlbnRpY2F0ZWQgd2l0aCBpdCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzQ6InRoaXMgaXMgdGhlIFNhbGVzZm9yY2UgQVBJIG9iamVjdC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8iOjE6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XwBmcXNlbiI7Tjt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo1OiJzZmFwaSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzE6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c3RhdHVzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo2OiJzdGF0dXMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6InNmYXBpIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjM4MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI0MjY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjMxOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmxvZ291dCgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mzg6IkRlYXV0aG9yaXplIFdvcmRQcmVzcyBmcm9tIFNhbGVzZm9yY2UuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjIxNToiVGhpcyBkZWxldGVzIHRoZSB0b2tlbnMgZnJvbSB0aGUgZGF0YWJhc2U7IGl0IGRvZXMgbm90IGN1cnJlbnRseSBkbyBhbnl0aGluZyBpbiBTYWxlc2ZvcmNlCkZvciB0aGlzIHBsdWdpbiBhdCB0aGlzIHRpbWUsIHRoYXQgaXMgdGhlIGRlY2lzaW9uIHdlIGFyZSBtYWtpbmc6IGRvbid0IGRvIGFueSBraW5kIG9mIGF1dGhvcml6YXRpb24gc3R1ZmYgaW5zaWRlIFNhbGVzZm9yY2UiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozMToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpsb2dvdXQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjY6ImxvZ291dCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjQzMztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI0NTE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQxOiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNsZWFyX3Nmd3BfY2FjaGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjM2OiJBamF4IGNhbGwgdG8gY2xlYXIgdGhlIHBsdWdpbiBjYWNoZS4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDE6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Y2xlYXJfc2Z3cF9jYWNoZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTY6ImNsZWFyX3Nmd3BfY2FjaGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjQ1NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI0NjM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjU0OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmRlbGV0ZV9zYWxlc2ZvcmNlX2FwaV92ZXJzaW9uKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo4NDoiQWpheCBjYWxsIHRvIGRlbGV0ZSB0aGUgb2JqZWN0X3N5bmNfZm9yX3NhbGVzZm9yY2VfYXBpX3ZlcnNpb24gdmFsdWUgZnJvbSB3cF9vcHRpb25zIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xEZXByZWNhdGVkIjozOntzOjc6IgAqAG5hbWUiO3M6MTA6ImRlcHJlY2F0ZWQiO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI5OiJhbmQgd2lsbCBiZSByZW1vdmVkIGluIDMuMC4wLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXERlcHJlY2F0ZWQAdmVyc2lvbiI7Tjt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTQ6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6ZGVsZXRlX3NhbGVzZm9yY2VfYXBpX3ZlcnNpb24oKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI5OiJkZWxldGVfc2FsZXNmb3JjZV9hcGlfdmVyc2lvbiI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NjoicHVibGljIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNDcwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjQ5MTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6MzY6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Y2xlYXJfY2FjaGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjI1OiJDbGVhciB0aGUgcGx1Z2luJ3MgY2FjaGUuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEwMjoiVGhpcyB1c2VzIHRoZSBmbHVzaCBtZXRob2QgY29udGFpbmVkIGluIHRoZSBXb3JkUHJlc3MgY2FjaGUgdG8gY2xlYXIgYWxsIG9mIHRoaXMgcGx1Z2luJ3MgY2FjaGVkIGRhdGEuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6Mjp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM5OiJXaGV0aGVyIHRoaXMgaXMgYW4gQWpheCByZXF1ZXN0IG9yIG5vdC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjQ6ImFqYXgiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM2OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNsZWFyX2NhY2hlKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMToiY2xlYXJfY2FjaGUiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6ImFqYXgiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjU6ImZhbHNlIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjUwMDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI1MjE7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjU4OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNoZWNrX3dvcmRwcmVzc19hZG1pbl9wZXJtaXNzaW9ucygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MTEwOiJDaGVjayBXb3JkUHJlc3MgQWRtaW4gcGVybWlzc2lvbnMKQ2hlY2sgaWYgdGhlIGN1cnJlbnQgdXNlciBpcyBhbGxvd2VkIHRvIGFjY2VzcyB0aGUgU2FsZXNmb3JjZSBwbHVnaW4gb3B0aW9ucyI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1ODoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpjaGVja193b3JkcHJlc3NfYWRtaW5fcGVybWlzc2lvbnMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjMzOiJjaGVja193b3JkcHJlc3NfYWRtaW5fcGVybWlzc2lvbnMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI1Mjc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNTQzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0NDoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpjaGVja193b3JkcHJlc3Nfc3NsKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyNzoiQ2hlY2sgV29yZFByZXNzIFNTTCBzdGF0dXMuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQzOiJIVFRQUyBpcyByZXF1aXJlZCB0byBjb25uZWN0IHRvIFNhbGVzZm9yY2UuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAbmFtZSI7czo2OiJyZXR1cm4iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjEzOiIkc2VjdXJlX2FkbWluIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xCb29sZWFuIjowOnt9fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ0OiJcT2JqZWN0X1N5bmNfU2ZfQWRtaW46OmNoZWNrX3dvcmRwcmVzc19zc2woKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE5OiJjaGVja193b3JkcHJlc3Nfc3NsIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNTUxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjU3NjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Y2hlY2tfd29yZHByZXNzX3NzbF9zdXBwb3J0KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyODoiQ2hlY2sgV29yZFByZXNzIFNTTCBzdXBwb3J0LiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo4MjoiVGhpcyBhbGxvd3MgdXMgdG8gc2hvdyBhIGRpZmZlcmVudCBtZXNzYWdlIGlmIFNTTCBpcyBzdXBwb3J0ZWQsIGJ1dCBpcyBub3QgaW4gdXNlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNjoiJGh0dHBzX3N1cHBvcnRlZCI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo1MjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpjaGVja193b3JkcHJlc3Nfc3NsX3N1cHBvcnQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI3OiJjaGVja193b3JkcHJlc3Nfc3NsX3N1cHBvcnQiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI1ODQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNTk4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo1MjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpzaG93X3NhbGVzZm9yY2VfdXNlcl9maWVsZHMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjc5OiJTaG93IHdoYXQgd2Uga25vdyBhYm91dCB0aGlzIHVzZXIncyByZWxhdGlvbnNoaXAgdG8gYSBTYWxlc2ZvcmNlIG9iamVjdCwgaWYgYW55IjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjE6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozOToidGhpcyBpcyB0aGUgdXNlciBvYmplY3QgZnJvbSBXb3JkUHJlc3MuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO047fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NDoidXNlciI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c2hvd19zYWxlc2ZvcmNlX3VzZXJfZmllbGRzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyNzoic2hvd19zYWxlc2ZvcmNlX3VzZXJfZmllbGRzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjQ6InVzZXIiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNjA1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjYzMztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NTI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c2F2ZV9zYWxlc2ZvcmNlX3VzZXJfZmllbGRzKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo1NjoiSWYgdGhlIHVzZXIgcHJvZmlsZSBoYXMgYmVlbiBtYXBwZWQgdG8gU2FsZXNmb3JjZSwgZG8gaXQiO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjI5OiJ0aGUgSUQgb2YgdGhlIFdvcmRQcmVzcyB1c2VyLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NzoidXNlcl9pZCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NTI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6c2F2ZV9zYWxlc2ZvcmNlX3VzZXJfZmllbGRzKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyNzoic2F2ZV9zYWxlc2ZvcmNlX3VzZXJfZmllbGRzIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6InVzZXJfaWQiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNjQwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjY2NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6Mjk6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6dGFicygpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6Mzk6IlJlbmRlciB0YWJzIGZvciBzZXR0aW5ncyBwYWdlcyBpbiBhZG1pbiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToyOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzQ6ImlzIHRoZSB0YWJzIGZvciB0aGUgc2V0dGluZ3MgbWVudS4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJ0YWJzIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjE7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTY6ImlzIGEgc2luZ2xlIHRhYi4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjM6InRhYiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6Mjk6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6dGFicygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoidGFicyI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoidGFicyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MTtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjM6InRhYiI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNjc1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjcxMDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6Mzk6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Y2xlYXJfc2NoZWR1bGUoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjY5OiJDbGVhciBzY2hlZHVsZQpUaGlzIGNsZWFycyB0aGUgc2NoZWR1bGUgaWYgdGhlIHVzZXIgY2xpY2tzIHRoZSBidXR0b24iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjQyOiJpcyB0aGUgbmFtZSBvZiB0aGUgc2NoZWR1bGUgYmVpbmcgY2xlYXJlZC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEzOiJzY2hlZHVsZV9uYW1lIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO319czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czozOToiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpjbGVhcl9zY2hlZHVsZSgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTQ6ImNsZWFyX3NjaGVkdWxlIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMzoic2NoZWR1bGVfbmFtZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNzE4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MjcyNjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Z2V0X3NjaGVkdWxlX2NvdW50KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoyNzoiR2V0IGNvdW50IG9mIHNjaGVkdWxlIGl0ZW1zIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjA6IiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjI6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyODoiaXMgdGhlIG5hbWUgb2YgdGhlIHNjaGVkdWxlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6MTM6InNjaGVkdWxlX25hbWUiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo2OiIkY291bnQiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQiOjI6e3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2UiO3M6MDoiIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlQWxpYXNlcyI7YTowOnt9fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDM6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Z2V0X3NjaGVkdWxlX2NvdW50KCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxODoiZ2V0X3NjaGVkdWxlX2NvdW50Ijt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YToxOntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMzoic2NoZWR1bGVfbmFtZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNzM0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mjc1ODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDI6IlxPYmplY3RfU3luY19TZl9BZG1pbjo6Y3JlYXRlX29iamVjdF9tYXAoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjcxOiJDcmVhdGUgYW4gb2JqZWN0IG1hcCBiZXR3ZWVuIGEgV29yZFByZXNzIG9iamVjdCBhbmQgYSBTYWxlc2ZvcmNlIG9iamVjdCI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YTo1OntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NDM6IlVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgV29yZFByZXNzIG9iamVjdC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEyOiJ3b3JkcHJlc3NfaWQiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7fWk6MTtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyNjoiV2hhdCBraW5kIG9mIG9iamVjdCBpcyBpdC4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE2OiJ3b3JkcHJlc3Nfb2JqZWN0IjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjI7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NDQ6IlVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgU2FsZXNmb3JjZSBvYmplY3QuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMzoic2FsZXNmb3JjZV9pZCI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDt9aTozO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjIwOiJEaWQgd2UgcHVzaCBvciBwdWxsLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6NjoiYWN0aW9uIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO31pOjQ7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NjA6IiR3cGRiLT5pbnNlcnRfaWQgVGhpcyBpcyB0aGUgZGF0YWJhc2Ugcm93IGZvciB0aGUgbWFwIG9iamVjdCI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czo3OiIAKgB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MjoiXE9iamVjdF9TeW5jX1NmX0FkbWluOjpjcmVhdGVfb2JqZWN0X21hcCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTc6ImNyZWF0ZV9vYmplY3RfbWFwIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTo0OntpOjA7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMjoid29yZHByZXNzX2lkIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTY6IndvcmRwcmVzc19vYmplY3QiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMzoic2FsZXNmb3JjZV9pZCI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MztPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjY6ImFjdGlvbiI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiJyciO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNzY5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mjc4NTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fX1zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AdXNlZFRyYWl0cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI3ODc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGFkYXRhIjthOjA6e319fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW50ZXJmYWNlcyI7YTowOnt9czo0MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQB0cmFpdHMiO2E6MDp7fXM6NDA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZW51bXMiO2E6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAbWV0YWRhdGEiO2E6MDp7fX0=";