1688054429
waR3U4bTeM%3Afe8420cea7054eb876e954fc422408d8-7702561481cf7d3c34a9391545eed823
s:114100:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGhhc2giO3M6MzI6Ijc3MDI1NjE0ODFjZjdkM2MzNGE5MzkxNTQ1ZWVkODIzIjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWUiO3M6OToiTGV4ZXIucGhwIjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHBhdGgiO3M6NDc6InZlbmRvci9uaWtpYy9waHAtcGFyc2VyL2xpYi9QaHBQYXJzZXIvTGV4ZXIucGhwIjtzOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHNvdXJjZSI7czoyNDA3OToiPD9waHAgZGVjbGFyZShzdHJpY3RfdHlwZXM9MSk7CgpuYW1lc3BhY2UgUGhwUGFyc2VyOwoKdXNlIFBocFBhcnNlclxQYXJzZXJcVG9rZW5zOwoKY2xhc3MgTGV4ZXIKewogICAgcHJvdGVjdGVkICRjb2RlOwogICAgcHJvdGVjdGVkICR0b2tlbnM7CiAgICBwcm90ZWN0ZWQgJHBvczsKICAgIHByb3RlY3RlZCAkbGluZTsKICAgIHByb3RlY3RlZCAkZmlsZVBvczsKICAgIHByb3RlY3RlZCAkcHJldkNsb3NlVGFnSGFzTmV3bGluZTsKCiAgICBwcm90ZWN0ZWQgJHRva2VuTWFwOwogICAgcHJvdGVjdGVkICRkcm9wVG9rZW5zOwogICAgcHJvdGVjdGVkICRpZGVudGlmaWVyVG9rZW5zOwoKICAgIHByaXZhdGUgJGF0dHJpYnV0ZVN0YXJ0TGluZVVzZWQ7CiAgICBwcml2YXRlICRhdHRyaWJ1dGVFbmRMaW5lVXNlZDsKICAgIHByaXZhdGUgJGF0dHJpYnV0ZVN0YXJ0VG9rZW5Qb3NVc2VkOwogICAgcHJpdmF0ZSAkYXR0cmlidXRlRW5kVG9rZW5Qb3NVc2VkOwogICAgcHJpdmF0ZSAkYXR0cmlidXRlU3RhcnRGaWxlUG9zVXNlZDsKICAgIHByaXZhdGUgJGF0dHJpYnV0ZUVuZEZpbGVQb3NVc2VkOwogICAgcHJpdmF0ZSAkYXR0cmlidXRlQ29tbWVudHNVc2VkOwoKICAgIC8qKgogICAgICogQ3JlYXRlcyBhIExleGVyLgogICAgICoKICAgICAqIEBwYXJhbSBhcnJheSAkb3B0aW9ucyBPcHRpb25zIGFycmF5LiBDdXJyZW50bHkgb25seSB0aGUgJ3VzZWRBdHRyaWJ1dGVzJyBvcHRpb24gaXMgc3VwcG9ydGVkLAogICAgICogICAgICAgICAgICAgICAgICAgICAgIHdoaWNoIGlzIGFuIGFycmF5IG9mIGF0dHJpYnV0ZXMgdG8gYWRkIHRvIHRoZSBBU1Qgbm9kZXMuIFBvc3NpYmxlCiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgYXR0cmlidXRlcyBhcmU6ICdjb21tZW50cycsICdzdGFydExpbmUnLCAnZW5kTGluZScsICdzdGFydFRva2VuUG9zJywKICAgICAqICAgICAgICAgICAgICAgICAgICAgICAnZW5kVG9rZW5Qb3MnLCAnc3RhcnRGaWxlUG9zJywgJ2VuZEZpbGVQb3MnLiBUaGUgb3B0aW9uIGRlZmF1bHRzIHRvIHRoZQogICAgICogICAgICAgICAgICAgICAgICAgICAgIGZpcnN0IHRocmVlLiBGb3IgbW9yZSBpbmZvIHNlZSBnZXROZXh0VG9rZW4oKSBkb2NzLgogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoYXJyYXkgJG9wdGlvbnMgPSBbXSkgewogICAgICAgIC8vIENyZWF0ZSBNYXAgZnJvbSBpbnRlcm5hbCB0b2tlbnMgdG8gUGhwUGFyc2VyIHRva2Vucy4KICAgICAgICAkdGhpcy0+ZGVmaW5lQ29tcGF0aWJpbGl0eVRva2VucygpOwogICAgICAgICR0aGlzLT50b2tlbk1hcCA9ICR0aGlzLT5jcmVhdGVUb2tlbk1hcCgpOwogICAgICAgICR0aGlzLT5pZGVudGlmaWVyVG9rZW5zID0gJHRoaXMtPmNyZWF0ZUlkZW50aWZpZXJUb2tlbk1hcCgpOwoKICAgICAgICAvLyBtYXAgb2YgdG9rZW5zIHRvIGRyb3Agd2hpbGUgbGV4aW5nICh0aGUgbWFwIGlzIG9ubHkgdXNlZCBmb3IgaXNzZXQgbG9va3VwLAogICAgICAgIC8vIHRoYXQncyB3aHkgdGhlIHZhbHVlIGlzIHNpbXBseSBzZXQgdG8gMTsgdGhlIHZhbHVlIGlzIG5ldmVyIGFjdHVhbGx5IHVzZWQuKQogICAgICAgICR0aGlzLT5kcm9wVG9rZW5zID0gYXJyYXlfZmlsbF9rZXlzKAogICAgICAgICAgICBbXFRfV0hJVEVTUEFDRSwgXFRfT1BFTl9UQUcsIFxUX0NPTU1FTlQsIFxUX0RPQ19DT01NRU5ULCBcVF9CQURfQ0hBUkFDVEVSXSwgMQogICAgICAgICk7CgogICAgICAgICRkZWZhdWx0QXR0cmlidXRlcyA9IFsnY29tbWVudHMnLCAnc3RhcnRMaW5lJywgJ2VuZExpbmUnXTsKICAgICAgICAkdXNlZEF0dHJpYnV0ZXMgPSBhcnJheV9maWxsX2tleXMoJG9wdGlvbnNbJ3VzZWRBdHRyaWJ1dGVzJ10gPz8gJGRlZmF1bHRBdHRyaWJ1dGVzLCB0cnVlKTsKCiAgICAgICAgLy8gQ3JlYXRlIGluZGl2aWR1YWwgYm9vbGVhbiBwcm9wZXJ0aWVzIHRvIG1ha2UgdGhlc2UgY2hlY2tzIGZhc3Rlci4KICAgICAgICAkdGhpcy0+YXR0cmlidXRlU3RhcnRMaW5lVXNlZCA9IGlzc2V0KCR1c2VkQXR0cmlidXRlc1snc3RhcnRMaW5lJ10pOwogICAgICAgICR0aGlzLT5hdHRyaWJ1dGVFbmRMaW5lVXNlZCA9IGlzc2V0KCR1c2VkQXR0cmlidXRlc1snZW5kTGluZSddKTsKICAgICAgICAkdGhpcy0+YXR0cmlidXRlU3RhcnRUb2tlblBvc1VzZWQgPSBpc3NldCgkdXNlZEF0dHJpYnV0ZXNbJ3N0YXJ0VG9rZW5Qb3MnXSk7CiAgICAgICAgJHRoaXMtPmF0dHJpYnV0ZUVuZFRva2VuUG9zVXNlZCA9IGlzc2V0KCR1c2VkQXR0cmlidXRlc1snZW5kVG9rZW5Qb3MnXSk7CiAgICAgICAgJHRoaXMtPmF0dHJpYnV0ZVN0YXJ0RmlsZVBvc1VzZWQgPSBpc3NldCgkdXNlZEF0dHJpYnV0ZXNbJ3N0YXJ0RmlsZVBvcyddKTsKICAgICAgICAkdGhpcy0+YXR0cmlidXRlRW5kRmlsZVBvc1VzZWQgPSBpc3NldCgkdXNlZEF0dHJpYnV0ZXNbJ2VuZEZpbGVQb3MnXSk7CiAgICAgICAgJHRoaXMtPmF0dHJpYnV0ZUNvbW1lbnRzVXNlZCA9IGlzc2V0KCR1c2VkQXR0cmlidXRlc1snY29tbWVudHMnXSk7CiAgICB9CgogICAgLyoqCiAgICAgKiBJbml0aWFsaXplcyB0aGUgbGV4ZXIgZm9yIGxleGluZyB0aGUgcHJvdmlkZWQgc291cmNlIGNvZGUuCiAgICAgKgogICAgICogVGhpcyBmdW5jdGlvbiBkb2VzIG5vdCB0aHJvdyBpZiBsZXhpbmcgZXJyb3JzIG9jY3VyLiBJbnN0ZWFkLCBlcnJvcnMgbWF5IGJlIHJldHJpZXZlZCB1c2luZwogICAgICogdGhlIGdldEVycm9ycygpIG1ldGhvZC4KICAgICAqCiAgICAgKiBAcGFyYW0gc3RyaW5nICRjb2RlIFRoZSBzb3VyY2UgY29kZSB0byBsZXgKICAgICAqIEBwYXJhbSBFcnJvckhhbmRsZXJ8bnVsbCAkZXJyb3JIYW5kbGVyIEVycm9yIGhhbmRsZXIgdG8gdXNlIGZvciBsZXhpbmcgZXJyb3JzLiBEZWZhdWx0cyB0bwogICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRXJyb3JIYW5kbGVyXFRocm93aW5nCiAgICAgKi8KICAgIHB1YmxpYyBmdW5jdGlvbiBzdGFydExleGluZyhzdHJpbmcgJGNvZGUsIEVycm9ySGFuZGxlciAkZXJyb3JIYW5kbGVyID0gbnVsbCkgewogICAgICAgIGlmIChudWxsID09PSAkZXJyb3JIYW5kbGVyKSB7CiAgICAgICAgICAgICRlcnJvckhhbmRsZXIgPSBuZXcgRXJyb3JIYW5kbGVyXFRocm93aW5nKCk7CiAgICAgICAgfQoKICAgICAgICAkdGhpcy0+Y29kZSA9ICRjb2RlOyAvLyBrZWVwIHRoZSBjb2RlIGFyb3VuZCBmb3IgX19oYWx0X2NvbXBpbGVyKCkgaGFuZGxpbmcKICAgICAgICAkdGhpcy0+cG9zICA9IC0xOwogICAgICAgICR0aGlzLT5saW5lID0gIDE7CiAgICAgICAgJHRoaXMtPmZpbGVQb3MgPSAwOwoKICAgICAgICAvLyBJZiBpbmxpbmUgSFRNTCBvY2N1cnMgd2l0aG91dCBwcmVjZWRpbmcgY29kZSwgdHJlYXQgaXQgYXMgaWYgaXQgaGFkIGEgbGVhZGluZyBuZXdsaW5lLgogICAgICAgIC8vIFRoaXMgZW5zdXJlcyBwcm9wZXIgY29tcG9zYWJpbGl0eSwgYmVjYXVzZSBoYXZpbmcgYSBuZXdsaW5lIGlzIHRoZSAic2FmZSIgYXNzdW1wdGlvbi4KICAgICAgICAkdGhpcy0+cHJldkNsb3NlVGFnSGFzTmV3bGluZSA9IHRydWU7CgogICAgICAgICRzY3JlYW0gPSBpbmlfc2V0KCd4ZGVidWcuc2NyZWFtJywgJzAnKTsKCiAgICAgICAgJHRoaXMtPnRva2VucyA9IEB0b2tlbl9nZXRfYWxsKCRjb2RlKTsKICAgICAgICAkdGhpcy0+cG9zdHByb2Nlc3NUb2tlbnMoJGVycm9ySGFuZGxlcik7CgogICAgICAgIGlmIChmYWxzZSAhPT0gJHNjcmVhbSkgewogICAgICAgICAgICBpbmlfc2V0KCd4ZGVidWcuc2NyZWFtJywgJHNjcmVhbSk7CiAgICAgICAgfQogICAgfQoKICAgIHByaXZhdGUgZnVuY3Rpb24gaGFuZGxlSW52YWxpZENoYXJhY3RlclJhbmdlKCRzdGFydCwgJGVuZCwgJGxpbmUsIEVycm9ySGFuZGxlciAkZXJyb3JIYW5kbGVyKSB7CiAgICAgICAgJHRva2VucyA9IFtdOwogICAgICAgIGZvciAoJGkgPSAkc3RhcnQ7ICRpIDwgJGVuZDsgJGkrKykgewogICAgICAgICAgICAkY2hyID0gJHRoaXMtPmNvZGVbJGldOwogICAgICAgICAgICBpZiAoJGNociA9PT0gIlwwIikgewogICAgICAgICAgICAgICAgLy8gUEhQIGN1dHMgZXJyb3IgbWVzc2FnZSBhZnRlciBudWxsIGJ5dGUsIHNvIG5lZWQgc3BlY2lhbCBjYXNlCiAgICAgICAgICAgICAgICAkZXJyb3JNc2cgPSAnVW5leHBlY3RlZCBudWxsIGJ5dGUnOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgJGVycm9yTXNnID0gc3ByaW50ZigKICAgICAgICAgICAgICAgICAgICAnVW5leHBlY3RlZCBjaGFyYWN0ZXIgIiVzIiAoQVNDSUkgJWQpJywgJGNociwgb3JkKCRjaHIpCiAgICAgICAgICAgICAgICApOwogICAgICAgICAgICB9CgogICAgICAgICAgICAkdG9rZW5zW10gPSBbXFRfQkFEX0NIQVJBQ1RFUiwgJGNociwgJGxpbmVdOwogICAgICAgICAgICAkZXJyb3JIYW5kbGVyLT5oYW5kbGVFcnJvcihuZXcgRXJyb3IoJGVycm9yTXNnLCBbCiAgICAgICAgICAgICAgICAnc3RhcnRMaW5lJyA9PiAkbGluZSwKICAgICAgICAgICAgICAgICdlbmRMaW5lJyA9PiAkbGluZSwKICAgICAgICAgICAgICAgICdzdGFydEZpbGVQb3MnID0+ICRpLAogICAgICAgICAgICAgICAgJ2VuZEZpbGVQb3MnID0+ICRpLAogICAgICAgICAgICBdKSk7CiAgICAgICAgfQogICAgICAgIHJldHVybiAkdG9rZW5zOwogICAgfQoKICAgIC8qKgogICAgICogQ2hlY2sgd2hldGhlciBjb21tZW50IHRva2VuIGlzIHVudGVybWluYXRlZC4KICAgICAqCiAgICAgKiBAcmV0dXJuIGJvb2wKICAgICAqLwogICAgcHJpdmF0ZSBmdW5jdGlvbiBpc1VudGVybWluYXRlZENvbW1lbnQoJHRva2VuKSA6IGJvb2wgewogICAgICAgIHJldHVybiAoJHRva2VuWzBdID09PSBcVF9DT01NRU5UIHx8ICR0b2tlblswXSA9PT0gXFRfRE9DX0NPTU1FTlQpCiAgICAgICAgICAgICYmIHN1YnN0cigkdG9rZW5bMV0sIDAsIDIpID09PSAnLyonCiAgICAgICAgICAgICYmIHN1YnN0cigkdG9rZW5bMV0sIC0yKSAhPT0gJyovJzsKICAgIH0KCiAgICBwcm90ZWN0ZWQgZnVuY3Rpb24gcG9zdHByb2Nlc3NUb2tlbnMoRXJyb3JIYW5kbGVyICRlcnJvckhhbmRsZXIpIHsKICAgICAgICAvLyBQSFAncyBlcnJvciBoYW5kbGluZyBmb3IgdG9rZW5fZ2V0X2FsbCgpIGlzIHJhdGhlciBiYWQsIHNvIGlmIHdlIHdhbnQgZGV0YWlsZWQKICAgICAgICAvLyBlcnJvciBpbmZvcm1hdGlvbiB3ZSBuZWVkIHRvIGNvbXB1dGUgaXQgb3Vyc2VsdmVzLiBJbnZhbGlkIGNoYXJhY3RlciBlcnJvcnMgYXJlCiAgICAgICAgLy8gZGV0ZWN0ZWQgYnkgZmluZGluZyAiZ2FwcyIgaW4gdGhlIHRva2VuIGFycmF5LiBVbnRlcm1pbmF0ZWQgY29tbWVudHMgYXJlIGRldGVjdGVkCiAgICAgICAgLy8gYnkgY2hlY2tpbmcgaWYgYSB0cmFpbGluZyBjb21tZW50IGhhcyBhICIqLyIgYXQgdGhlIGVuZC4KICAgICAgICAvLwogICAgICAgIC8vIEFkZGl0aW9uYWxseSwgd2UgcGVyZm9ybSBhIG51bWJlciBvZiBjYW5vbmljYWxpemF0aW9ucyBoZXJlOgogICAgICAgIC8vICAqIFVzZSB0aGUgUEhQIDguMCBjb21tZW50IGZvcm1hdCwgd2hpY2ggZG9lcyBub3QgaW5jbHVkZSB0cmFpbGluZyB3aGl0ZXNwYWNlIGFueW1vcmUuCiAgICAgICAgLy8gICogVXNlIFBIUCA4LjAgVF9OQU1FXyogdG9rZW5zLgogICAgICAgIC8vICAqIFVzZSBQSFAgOC4xIFRfQU1QRVJTQU5EX05PVF9GT0xMT1dFRF9CWV9WQVJfT1JfVkFSQVJHIGFuZAogICAgICAgIC8vICAgIFRfQU1QRVJTQU5EX0ZPTExPV0VEX0JZX1ZBUl9PUl9WQVJBUkcgdG9rZW5zIHVzZWQgdG8gZGlzYW1iaWd1YXRlIGludGVyc2VjdGlvbiB0eXBlcy4KCiAgICAgICAgJGZpbGVQb3MgPSAwOwogICAgICAgICRsaW5lID0gMTsKICAgICAgICAkbnVtVG9rZW5zID0gXGNvdW50KCR0aGlzLT50b2tlbnMpOwogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8ICRudW1Ub2tlbnM7ICRpKyspIHsKICAgICAgICAgICAgJHRva2VuID0gJHRoaXMtPnRva2Vuc1skaV07CgogICAgICAgICAgICAvLyBTaW5jZSBQSFAgNy40IGludmFsaWQgY2hhcmFjdGVycyBhcmUgcmVwcmVzZW50ZWQgYnkgYSBUX0JBRF9DSEFSQUNURVIgdG9rZW4uCiAgICAgICAgICAgIC8vIEluIHRoaXMgY2FzZSB3ZSBvbmx5IG5lZWQgdG8gZW1pdCBhbiBlcnJvci4KICAgICAgICAgICAgaWYgKCR0b2tlblswXSA9PT0gXFRfQkFEX0NIQVJBQ1RFUikgewogICAgICAgICAgICAgICAgJHRoaXMtPmhhbmRsZUludmFsaWRDaGFyYWN0ZXJSYW5nZSgkZmlsZVBvcywgJGZpbGVQb3MgKyAxLCAkbGluZSwgJGVycm9ySGFuZGxlcik7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICgkdG9rZW5bMF0gPT09IFxUX0NPTU1FTlQgJiYgc3Vic3RyKCR0b2tlblsxXSwgMCwgMikgIT09ICcvKicKICAgICAgICAgICAgICAgICAgICAmJiBwcmVnX21hdGNoKCcvKFxyXG58XG58XHIpJC9EJywgJHRva2VuWzFdLCAkbWF0Y2hlcykpIHsKICAgICAgICAgICAgICAgICR0cmFpbGluZ05ld2xpbmUgPSAkbWF0Y2hlc1swXTsKICAgICAgICAgICAgICAgICR0b2tlblsxXSA9IHN1YnN0cigkdG9rZW5bMV0sIDAsIC1zdHJsZW4oJHRyYWlsaW5nTmV3bGluZSkpOwogICAgICAgICAgICAgICAgJHRoaXMtPnRva2Vuc1skaV0gPSAkdG9rZW47CiAgICAgICAgICAgICAgICBpZiAoaXNzZXQoJHRoaXMtPnRva2Vuc1skaSArIDFdKSAmJiAkdGhpcy0+dG9rZW5zWyRpICsgMV1bMF0gPT09IFxUX1dISVRFU1BBQ0UpIHsKICAgICAgICAgICAgICAgICAgICAvLyBNb3ZlIHRyYWlsaW5nIG5ld2xpbmUgaW50byBmb2xsb3dpbmcgVF9XSElURVNQQUNFIHRva2VuLCBpZiBpdCBhbHJlYWR5IGV4aXN0cy4KICAgICAgICAgICAgICAgICAgICAkdGhpcy0+dG9rZW5zWyRpICsgMV1bMV0gPSAkdHJhaWxpbmdOZXdsaW5lIC4gJHRoaXMtPnRva2Vuc1skaSArIDFdWzFdOwogICAgICAgICAgICAgICAgICAgICR0aGlzLT50b2tlbnNbJGkgKyAxXVsyXS0tOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAvLyBPdGhlcndpc2UsIHdlIG5lZWQgdG8gY3JlYXRlIGEgbmV3IFRfV0hJVEVTUEFDRSB0b2tlbi4KICAgICAgICAgICAgICAgICAgICBhcnJheV9zcGxpY2UoJHRoaXMtPnRva2VucywgJGkgKyAxLCAwLCBbCiAgICAgICAgICAgICAgICAgICAgICAgIFtcVF9XSElURVNQQUNFLCAkdHJhaWxpbmdOZXdsaW5lLCAkbGluZV0sCiAgICAgICAgICAgICAgICAgICAgXSk7CiAgICAgICAgICAgICAgICAgICAgJG51bVRva2VucysrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBFbXVsYXRlIFBIUCA4IFRfTkFNRV8qIHRva2VucywgYnkgY29tYmluaW5nIHNlcXVlbmNlcyBvZiBUX05TX1NFUEFSQVRPUiBhbmQgVF9TVFJJTkcKICAgICAgICAgICAgLy8gaW50byBhIHNpbmdsZSB0b2tlbi4KICAgICAgICAgICAgaWYgKFxpc19hcnJheSgkdG9rZW4pCiAgICAgICAgICAgICAgICAgICAgJiYgKCR0b2tlblswXSA9PT0gXFRfTlNfU0VQQVJBVE9SIHx8IGlzc2V0KCR0aGlzLT5pZGVudGlmaWVyVG9rZW5zWyR0b2tlblswXV0pKSkgewogICAgICAgICAgICAgICAgJGxhc3RXYXNTZXBhcmF0b3IgPSAkdG9rZW5bMF0gPT09IFxUX05TX1NFUEFSQVRPUjsKICAgICAgICAgICAgICAgICR0ZXh0ID0gJHRva2VuWzFdOwogICAgICAgICAgICAgICAgZm9yICgkaiA9ICRpICsgMTsgaXNzZXQoJHRoaXMtPnRva2Vuc1skal0pOyAkaisrKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCRsYXN0V2FzU2VwYXJhdG9yKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghaXNzZXQoJHRoaXMtPmlkZW50aWZpZXJUb2tlbnNbJHRoaXMtPnRva2Vuc1skal1bMF1dKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgJGxhc3RXYXNTZXBhcmF0b3IgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoJHRoaXMtPnRva2Vuc1skal1bMF0gIT09IFxUX05TX1NFUEFSQVRPUikgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgJGxhc3RXYXNTZXBhcmF0b3IgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAkdGV4dCAuPSAkdGhpcy0+dG9rZW5zWyRqXVsxXTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmICgkbGFzdFdhc1NlcGFyYXRvcikgewogICAgICAgICAgICAgICAgICAgIC8vIFRyYWlsaW5nIHNlcGFyYXRvciBpcyBub3QgcGFydCBvZiB0aGUgbmFtZS4KICAgICAgICAgICAgICAgICAgICAkai0tOwogICAgICAgICAgICAgICAgICAgICR0ZXh0ID0gc3Vic3RyKCR0ZXh0LCAwLCAtMSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoJGogPiAkaSArIDEpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoJHRva2VuWzBdID09PSBcVF9OU19TRVBBUkFUT1IpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJHR5cGUgPSBcVF9OQU1FX0ZVTExZX1FVQUxJRklFRDsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCR0b2tlblswXSA9PT0gXFRfTkFNRVNQQUNFKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR0eXBlID0gXFRfTkFNRV9SRUxBVElWRTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAkdHlwZSA9IFxUX05BTUVfUVVBTElGSUVEOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAkdG9rZW4gPSBbJHR5cGUsICR0ZXh0LCAkbGluZV07CiAgICAgICAgICAgICAgICAgICAgYXJyYXlfc3BsaWNlKCR0aGlzLT50b2tlbnMsICRpLCAkaiAtICRpLCBbJHRva2VuXSk7CiAgICAgICAgICAgICAgICAgICAgJG51bVRva2VucyAtPSAkaiAtICRpIC0gMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKCR0b2tlbiA9PT0gJyYnKSB7CiAgICAgICAgICAgICAgICAkbmV4dCA9ICRpICsgMTsKICAgICAgICAgICAgICAgIHdoaWxlIChpc3NldCgkdGhpcy0+dG9rZW5zWyRuZXh0XSkgJiYgJHRoaXMtPnRva2Vuc1skbmV4dF1bMF0gPT09IFxUX1dISVRFU1BBQ0UpIHsKICAgICAgICAgICAgICAgICAgICAkbmV4dCsrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJGZvbGxvd2VkQnlWYXJPclZhckFyZyA9IGlzc2V0KCR0aGlzLT50b2tlbnNbJG5leHRdKSAmJgogICAgICAgICAgICAgICAgICAgICgkdGhpcy0+dG9rZW5zWyRuZXh0XVswXSA9PT0gXFRfVkFSSUFCTEUgfHwgJHRoaXMtPnRva2Vuc1skbmV4dF1bMF0gPT09IFxUX0VMTElQU0lTKTsKICAgICAgICAgICAgICAgICR0aGlzLT50b2tlbnNbJGldID0gJHRva2VuID0gWwogICAgICAgICAgICAgICAgICAgICRmb2xsb3dlZEJ5VmFyT3JWYXJBcmcKICAgICAgICAgICAgICAgICAgICAgICAgPyBcVF9BTVBFUlNBTkRfRk9MTE9XRURfQllfVkFSX09SX1ZBUkFSRwogICAgICAgICAgICAgICAgICAgICAgICA6IFxUX0FNUEVSU0FORF9OT1RfRk9MTE9XRURfQllfVkFSX09SX1ZBUkFSRywKICAgICAgICAgICAgICAgICAgICAnJicsCiAgICAgICAgICAgICAgICAgICAgJGxpbmUsCiAgICAgICAgICAgICAgICBdOwogICAgICAgICAgICB9CgogICAgICAgICAgICAkdG9rZW5WYWx1ZSA9IFxpc19zdHJpbmcoJHRva2VuKSA/ICR0b2tlbiA6ICR0b2tlblsxXTsKICAgICAgICAgICAgJHRva2VuTGVuID0gXHN0cmxlbigkdG9rZW5WYWx1ZSk7CgogICAgICAgICAgICBpZiAoc3Vic3RyKCR0aGlzLT5jb2RlLCAkZmlsZVBvcywgJHRva2VuTGVuKSAhPT0gJHRva2VuVmFsdWUpIHsKICAgICAgICAgICAgICAgIC8vIFNvbWV0aGluZyBpcyBtaXNzaW5nLCBtdXN0IGJlIGFuIGludmFsaWQgY2hhcmFjdGVyCiAgICAgICAgICAgICAgICAkbmV4dEZpbGVQb3MgPSBzdHJwb3MoJHRoaXMtPmNvZGUsICR0b2tlblZhbHVlLCAkZmlsZVBvcyk7CiAgICAgICAgICAgICAgICAkYmFkQ2hhclRva2VucyA9ICR0aGlzLT5oYW5kbGVJbnZhbGlkQ2hhcmFjdGVyUmFuZ2UoCiAgICAgICAgICAgICAgICAgICAgJGZpbGVQb3MsICRuZXh0RmlsZVBvcywgJGxpbmUsICRlcnJvckhhbmRsZXIpOwogICAgICAgICAgICAgICAgJGZpbGVQb3MgPSAoaW50KSAkbmV4dEZpbGVQb3M7CgogICAgICAgICAgICAgICAgYXJyYXlfc3BsaWNlKCR0aGlzLT50b2tlbnMsICRpLCAwLCAkYmFkQ2hhclRva2Vucyk7CiAgICAgICAgICAgICAgICAkbnVtVG9rZW5zICs9IFxjb3VudCgkYmFkQ2hhclRva2Vucyk7CiAgICAgICAgICAgICAgICAkaSArPSBcY291bnQoJGJhZENoYXJUb2tlbnMpOwogICAgICAgICAgICB9CgogICAgICAgICAgICAkZmlsZVBvcyArPSAkdG9rZW5MZW47CiAgICAgICAgICAgICRsaW5lICs9IHN1YnN0cl9jb3VudCgkdG9rZW5WYWx1ZSwgIlxuIik7CiAgICAgICAgfQoKICAgICAgICBpZiAoJGZpbGVQb3MgIT09IFxzdHJsZW4oJHRoaXMtPmNvZGUpKSB7CiAgICAgICAgICAgIGlmIChzdWJzdHIoJHRoaXMtPmNvZGUsICRmaWxlUG9zLCAyKSA9PT0gJy8qJykgewogICAgICAgICAgICAgICAgLy8gVW5saWtlIFBIUCwgSEhWTSB3aWxsIGRyb3AgdW50ZXJtaW5hdGVkIGNvbW1lbnRzIGVudGlyZWx5CiAgICAgICAgICAgICAgICAkY29tbWVudCA9IHN1YnN0cigkdGhpcy0+Y29kZSwgJGZpbGVQb3MpOwogICAgICAgICAgICAgICAgJGVycm9ySGFuZGxlci0+aGFuZGxlRXJyb3IobmV3IEVycm9yKCdVbnRlcm1pbmF0ZWQgY29tbWVudCcsIFsKICAgICAgICAgICAgICAgICAgICAnc3RhcnRMaW5lJyA9PiAkbGluZSwKICAgICAgICAgICAgICAgICAgICAnZW5kTGluZScgPT4gJGxpbmUgKyBzdWJzdHJfY291bnQoJGNvbW1lbnQsICJcbiIpLAogICAgICAgICAgICAgICAgICAgICdzdGFydEZpbGVQb3MnID0+ICRmaWxlUG9zLAogICAgICAgICAgICAgICAgICAgICdlbmRGaWxlUG9zJyA9PiAkZmlsZVBvcyArIFxzdHJsZW4oJGNvbW1lbnQpLAogICAgICAgICAgICAgICAgXSkpOwoKICAgICAgICAgICAgICAgIC8vIEVtdWxhdGUgdGhlIFBIUCBiZWhhdmlvcgogICAgICAgICAgICAgICAgJGlzRG9jQ29tbWVudCA9IGlzc2V0KCRjb21tZW50WzNdKSAmJiAkY29tbWVudFszXSA9PT0gJyonOwogICAgICAgICAgICAgICAgJHRoaXMtPnRva2Vuc1tdID0gWyRpc0RvY0NvbW1lbnQgPyBcVF9ET0NfQ09NTUVOVCA6IFxUX0NPTU1FTlQsICRjb21tZW50LCAkbGluZV07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAvLyBJbnZhbGlkIGNoYXJhY3RlcnMgYXQgdGhlIGVuZCBvZiB0aGUgaW5wdXQKICAgICAgICAgICAgICAgICRiYWRDaGFyVG9rZW5zID0gJHRoaXMtPmhhbmRsZUludmFsaWRDaGFyYWN0ZXJSYW5nZSgKICAgICAgICAgICAgICAgICAgICAkZmlsZVBvcywgXHN0cmxlbigkdGhpcy0+Y29kZSksICRsaW5lLCAkZXJyb3JIYW5kbGVyKTsKICAgICAgICAgICAgICAgICR0aGlzLT50b2tlbnMgPSBhcnJheV9tZXJnZSgkdGhpcy0+dG9rZW5zLCAkYmFkQ2hhclRva2Vucyk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KCiAgICAgICAgaWYgKGNvdW50KCR0aGlzLT50b2tlbnMpID4gMCkgewogICAgICAgICAgICAvLyBDaGVjayBmb3IgdW50ZXJtaW5hdGVkIGNvbW1lbnQKICAgICAgICAgICAgJGxhc3RUb2tlbiA9ICR0aGlzLT50b2tlbnNbY291bnQoJHRoaXMtPnRva2VucykgLSAxXTsKICAgICAgICAgICAgaWYgKCR0aGlzLT5pc1VudGVybWluYXRlZENvbW1lbnQoJGxhc3RUb2tlbikpIHsKICAgICAgICAgICAgICAgICRlcnJvckhhbmRsZXItPmhhbmRsZUVycm9yKG5ldyBFcnJvcignVW50ZXJtaW5hdGVkIGNvbW1lbnQnLCBbCiAgICAgICAgICAgICAgICAgICAgJ3N0YXJ0TGluZScgPT4gJGxpbmUgLSBzdWJzdHJfY291bnQoJGxhc3RUb2tlblsxXSwgIlxuIiksCiAgICAgICAgICAgICAgICAgICAgJ2VuZExpbmUnID0+ICRsaW5lLAogICAgICAgICAgICAgICAgICAgICdzdGFydEZpbGVQb3MnID0+ICRmaWxlUG9zIC0gXHN0cmxlbigkbGFzdFRva2VuWzFdKSwKICAgICAgICAgICAgICAgICAgICAnZW5kRmlsZVBvcycgPT4gJGZpbGVQb3MsCiAgICAgICAgICAgICAgICBdKSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgLyoqCiAgICAgKiBGZXRjaGVzIHRoZSBuZXh0IHRva2VuLgogICAgICoKICAgICAqIFRoZSBhdmFpbGFibGUgYXR0cmlidXRlcyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgJ3VzZWRBdHRyaWJ1dGVzJyBvcHRpb24sIHdoaWNoIGNhbgogICAgICogYmUgc3BlY2lmaWVkIGluIHRoZSBjb25zdHJ1Y3Rvci4gVGhlIGZvbGxvd2luZyBhdHRyaWJ1dGVzIGFyZSBzdXBwb3J0ZWQ6CiAgICAgKgogICAgICogICogJ2NvbW1lbnRzJyAgICAgID0+IEFycmF5IG9mIFBocFBhcnNlclxDb21tZW50IG9yIFBocFBhcnNlclxDb21tZW50XERvYyBpbnN0YW5jZXMsCiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgcmVwcmVzZW50aW5nIGFsbCBjb21tZW50cyB0aGF0IG9jY3VycmVkIGJldHdlZW4gdGhlIHByZXZpb3VzCiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgbm9uLWRpc2NhcmRlZCB0b2tlbiBhbmQgdGhlIGN1cnJlbnQgb25lLgogICAgICogICogJ3N0YXJ0TGluZScgICAgID0+IExpbmUgaW4gd2hpY2ggdGhlIG5vZGUgc3RhcnRzLgogICAgICogICogJ2VuZExpbmUnICAgICAgID0+IExpbmUgaW4gd2hpY2ggdGhlIG5vZGUgZW5kcy4KICAgICAqICAqICdzdGFydFRva2VuUG9zJyA9PiBPZmZzZXQgaW50byB0aGUgdG9rZW4gYXJyYXkgb2YgdGhlIGZpcnN0IHRva2VuIGluIHRoZSBub2RlLgogICAgICogICogJ2VuZFRva2VuUG9zJyAgID0+IE9mZnNldCBpbnRvIHRoZSB0b2tlbiBhcnJheSBvZiB0aGUgbGFzdCB0b2tlbiBpbiB0aGUgbm9kZS4KICAgICAqICAqICdzdGFydEZpbGVQb3MnICA9PiBPZmZzZXQgaW50byB0aGUgY29kZSBzdHJpbmcgb2YgdGhlIGZpcnN0IGNoYXJhY3RlciB0aGF0IGlzIHBhcnQgb2YgdGhlIG5vZGUuCiAgICAgKiAgKiAnZW5kRmlsZVBvcycgICAgPT4gT2Zmc2V0IGludG8gdGhlIGNvZGUgc3RyaW5nIG9mIHRoZSBsYXN0IGNoYXJhY3RlciB0aGF0IGlzIHBhcnQgb2YgdGhlIG5vZGUuCiAgICAgKgogICAgICogQHBhcmFtIG1peGVkICR2YWx1ZSAgICAgICAgICAgVmFyaWFibGUgdG8gc3RvcmUgdG9rZW4gY29udGVudCBpbgogICAgICogQHBhcmFtIG1peGVkICRzdGFydEF0dHJpYnV0ZXMgVmFyaWFibGUgdG8gc3RvcmUgc3RhcnQgYXR0cmlidXRlcyBpbgogICAgICogQHBhcmFtIG1peGVkICRlbmRBdHRyaWJ1dGVzICAgVmFyaWFibGUgdG8gc3RvcmUgZW5kIGF0dHJpYnV0ZXMgaW4KICAgICAqCiAgICAgKiBAcmV0dXJuIGludCBUb2tlbiBpZAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0TmV4dFRva2VuKCYkdmFsdWUgPSBudWxsLCAmJHN0YXJ0QXR0cmlidXRlcyA9IG51bGwsICYkZW5kQXR0cmlidXRlcyA9IG51bGwpIDogaW50IHsKICAgICAgICAkc3RhcnRBdHRyaWJ1dGVzID0gW107CiAgICAgICAgJGVuZEF0dHJpYnV0ZXMgICA9IFtdOwoKICAgICAgICB3aGlsZSAoMSkgewogICAgICAgICAgICBpZiAoaXNzZXQoJHRoaXMtPnRva2Vuc1srKyR0aGlzLT5wb3NdKSkgewogICAgICAgICAgICAgICAgJHRva2VuID0gJHRoaXMtPnRva2Vuc1skdGhpcy0+cG9zXTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIC8vIEVPRiB0b2tlbiB3aXRoIElEIDAKICAgICAgICAgICAgICAgICR0b2tlbiA9ICJcMCI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICgkdGhpcy0+YXR0cmlidXRlU3RhcnRMaW5lVXNlZCkgewogICAgICAgICAgICAgICAgJHN0YXJ0QXR0cmlidXRlc1snc3RhcnRMaW5lJ10gPSAkdGhpcy0+bGluZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoJHRoaXMtPmF0dHJpYnV0ZVN0YXJ0VG9rZW5Qb3NVc2VkKSB7CiAgICAgICAgICAgICAgICAkc3RhcnRBdHRyaWJ1dGVzWydzdGFydFRva2VuUG9zJ10gPSAkdGhpcy0+cG9zOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICgkdGhpcy0+YXR0cmlidXRlU3RhcnRGaWxlUG9zVXNlZCkgewogICAgICAgICAgICAgICAgJHN0YXJ0QXR0cmlidXRlc1snc3RhcnRGaWxlUG9zJ10gPSAkdGhpcy0+ZmlsZVBvczsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKFxpc19zdHJpbmcoJHRva2VuKSkgewogICAgICAgICAgICAgICAgJHZhbHVlID0gJHRva2VuOwogICAgICAgICAgICAgICAgaWYgKGlzc2V0KCR0b2tlblsxXSkpIHsKICAgICAgICAgICAgICAgICAgICAvLyBidWcgaW4gdG9rZW5fZ2V0X2FsbAogICAgICAgICAgICAgICAgICAgICR0aGlzLT5maWxlUG9zICs9IDI7CiAgICAgICAgICAgICAgICAgICAgJGlkID0gb3JkKCciJyk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICR0aGlzLT5maWxlUG9zICs9IDE7CiAgICAgICAgICAgICAgICAgICAgJGlkID0gb3JkKCR0b2tlbik7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZWlmICghaXNzZXQoJHRoaXMtPmRyb3BUb2tlbnNbJHRva2VuWzBdXSkpIHsKICAgICAgICAgICAgICAgICR2YWx1ZSA9ICR0b2tlblsxXTsKICAgICAgICAgICAgICAgICRpZCA9ICR0aGlzLT50b2tlbk1hcFskdG9rZW5bMF1dOwogICAgICAgICAgICAgICAgaWYgKFxUX0NMT1NFX1RBRyA9PT0gJHRva2VuWzBdKSB7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPnByZXZDbG9zZVRhZ0hhc05ld2xpbmUgPSBmYWxzZSAhPT0gc3RycG9zKCR0b2tlblsxXSwgIlxuIikKICAgICAgICAgICAgICAgICAgICAgICAgfHwgZmFsc2UgIT09IHN0cnBvcygkdG9rZW5bMV0sICJcciIpOwogICAgICAgICAgICAgICAgfSBlbHNlaWYgKFxUX0lOTElORV9IVE1MID09PSAkdG9rZW5bMF0pIHsKICAgICAgICAgICAgICAgICAgICAkc3RhcnRBdHRyaWJ1dGVzWydoYXNMZWFkaW5nTmV3bGluZSddID0gJHRoaXMtPnByZXZDbG9zZVRhZ0hhc05ld2xpbmU7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgJHRoaXMtPmxpbmUgKz0gc3Vic3RyX2NvdW50KCR2YWx1ZSwgIlxuIik7CiAgICAgICAgICAgICAgICAkdGhpcy0+ZmlsZVBvcyArPSBcc3RybGVuKCR2YWx1ZSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAkb3JpZ0xpbmUgPSAkdGhpcy0+bGluZTsKICAgICAgICAgICAgICAgICRvcmlnRmlsZVBvcyA9ICR0aGlzLT5maWxlUG9zOwogICAgICAgICAgICAgICAgJHRoaXMtPmxpbmUgKz0gc3Vic3RyX2NvdW50KCR0b2tlblsxXSwgIlxuIik7CiAgICAgICAgICAgICAgICAkdGhpcy0+ZmlsZVBvcyArPSBcc3RybGVuKCR0b2tlblsxXSk7CgogICAgICAgICAgICAgICAgaWYgKFxUX0NPTU1FTlQgPT09ICR0b2tlblswXSB8fCBcVF9ET0NfQ09NTUVOVCA9PT0gJHRva2VuWzBdKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCR0aGlzLT5hdHRyaWJ1dGVDb21tZW50c1VzZWQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJGNvbW1lbnQgPSBcVF9ET0NfQ09NTUVOVCA9PT0gJHRva2VuWzBdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IG5ldyBDb21tZW50XERvYygkdG9rZW5bMV0sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJG9yaWdMaW5lLCAkb3JpZ0ZpbGVQb3MsICR0aGlzLT5wb3MsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmxpbmUsICR0aGlzLT5maWxlUG9zIC0gMSwgJHRoaXMtPnBvcykKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbmV3IENvbW1lbnQoJHRva2VuWzFdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRvcmlnTGluZSwgJG9yaWdGaWxlUG9zLCAkdGhpcy0+cG9zLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5saW5lLCAkdGhpcy0+ZmlsZVBvcyAtIDEsICR0aGlzLT5wb3MpOwogICAgICAgICAgICAgICAgICAgICAgICAkc3RhcnRBdHRyaWJ1dGVzWydjb21tZW50cyddW10gPSAkY29tbWVudDsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBjb250aW51ZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKCR0aGlzLT5hdHRyaWJ1dGVFbmRMaW5lVXNlZCkgewogICAgICAgICAgICAgICAgJGVuZEF0dHJpYnV0ZXNbJ2VuZExpbmUnXSA9ICR0aGlzLT5saW5lOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICgkdGhpcy0+YXR0cmlidXRlRW5kVG9rZW5Qb3NVc2VkKSB7CiAgICAgICAgICAgICAgICAkZW5kQXR0cmlidXRlc1snZW5kVG9rZW5Qb3MnXSA9ICR0aGlzLT5wb3M7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKCR0aGlzLT5hdHRyaWJ1dGVFbmRGaWxlUG9zVXNlZCkgewogICAgICAgICAgICAgICAgJGVuZEF0dHJpYnV0ZXNbJ2VuZEZpbGVQb3MnXSA9ICR0aGlzLT5maWxlUG9zIC0gMTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgcmV0dXJuICRpZDsKICAgICAgICB9CgogICAgICAgIHRocm93IG5ldyBcUnVudGltZUV4Y2VwdGlvbignUmVhY2hlZCBlbmQgb2YgbGV4ZXIgbG9vcCcpOwogICAgfQoKICAgIC8qKgogICAgICogUmV0dXJucyB0aGUgdG9rZW4gYXJyYXkgZm9yIGN1cnJlbnQgY29kZS4KICAgICAqCiAgICAgKiBUaGUgdG9rZW4gYXJyYXkgaXMgaW4gdGhlIHNhbWUgZm9ybWF0IGFzIHByb3ZpZGVkIGJ5IHRoZQogICAgICogdG9rZW5fZ2V0X2FsbCgpIGZ1bmN0aW9uIGFuZCBkb2VzIG5vdCBkaXNjYXJkIHRva2VucyAoaS5lLgogICAgICogd2hpdGVzcGFjZSBhbmQgY29tbWVudHMgYXJlIGluY2x1ZGVkKS4gVGhlIHRva2VuIHBvc2l0aW9uCiAgICAgKiBhdHRyaWJ1dGVzIGFyZSBhZ2FpbnN0IHRoaXMgdG9rZW4gYXJyYXkuCiAgICAgKgogICAgICogQHJldHVybiBhcnJheSBBcnJheSBvZiB0b2tlbnMgaW4gdG9rZW5fZ2V0X2FsbCgpIGZvcm1hdAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0VG9rZW5zKCkgOiBhcnJheSB7CiAgICAgICAgcmV0dXJuICR0aGlzLT50b2tlbnM7CiAgICB9CgogICAgLyoqCiAgICAgKiBIYW5kbGVzIF9faGFsdF9jb21waWxlcigpIGJ5IHJldHVybmluZyB0aGUgdGV4dCBhZnRlciBpdC4KICAgICAqCiAgICAgKiBAcmV0dXJuIHN0cmluZyBSZW1haW5pbmcgdGV4dAogICAgICovCiAgICBwdWJsaWMgZnVuY3Rpb24gaGFuZGxlSGFsdENvbXBpbGVyKCkgOiBzdHJpbmcgewogICAgICAgIC8vIHRleHQgYWZ0ZXIgVF9IQUxUX0NPTVBJTEVSLCBzdGlsbCBpbmNsdWRpbmcgKCk7CiAgICAgICAgJHRleHRBZnRlciA9IHN1YnN0cigkdGhpcy0+Y29kZSwgJHRoaXMtPmZpbGVQb3MpOwoKICAgICAgICAvLyBlbnN1cmUgdGhhdCBpdCBpcyBmb2xsb3dlZCBieSAoKTsKICAgICAgICAvLyB0aGlzIHNpbXBsaWZpZXMgdGhlIHNpdHVhdGlvbiwgYnkgbm90IGFsbG93aW5nIGFueSBjb21tZW50cwogICAgICAgIC8vIGluIGJldHdlZW4gb2YgdGhlIHRva2Vucy4KICAgICAgICBpZiAoIXByZWdfbWF0Y2goJ35eXHMqXChccypcKVxzKig/Ojt8XD8+XHI/XG4/KX4nLCAkdGV4dEFmdGVyLCAkbWF0Y2hlcykpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdfX0hBTFRfQ09NUElMRVIgbXVzdCBiZSBmb2xsb3dlZCBieSAiKCk7IicpOwogICAgICAgIH0KCiAgICAgICAgLy8gcHJldmVudCB0aGUgbGV4ZXIgZnJvbSByZXR1cm5pbmcgYW55IGZ1cnRoZXIgdG9rZW5zCiAgICAgICAgJHRoaXMtPnBvcyA9IGNvdW50KCR0aGlzLT50b2tlbnMpOwoKICAgICAgICAvLyByZXR1cm4gd2l0aCAoKTsgcmVtb3ZlZAogICAgICAgIHJldHVybiBzdWJzdHIoJHRleHRBZnRlciwgc3RybGVuKCRtYXRjaGVzWzBdKSk7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBkZWZpbmVDb21wYXRpYmlsaXR5VG9rZW5zKCkgewogICAgICAgIHN0YXRpYyAkY29tcGF0VG9rZW5zRGVmaW5lZCA9IGZhbHNlOwogICAgICAgIGlmICgkY29tcGF0VG9rZW5zRGVmaW5lZCkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQoKICAgICAgICAkY29tcGF0VG9rZW5zID0gWwogICAgICAgICAgICAvLyBQSFAgNy40CiAgICAgICAgICAgICdUX0JBRF9DSEFSQUNURVInLAogICAgICAgICAgICAnVF9GTicsCiAgICAgICAgICAgICdUX0NPQUxFU0NFX0VRVUFMJywKICAgICAgICAgICAgLy8gUEhQIDguMAogICAgICAgICAgICAnVF9OQU1FX1FVQUxJRklFRCcsCiAgICAgICAgICAgICdUX05BTUVfRlVMTFlfUVVBTElGSUVEJywKICAgICAgICAgICAgJ1RfTkFNRV9SRUxBVElWRScsCiAgICAgICAgICAgICdUX01BVENIJywKICAgICAgICAgICAgJ1RfTlVMTFNBRkVfT0JKRUNUX09QRVJBVE9SJywKICAgICAgICAgICAgJ1RfQVRUUklCVVRFJywKICAgICAgICAgICAgLy8gUEhQIDguMQogICAgICAgICAgICAnVF9FTlVNJywKICAgICAgICAgICAgJ1RfQU1QRVJTQU5EX05PVF9GT0xMT1dFRF9CWV9WQVJfT1JfVkFSQVJHJywKICAgICAgICAgICAgJ1RfQU1QRVJTQU5EX0ZPTExPV0VEX0JZX1ZBUl9PUl9WQVJBUkcnLAogICAgICAgICAgICAnVF9SRUFET05MWScsCiAgICAgICAgXTsKCiAgICAgICAgLy8gUEhQLVBhcnNlciBtaWdodCBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggYW5vdGhlciBsaWJyYXJ5IHRoYXQgYWxzbyBlbXVsYXRlcyBzb21lIG9yIGFsbAogICAgICAgIC8vIG9mIHRoZXNlIHRva2Vucy4gUGVyZm9ybSBhIHNhbml0eS1jaGVjayB0aGF0IGFsbCBhbHJlYWR5IGRlZmluZWQgdG9rZW5zIGhhdmUgYmVlbgogICAgICAgIC8vIGFzc2lnbmVkIGEgdW5pcXVlIElELgogICAgICAgICR1c2VkVG9rZW5JZHMgPSBbXTsKICAgICAgICBmb3JlYWNoICgkY29tcGF0VG9rZW5zIGFzICR0b2tlbikgewogICAgICAgICAgICBpZiAoXGRlZmluZWQoJHRva2VuKSkgewogICAgICAgICAgICAgICAgJHRva2VuSWQgPSBcY29uc3RhbnQoJHRva2VuKTsKICAgICAgICAgICAgICAgICRjbGFzaGluZ1Rva2VuID0gJHVzZWRUb2tlbklkc1skdG9rZW5JZF0gPz8gbnVsbDsKICAgICAgICAgICAgICAgIGlmICgkY2xhc2hpbmdUb2tlbiAhPT0gbnVsbCkgewogICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBcRXJyb3Ioc3ByaW50ZigKICAgICAgICAgICAgICAgICAgICAgICAgJ1Rva2VuICVzIGhhcyBzYW1lIElEIGFzIHRva2VuICVzLCAnIC4KICAgICAgICAgICAgICAgICAgICAgICAgJ3lvdSBtYXkgYmUgdXNpbmcgYSBsaWJyYXJ5IHdpdGggYnJva2VuIHRva2VuIGVtdWxhdGlvbicsCiAgICAgICAgICAgICAgICAgICAgICAgICR0b2tlbiwgJGNsYXNoaW5nVG9rZW4KICAgICAgICAgICAgICAgICAgICApKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICR1c2VkVG9rZW5JZHNbJHRva2VuSWRdID0gJHRva2VuOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAvLyBOb3cgZGVmaW5lIGFueSB0b2tlbnMgdGhhdCBoYXZlIG5vdCB5ZXQgYmVlbiBlbXVsYXRlZC4gVHJ5IHRvIGFzc2lnbiBJRHMgZnJvbSAtMQogICAgICAgIC8vIGRvd253YXJkcywgYnV0IHNraXAgYW55IElEcyB0aGF0IG1heSBhbHJlYWR5IGJlIGluIHVzZS4KICAgICAgICAkbmV3VG9rZW5JZCA9IC0xOwogICAgICAgIGZvcmVhY2ggKCRjb21wYXRUb2tlbnMgYXMgJHRva2VuKSB7CiAgICAgICAgICAgIGlmICghXGRlZmluZWQoJHRva2VuKSkgewogICAgICAgICAgICAgICAgd2hpbGUgKGlzc2V0KCR1c2VkVG9rZW5JZHNbJG5ld1Rva2VuSWRdKSkgewogICAgICAgICAgICAgICAgICAgICRuZXdUb2tlbklkLS07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBcZGVmaW5lKCR0b2tlbiwgJG5ld1Rva2VuSWQpOwogICAgICAgICAgICAgICAgJG5ld1Rva2VuSWQtLTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgJGNvbXBhdFRva2Vuc0RlZmluZWQgPSB0cnVlOwogICAgfQoKICAgIC8qKgogICAgICogQ3JlYXRlcyB0aGUgdG9rZW4gbWFwLgogICAgICoKICAgICAqIFRoZSB0b2tlbiBtYXAgbWFwcyB0aGUgUEhQIGludGVybmFsIHRva2VuIGlkZW50aWZpZXJzCiAgICAgKiB0byB0aGUgaWRlbnRpZmllcnMgdXNlZCBieSB0aGUgUGFyc2VyLiBBZGRpdGlvbmFsbHkgaXQKICAgICAqIG1hcHMgVF9PUEVOX1RBR19XSVRIX0VDSE8gdG8gVF9FQ0hPIGFuZCBUX0NMT1NFX1RBRyB0byAnOycuCiAgICAgKgogICAgICogQHJldHVybiBhcnJheSBUaGUgdG9rZW4gbWFwCiAgICAgKi8KICAgIHByb3RlY3RlZCBmdW5jdGlvbiBjcmVhdGVUb2tlbk1hcCgpIDogYXJyYXkgewogICAgICAgICR0b2tlbk1hcCA9IFtdOwoKICAgICAgICAvLyAyNTYgaXMgdGhlIG1pbmltdW0gcG9zc2libGUgdG9rZW4gbnVtYmVyLCBhcyBldmVyeXRoaW5nIGJlbG93CiAgICAgICAgLy8gaXQgaXMgYW4gQVNDSUkgdmFsdWUKICAgICAgICBmb3IgKCRpID0gMjU2OyAkaSA8IDEwMDA7ICsrJGkpIHsKICAgICAgICAgICAgaWYgKFxUX0RPVUJMRV9DT0xPTiA9PT0gJGkpIHsKICAgICAgICAgICAgICAgIC8vIFRfRE9VQkxFX0NPTE9OIGlzIGVxdWl2YWxlbnQgdG8gVF9QQUFNQVlJTV9ORUtVRE9UQVlJTQogICAgICAgICAgICAgICAgJHRva2VuTWFwWyRpXSA9IFRva2Vuczo6VF9QQUFNQVlJTV9ORUtVRE9UQVlJTTsKICAgICAgICAgICAgfSBlbHNlaWYoXFRfT1BFTl9UQUdfV0lUSF9FQ0hPID09PSAkaSkgewogICAgICAgICAgICAgICAgLy8gVF9PUEVOX1RBR19XSVRIX0VDSE8gd2l0aCBkcm9wcGVkIFRfT1BFTl9UQUcgcmVzdWx0cyBpbiBUX0VDSE8KICAgICAgICAgICAgICAgICR0b2tlbk1hcFskaV0gPSBUb2tlbnM6OlRfRUNITzsKICAgICAgICAgICAgfSBlbHNlaWYoXFRfQ0xPU0VfVEFHID09PSAkaSkgewogICAgICAgICAgICAgICAgLy8gVF9DTE9TRV9UQUcgaXMgZXF1aXZhbGVudCB0byAnOycKICAgICAgICAgICAgICAgICR0b2tlbk1hcFskaV0gPSBvcmQoJzsnKTsKICAgICAgICAgICAgfSBlbHNlaWYgKCdVTktOT1dOJyAhPT0gJG5hbWUgPSB0b2tlbl9uYW1lKCRpKSkgewogICAgICAgICAgICAgICAgaWYgKCdUX0hBU0hCQU5HJyA9PT0gJG5hbWUpIHsKICAgICAgICAgICAgICAgICAgICAvLyBISFZNIHVzZXMgYSBzcGVjaWFsIHRva2VuIGZvciAjISBoYXNoYmFuZyBsaW5lcwogICAgICAgICAgICAgICAgICAgICR0b2tlbk1hcFskaV0gPSBUb2tlbnM6OlRfSU5MSU5FX0hUTUw7CiAgICAgICAgICAgICAgICB9IGVsc2VpZiAoZGVmaW5lZCgkbmFtZSA9IFRva2Vuczo6Y2xhc3MgLiAnOjonIC4gJG5hbWUpKSB7CiAgICAgICAgICAgICAgICAgICAgLy8gT3RoZXIgdG9rZW5zIGNhbiBiZSBtYXBwZWQgZGlyZWN0bHkKICAgICAgICAgICAgICAgICAgICAkdG9rZW5NYXBbJGldID0gY29uc3RhbnQoJG5hbWUpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICAvLyBISFZNIHVzZXMgYSBzcGVjaWFsIHRva2VuIGZvciBudW1iZXJzIHRoYXQgb3ZlcmZsb3cgdG8gZG91YmxlCiAgICAgICAgaWYgKGRlZmluZWQoJ1RfT05VTUJFUicpKSB7CiAgICAgICAgICAgICR0b2tlbk1hcFtcVF9PTlVNQkVSXSA9IFRva2Vuczo6VF9ETlVNQkVSOwogICAgICAgIH0KICAgICAgICAvLyBISFZNIGFsc28gaGFzIGEgc2VwYXJhdGUgdG9rZW4gZm9yIHRoZSBfX0NPTVBJTEVSX0hBTFRfT0ZGU0VUX18gY29uc3RhbnQKICAgICAgICBpZiAoZGVmaW5lZCgnVF9DT01QSUxFUl9IQUxUX09GRlNFVCcpKSB7CiAgICAgICAgICAgICR0b2tlbk1hcFtcVF9DT01QSUxFUl9IQUxUX09GRlNFVF0gPSBUb2tlbnM6OlRfU1RSSU5HOwogICAgICAgIH0KCiAgICAgICAgLy8gQXNzaWduIHRva2VucyBmb3Igd2hpY2ggd2UgZGVmaW5lIGNvbXBhdGliaWxpdHkgY29uc3RhbnRzLCBhcyB0b2tlbl9uYW1lKCkgZG9lcyBub3Qga25vdyB0aGVtLgogICAgICAgICR0b2tlbk1hcFtcVF9GTl0gPSBUb2tlbnM6OlRfRk47CiAgICAgICAgJHRva2VuTWFwW1xUX0NPQUxFU0NFX0VRVUFMXSA9IFRva2Vuczo6VF9DT0FMRVNDRV9FUVVBTDsKICAgICAgICAkdG9rZW5NYXBbXFRfTkFNRV9RVUFMSUZJRURdID0gVG9rZW5zOjpUX05BTUVfUVVBTElGSUVEOwogICAgICAgICR0b2tlbk1hcFtcVF9OQU1FX0ZVTExZX1FVQUxJRklFRF0gPSBUb2tlbnM6OlRfTkFNRV9GVUxMWV9RVUFMSUZJRUQ7CiAgICAgICAgJHRva2VuTWFwW1xUX05BTUVfUkVMQVRJVkVdID0gVG9rZW5zOjpUX05BTUVfUkVMQVRJVkU7CiAgICAgICAgJHRva2VuTWFwW1xUX01BVENIXSA9IFRva2Vuczo6VF9NQVRDSDsKICAgICAgICAkdG9rZW5NYXBbXFRfTlVMTFNBRkVfT0JKRUNUX09QRVJBVE9SXSA9IFRva2Vuczo6VF9OVUxMU0FGRV9PQkpFQ1RfT1BFUkFUT1I7CiAgICAgICAgJHRva2VuTWFwW1xUX0FUVFJJQlVURV0gPSBUb2tlbnM6OlRfQVRUUklCVVRFOwogICAgICAgICR0b2tlbk1hcFtcVF9BTVBFUlNBTkRfTk9UX0ZPTExPV0VEX0JZX1ZBUl9PUl9WQVJBUkddID0gVG9rZW5zOjpUX0FNUEVSU0FORF9OT1RfRk9MTE9XRURfQllfVkFSX09SX1ZBUkFSRzsKICAgICAgICAkdG9rZW5NYXBbXFRfQU1QRVJTQU5EX0ZPTExPV0VEX0JZX1ZBUl9PUl9WQVJBUkddID0gVG9rZW5zOjpUX0FNUEVSU0FORF9GT0xMT1dFRF9CWV9WQVJfT1JfVkFSQVJHOwogICAgICAgICR0b2tlbk1hcFtcVF9FTlVNXSA9IFRva2Vuczo6VF9FTlVNOwogICAgICAgICR0b2tlbk1hcFtcVF9SRUFET05MWV0gPSBUb2tlbnM6OlRfUkVBRE9OTFk7CgogICAgICAgIHJldHVybiAkdG9rZW5NYXA7CiAgICB9CgogICAgcHJpdmF0ZSBmdW5jdGlvbiBjcmVhdGVJZGVudGlmaWVyVG9rZW5NYXAoKTogYXJyYXkgewogICAgICAgIC8vIEJhc2VkIG9uIHNlbWlfcmVzZXJ2ZWQgcHJvZHVjdGlvbi4KICAgICAgICByZXR1cm4gYXJyYXlfZmlsbF9rZXlzKFsKICAgICAgICAgICAgXFRfU1RSSU5HLAogICAgICAgICAgICBcVF9TVEFUSUMsIFxUX0FCU1RSQUNULCBcVF9GSU5BTCwgXFRfUFJJVkFURSwgXFRfUFJPVEVDVEVELCBcVF9QVUJMSUMsIFxUX1JFQURPTkxZLAogICAgICAgICAgICBcVF9JTkNMVURFLCBcVF9JTkNMVURFX09OQ0UsIFxUX0VWQUwsIFxUX1JFUVVJUkUsIFxUX1JFUVVJUkVfT05DRSwgXFRfTE9HSUNBTF9PUiwgXFRfTE9HSUNBTF9YT1IsIFxUX0xPR0lDQUxfQU5ELAogICAgICAgICAgICBcVF9JTlNUQU5DRU9GLCBcVF9ORVcsIFxUX0NMT05FLCBcVF9FWElULCBcVF9JRiwgXFRfRUxTRUlGLCBcVF9FTFNFLCBcVF9FTkRJRiwgXFRfRUNITywgXFRfRE8sIFxUX1dISUxFLAogICAgICAgICAgICBcVF9FTkRXSElMRSwgXFRfRk9SLCBcVF9FTkRGT1IsIFxUX0ZPUkVBQ0gsIFxUX0VOREZPUkVBQ0gsIFxUX0RFQ0xBUkUsIFxUX0VORERFQ0xBUkUsIFxUX0FTLCBcVF9UUlksIFxUX0NBVENILAogICAgICAgICAgICBcVF9GSU5BTExZLCBcVF9USFJPVywgXFRfVVNFLCBcVF9JTlNURUFET0YsIFxUX0dMT0JBTCwgXFRfVkFSLCBcVF9VTlNFVCwgXFRfSVNTRVQsIFxUX0VNUFRZLCBcVF9DT05USU5VRSwgXFRfR09UTywKICAgICAgICAgICAgXFRfRlVOQ1RJT04sIFxUX0NPTlNULCBcVF9SRVRVUk4sIFxUX1BSSU5ULCBcVF9ZSUVMRCwgXFRfTElTVCwgXFRfU1dJVENILCBcVF9FTkRTV0lUQ0gsIFxUX0NBU0UsIFxUX0RFRkFVTFQsCiAgICAgICAgICAgIFxUX0JSRUFLLCBcVF9BUlJBWSwgXFRfQ0FMTEFCTEUsIFxUX0VYVEVORFMsIFxUX0lNUExFTUVOVFMsIFxUX05BTUVTUEFDRSwgXFRfVFJBSVQsIFxUX0lOVEVSRkFDRSwgXFRfQ0xBU1MsCiAgICAgICAgICAgIFxUX0NMQVNTX0MsIFxUX1RSQUlUX0MsIFxUX0ZVTkNfQywgXFRfTUVUSE9EX0MsIFxUX0xJTkUsIFxUX0ZJTEUsIFxUX0RJUiwgXFRfTlNfQywgXFRfSEFMVF9DT01QSUxFUiwgXFRfRk4sCiAgICAgICAgICAgIFxUX01BVENILAogICAgICAgIF0sIHRydWUpOwogICAgfQp9CiI7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lc3BhY2VzIjthOjE6e3M6MTA6IlxQaHBQYXJzZXIiO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoxMDoiXFBocFBhcnNlciI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjk6IlBocFBhcnNlciI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGluY2x1ZGVzIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGZ1bmN0aW9ucyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjb25zdGFudHMiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY2xhc3NlcyI7YToxOntzOjE2OiJcUGhwUGFyc2VyXExleGVyIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXyI6MTM6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjE2OiJcUGhwUGFyc2VyXExleGVyIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NToiTGV4ZXIiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZG9jQmxvY2siO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHBhcmVudCI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AaW1wbGVtZW50cyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAGNvbnN0YW50cyI7YTowOnt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHByb3BlcnRpZXMiO2E6MTY6e3M6MjM6IlxQaHBQYXJzZXJcTGV4ZXI6OiRjb2RlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMzoiXFBocFBhcnNlclxMZXhlcjo6JGNvZGUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo0OiJjb2RlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO047czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6OToicHJvdGVjdGVkIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjk7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czoyNToiXFBocFBhcnNlclxMZXhlcjo6JHRva2VucyI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjU6IlxQaHBQYXJzZXJcTGV4ZXI6OiR0b2tlbnMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo2OiJ0b2tlbnMiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo5OiJwcm90ZWN0ZWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6MjI6IlxQaHBQYXJzZXJcTGV4ZXI6OiRwb3MiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjIyOiJcUGhwUGFyc2VyXExleGVyOjokcG9zIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MzoicG9zIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO047czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6OToicHJvdGVjdGVkIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjExO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjIzOiJcUGhwUGFyc2VyXExleGVyOjokbGluZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjM6IlxQaHBQYXJzZXJcTGV4ZXI6OiRsaW5lIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6NDoibGluZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtOO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjk6InByb3RlY3RlZCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxMjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czoyNjoiXFBocFBhcnNlclxMZXhlcjo6JGZpbGVQb3MiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjI2OiJcUGhwUGFyc2VyXExleGVyOjokZmlsZVBvcyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjc6ImZpbGVQb3MiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo5OiJwcm90ZWN0ZWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTM7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6NDE6IlxQaHBQYXJzZXJcTGV4ZXI6OiRwcmV2Q2xvc2VUYWdIYXNOZXdsaW5lIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MToiXFBocFBhcnNlclxMZXhlcjo6JHByZXZDbG9zZVRhZ0hhc05ld2xpbmUiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMjoicHJldkNsb3NlVGFnSGFzTmV3bGluZSI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtOO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjk6InByb3RlY3RlZCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czoyNzoiXFBocFBhcnNlclxMZXhlcjo6JHRva2VuTWFwIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyNzoiXFBocFBhcnNlclxMZXhlcjo6JHRva2VuTWFwIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6ODoidG9rZW5NYXAiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo5OiJwcm90ZWN0ZWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGUiO047czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAcmVhZE9ubHkiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBtZXRhZGF0YSI7YTowOnt9fXM6Mjk6IlxQaHBQYXJzZXJcTGV4ZXI6OiRkcm9wVG9rZW5zIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyOToiXFBocFBhcnNlclxMZXhlcjo6JGRyb3BUb2tlbnMiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMDoiZHJvcFRva2VucyI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRvY0Jsb2NrIjtOO3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHR5cGVzIjthOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkZWZhdWx0IjtOO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHN0YXRpYyI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjk6InByb3RlY3RlZCI7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxNztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTc7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZSI7TjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQByZWFkT25seSI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AG1ldGFkYXRhIjthOjA6e319czozNToiXFBocFBhcnNlclxMZXhlcjo6JGlkZW50aWZpZXJUb2tlbnMiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM1OiJcUGhwUGFyc2VyXExleGVyOjokaWRlbnRpZmllclRva2VucyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE2OiJpZGVudGlmaWVyVG9rZW5zIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZG9jQmxvY2siO047czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdHlwZXMiO2E6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGRlZmF1bHQiO047czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAc3RhdGljIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6OToicHJvdGVjdGVkIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjE4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToxODtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjQxOiJcUGhwUGFyc2VyXExleGVyOjokYXR0cmlidXRlU3RhcnRMaW5lVXNlZCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDE6IlxQaHBQYXJzZXJcTGV4ZXI6OiRhdHRyaWJ1dGVTdGFydExpbmVVc2VkIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjI6ImF0dHJpYnV0ZVN0YXJ0TGluZVVzZWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjM5OiJcUGhwUGFyc2VyXExleGVyOjokYXR0cmlidXRlRW5kTGluZVVzZWQiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM5OiJcUGhwUGFyc2VyXExleGVyOjokYXR0cmlidXRlRW5kTGluZVVzZWQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMDoiYXR0cmlidXRlRW5kTGluZVVzZWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIxO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjQ1OiJcUGhwUGFyc2VyXExleGVyOjokYXR0cmlidXRlU3RhcnRUb2tlblBvc1VzZWQiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ1OiJcUGhwUGFyc2VyXExleGVyOjokYXR0cmlidXRlU3RhcnRUb2tlblBvc1VzZWQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyNjoiYXR0cmlidXRlU3RhcnRUb2tlblBvc1VzZWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjQzOiJcUGhwUGFyc2VyXExleGVyOjokYXR0cmlidXRlRW5kVG9rZW5Qb3NVc2VkIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MzoiXFBocFBhcnNlclxMZXhlcjo6JGF0dHJpYnV0ZUVuZFRva2VuUG9zVXNlZCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI0OiJhdHRyaWJ1dGVFbmRUb2tlblBvc1VzZWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjIzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyMztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjQ0OiJcUGhwUGFyc2VyXExleGVyOjokYXR0cmlidXRlU3RhcnRGaWxlUG9zVXNlZCI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eSI6MTE6e3M6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDQ6IlxQaHBQYXJzZXJcTGV4ZXI6OiRhdHRyaWJ1dGVTdGFydEZpbGVQb3NVc2VkIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjU6ImF0dHJpYnV0ZVN0YXJ0RmlsZVBvc1VzZWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjQyOiJcUGhwUGFyc2VyXExleGVyOjokYXR0cmlidXRlRW5kRmlsZVBvc1VzZWQiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkiOjExOntzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQyOiJcUGhwUGFyc2VyXExleGVyOjokYXR0cmlidXRlRW5kRmlsZVBvc1VzZWQiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoyMzoiYXR0cmlidXRlRW5kRmlsZVBvc1VzZWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX1zOjQwOiJcUGhwUGFyc2VyXExleGVyOjokYXR0cmlidXRlQ29tbWVudHNVc2VkIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5IjoxMTp7czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czo0MDoiXFBocFBhcnNlclxMZXhlcjo6JGF0dHJpYnV0ZUNvbW1lbnRzVXNlZCI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIxOiJhdHRyaWJ1dGVDb21tZW50c1VzZWQiO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBkb2NCbG9jayI7TjtzOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlcyI7YTowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAZGVmYXVsdCI7TjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQBzdGF0aWMiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aToyNjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9wZXJ0eQB0eXBlIjtOO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFByb3BlcnR5AHJlYWRPbmx5IjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcUHJvcGVydHkAbWV0YWRhdGEiO2E6MDp7fX19czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAG1ldGhvZHMiO2E6MTE6e3M6MzE6IlxQaHBQYXJzZXJcTGV4ZXI6Ol9fY29uc3RydWN0KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czoxNjoiQ3JlYXRlcyBhIExleGVyLiI7czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0iOjY6e3M6NTg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQB2YXJpYWJsZU5hbWUiO3M6Nzoib3B0aW9ucyI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDtzOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NzoiACoAbmFtZSI7czo1OiJwYXJhbSI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MzMwOiJPcHRpb25zIGFycmF5LiBDdXJyZW50bHkgb25seSB0aGUgJ3VzZWRBdHRyaWJ1dGVzJyBvcHRpb24gaXMgc3VwcG9ydGVkLAp3aGljaCBpcyBhbiBhcnJheSBvZiBhdHRyaWJ1dGVzIHRvIGFkZCB0byB0aGUgQVNUIG5vZGVzLiBQb3NzaWJsZQphdHRyaWJ1dGVzIGFyZTogJ2NvbW1lbnRzJywgJ3N0YXJ0TGluZScsICdlbmRMaW5lJywgJ3N0YXJ0VG9rZW5Qb3MnLAonZW5kVG9rZW5Qb3MnLCAnc3RhcnRGaWxlUG9zJywgJ2VuZEZpbGVQb3MnLiBUaGUgb3B0aW9uIGRlZmF1bHRzIHRvIHRoZQpmaXJzdCB0aHJlZS4gRm9yIG1vcmUgaW5mbyBzZWUgZ2V0TmV4dFRva2VuKCkgZG9jcy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czo5OiJQaHBQYXJzZXIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjE6e3M6NjoiVG9rZW5zIjtzOjIzOiJQaHBQYXJzZXJcUGFyc2VyXFRva2VucyI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjMxOiJcUGhwUGFyc2VyXExleGVyOjpfX2NvbnN0cnVjdCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTE6Il9fY29uc3RydWN0Ijt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo2OiJwdWJsaWMiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjc6Im9wdGlvbnMiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBcnJheV8iOjM6e3M6MTI6IgAqAHZhbHVlVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6MTA6IgAqAGtleVR5cGUiO047czoxNzoiACoAZGVmYXVsdEtleVR5cGUiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb21wb3VuZCI6Mjp7czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0eXBlcyI7YToyOntpOjA7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31pOjE7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEludGVnZXIiOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO3M6MjoiW10iO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozNztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjYwO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czozMToiXFBocFBhcnNlclxMZXhlcjo6c3RhcnRMZXhpbmcoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjU4OiJJbml0aWFsaXplcyB0aGUgbGV4ZXIgZm9yIGxleGluZyB0aGUgcHJvdmlkZWQgc291cmNlIGNvZGUuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjExNToiVGhpcyBmdW5jdGlvbiBkb2VzIG5vdCB0aHJvdyBpZiBsZXhpbmcgZXJyb3JzIG9jY3VyLiBJbnN0ZWFkLCBlcnJvcnMgbWF5IGJlIHJldHJpZXZlZCB1c2luZwp0aGUgZ2V0RXJyb3JzKCkgbWV0aG9kLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjI6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo0OiJjb2RlIjtzOjU2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNWYXJpYWRpYyI7YjowO3M6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1JlZmVyZW5jZSI7YjowO3M6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjIyOiJUaGUgc291cmNlIGNvZGUgdG8gbGV4IjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjEyOiJlcnJvckhhbmRsZXIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7czo3OiIAKgB0eXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMzoiXFBocFBhcnNlclxFcnJvckhhbmRsZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoiRXJyb3JIYW5kbGVyIjt9fWk6MTtPOjM2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTnVsbF8iOjA6e319czo1MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xBZ2dyZWdhdGVkVHlwZQB0b2tlbiI7czoxOiJ8Ijt9czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czo3MzoiRXJyb3IgaGFuZGxlciB0byB1c2UgZm9yIGxleGluZyBlcnJvcnMuIERlZmF1bHRzIHRvCkVycm9ySGFuZGxlclxUaHJvd2luZyI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MzU0O3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzE6IlxQaHBQYXJzZXJcTGV4ZXI6OnN0YXJ0TGV4aW5nKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMToic3RhcnRMZXhpbmciO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mjp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoiY29kZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxMjoiZXJyb3JIYW5kbGVyIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcT2JqZWN0XyI6MTp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MjM6IlxQaHBQYXJzZXJcRXJyb3JIYW5kbGVyIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTI6IkVycm9ySGFuZGxlciI7fX1zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjQ6Im51bGwiO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjA7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo3MjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjk0O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0NzoiXFBocFBhcnNlclxMZXhlcjo6aGFuZGxlSW52YWxpZENoYXJhY3RlclJhbmdlKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQ3OiJcUGhwUGFyc2VyXExleGVyOjpoYW5kbGVJbnZhbGlkQ2hhcmFjdGVyUmFuZ2UoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI3OiJoYW5kbGVJbnZhbGlkQ2hhcmFjdGVyUmFuZ2UiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjQ6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6InN0YXJ0IjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToxO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MzoiZW5kIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NDoibGluZSI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fWk6MztPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEyOiJlcnJvckhhbmRsZXIiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMzoiXFBocFBhcnNlclxFcnJvckhhbmRsZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoiRXJyb3JIYW5kbGVyIjt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjk2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTE4O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czo0MToiXFBocFBhcnNlclxMZXhlcjo6aXNVbnRlcm1pbmF0ZWRDb21tZW50KCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0NDoiQ2hlY2sgd2hldGhlciBjb21tZW50IHRva2VuIGlzIHVudGVybWluYXRlZC4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEJvb2xlYW4iOjA6e31zOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czowOiIiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjM1NDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjQxOiJcUGhwUGFyc2VyXExleGVyOjppc1VudGVybWluYXRlZENvbW1lbnQoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjIxOiJpc1VudGVybWluYXRlZENvbW1lbnQiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjc6InByaXZhdGUiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjU6InRva2VuIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjowO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTI1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6MTI5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQm9vbGVhbiI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6Mzc6IlxQaHBQYXJzZXJcTGV4ZXI6OnBvc3Rwcm9jZXNzVG9rZW5zKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtOO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM3OiJcUGhwUGFyc2VyXExleGVyOjpwb3N0cHJvY2Vzc1Rva2VucygpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MTc6InBvc3Rwcm9jZXNzVG9rZW5zIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo5OiJwcm90ZWN0ZWQiO31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYXJndW1lbnRzIjthOjE6e2k6MDtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50Ijo1OntzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABuYW1lIjtzOjEyOiJlcnJvckhhbmRsZXIiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xPYmplY3RfIjoxOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE9iamVjdF8AZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyMzoiXFBocFBhcnNlclxFcnJvckhhbmRsZXIiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxMjoiRXJyb3JIYW5kbGVyIjt9fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGRlZmF1bHQiO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAYnlSZWZlcmVuY2UiO2I6MDtzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABpc1ZhcmlhZGljIjtiOjA7fX1zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjEzMTtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjI4MjtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAcmV0dXJuVHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXE1peGVkXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6MzI6IlxQaHBQYXJzZXJcTGV4ZXI6OmdldE5leHRUb2tlbigpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MjM6IkZldGNoZXMgdGhlIG5leHQgdG9rZW4uIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjg1MDoiVGhlIGF2YWlsYWJsZSBhdHRyaWJ1dGVzIGFyZSBkZXRlcm1pbmVkIGJ5IHRoZSAndXNlZEF0dHJpYnV0ZXMnIG9wdGlvbiwgd2hpY2ggY2FuCmJlIHNwZWNpZmllZCBpbiB0aGUgY29uc3RydWN0b3IuIFRoZSBmb2xsb3dpbmcgYXR0cmlidXRlcyBhcmUgc3VwcG9ydGVkOgoKICogJ2NvbW1lbnRzJyAgICAgID0+IEFycmF5IG9mIFBocFBhcnNlclxDb21tZW50IG9yIFBocFBhcnNlclxDb21tZW50XERvYyBpbnN0YW5jZXMsCiAgICAgICAgICAgICAgICAgICAgICByZXByZXNlbnRpbmcgYWxsIGNvbW1lbnRzIHRoYXQgb2NjdXJyZWQgYmV0d2VlbiB0aGUgcHJldmlvdXMKICAgICAgICAgICAgICAgICAgICAgIG5vbi1kaXNjYXJkZWQgdG9rZW4gYW5kIHRoZSBjdXJyZW50IG9uZS4KICogJ3N0YXJ0TGluZScgICAgID0+IExpbmUgaW4gd2hpY2ggdGhlIG5vZGUgc3RhcnRzLgogKiAnZW5kTGluZScgICAgICAgPT4gTGluZSBpbiB3aGljaCB0aGUgbm9kZSBlbmRzLgogKiAnc3RhcnRUb2tlblBvcycgPT4gT2Zmc2V0IGludG8gdGhlIHRva2VuIGFycmF5IG9mIHRoZSBmaXJzdCB0b2tlbiBpbiB0aGUgbm9kZS4KICogJ2VuZFRva2VuUG9zJyAgID0+IE9mZnNldCBpbnRvIHRoZSB0b2tlbiBhcnJheSBvZiB0aGUgbGFzdCB0b2tlbiBpbiB0aGUgbm9kZS4KICogJ3N0YXJ0RmlsZVBvcycgID0+IE9mZnNldCBpbnRvIHRoZSBjb2RlIHN0cmluZyBvZiB0aGUgZmlyc3QgY2hhcmFjdGVyIHRoYXQgaXMgcGFydCBvZiB0aGUgbm9kZS4KICogJ2VuZEZpbGVQb3MnICAgID0+IE9mZnNldCBpbnRvIHRoZSBjb2RlIHN0cmluZyBvZiB0aGUgbGFzdCBjaGFyYWN0ZXIgdGhhdCBpcyBwYXJ0IG9mIHRoZSBub2RlLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjQ6e2k6MDtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czo1OiJ2YWx1ZSI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDtzOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM0OiJWYXJpYWJsZSB0byBzdG9yZSB0b2tlbiBjb250ZW50IGluIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19aToxO086NDQ6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtIjo2OntzOjU4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AdmFyaWFibGVOYW1lIjtzOjE1OiJzdGFydEF0dHJpYnV0ZXMiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbQBpc1ZhcmlhZGljIjtiOjA7czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzUmVmZXJlbmNlIjtiOjA7czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo3OiIAKgBuYW1lIjtzOjU6InBhcmFtIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czozNzoiVmFyaWFibGUgdG8gc3RvcmUgc3RhcnQgYXR0cmlidXRlcyBpbiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fWk6MjtPOjQ0OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xQYXJhbSI6Njp7czo1ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAHZhcmlhYmxlTmFtZSI7czoxMzoiZW5kQXR0cmlidXRlcyI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFBhcmFtAGlzVmFyaWFkaWMiO2I6MDtzOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUGFyYW0AaXNSZWZlcmVuY2UiO2I6MDtzOjc6IgAqAHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjc6IgAqAG5hbWUiO3M6NToicGFyYW0iO3M6MTQ6IgAqAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjM1OiJWYXJpYWJsZSB0byBzdG9yZSBlbmQgYXR0cmlidXRlcyBpbiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fWk6MztPOjQ2OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcVGFnc1xSZXR1cm5fIjozOntzOjc6IgAqAHR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6ODoiVG9rZW4gaWQiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjM1NDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjMyOiJcUGhwUGFyc2VyXExleGVyOjpnZXROZXh0VG9rZW4oKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjEyOiJnZXROZXh0VG9rZW4iO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6Mzp7aTowO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6NToidmFsdWUiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjQ6Im51bGwiO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjE7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO31pOjE7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudCI6NTp7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAbmFtZSI7czoxNToic3RhcnRBdHRyaWJ1dGVzIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudAB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAZGVmYXVsdCI7czo0OiJudWxsIjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABieVJlZmVyZW5jZSI7YjoxO3M6NDk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGlzVmFyaWFkaWMiO2I6MDt9aToyO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQiOjU6e3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AG5hbWUiO3M6MTM6ImVuZEF0dHJpYnV0ZXMiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AHR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxBcmd1bWVudABkZWZhdWx0IjtzOjQ6Im51bGwiO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEFyZ3VtZW50AGJ5UmVmZXJlbmNlIjtiOjE7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQXJndW1lbnQAaXNWYXJpYWRpYyI7YjowO319czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozMDY7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTozODU7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9czo1NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGhhc1JldHVybkJ5UmVmZXJlbmNlIjtiOjA7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAG1ldGFkYXRhIjthOjA6e319czoyOToiXFBocFBhcnNlclxMZXhlcjo6Z2V0VG9rZW5zKCkiO086MzU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kIjoxMjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGRvY0Jsb2NrIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2siOjc6e3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAc3VtbWFyeSI7czo0MToiUmV0dXJucyB0aGUgdG9rZW4gYXJyYXkgZm9yIGN1cnJlbnQgY29kZS4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MjE0OiJUaGUgdG9rZW4gYXJyYXkgaXMgaW4gdGhlIHNhbWUgZm9ybWF0IGFzIHByb3ZpZGVkIGJ5IHRoZQp0b2tlbl9nZXRfYWxsKCkgZnVuY3Rpb24gYW5kIGRvZXMgbm90IGRpc2NhcmQgdG9rZW5zIChpLmUuCndoaXRlc3BhY2UgYW5kIGNvbW1lbnRzIGFyZSBpbmNsdWRlZCkuIFRoZSB0b2tlbiBwb3NpdGlvbgphdHRyaWJ1dGVzIGFyZSBhZ2FpbnN0IHRoaXMgdG9rZW4gYXJyYXkuIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAdHlwZSI7TzozNzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFycmF5XyI6Mzp7czoxMjoiACoAdmFsdWVUeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcTWl4ZWRfIjowOnt9czoxMDoiACoAa2V5VHlwZSI7TjtzOjE3OiIAKgBkZWZhdWx0S2V5VHlwZSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbXBvdW5kIjoyOntzOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHR5cGVzIjthOjI6e2k6MDtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fWk6MTtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcSW50ZWdlciI6MDp7fX1zOjUyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXEFnZ3JlZ2F0ZWRUeXBlAHRva2VuIjtzOjE6InwiO319czo3OiIAKgBuYW1lIjtzOjY6InJldHVybiI7czoxNDoiACoAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6NDE6IkFycmF5IG9mIHRva2VucyBpbiB0b2tlbl9nZXRfYWxsKCkgZm9ybWF0IjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX19fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAY29udGV4dCI7cjozNTQ7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZnFzZW4iO086MzA6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbiI6Mjp7czozNzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBmcXNlbiI7czoyOToiXFBocFBhcnNlclxMZXhlcjo6Z2V0VG9rZW5zKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czo5OiJnZXRUb2tlbnMiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mzk3O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6Mzk5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjM4OiJcUGhwUGFyc2VyXExleGVyOjpoYW5kbGVIYWx0Q29tcGlsZXIoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjU3OiJIYW5kbGVzIF9faGFsdF9jb21waWxlcigpIGJ5IHJldHVybmluZyB0aGUgdGV4dCBhZnRlciBpdC4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXFJldHVybl8iOjM6e3M6NzoiACoAdHlwZSI7TzozODoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXFN0cmluZ18iOjA6e31zOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxNDoiUmVtYWluaW5nIHRleHQiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtyOjM1NDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmcXNlbiI7TzozMDoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuIjoyOntzOjM3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAGZxc2VuIjtzOjM4OiJcUGhwUGFyc2VyXExleGVyOjpoYW5kbGVIYWx0Q29tcGlsZXIoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjE4OiJoYW5kbGVIYWx0Q29tcGlsZXIiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjY6InB1YmxpYyI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDA2O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDIyO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcU3RyaW5nXyI6MDp7fXM6NTc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABoYXNSZXR1cm5CeVJlZmVyZW5jZSI7YjowO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABtZXRhZGF0YSI7YTowOnt9fXM6NDU6IlxQaHBQYXJzZXJcTGV4ZXI6OmRlZmluZUNvbXBhdGliaWxpdHlUb2tlbnMoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDU6IlxQaHBQYXJzZXJcTGV4ZXI6OmRlZmluZUNvbXBhdGliaWxpdHlUb2tlbnMoKSI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjI1OiJkZWZpbmVDb21wYXRpYmlsaXR5VG9rZW5zIjt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFic3RyYWN0IjtiOjA7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZpbmFsIjtiOjA7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHN0YXRpYyI7YjowO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAB2aXNpYmlsaXR5IjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkiOjE6e3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXFZpc2liaWxpdHkAdmlzaWJpbGl0eSI7czo3OiJwcml2YXRlIjt9czo0NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGFyZ3VtZW50cyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGxvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0MjQ7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGVuZExvY2F0aW9uIjtPOjMzOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24iOjI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AbGluZU51bWJlciI7aTo0ODI7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBjb2x1bW5OdW1iZXIiO2k6MDt9czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHJldHVyblR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjM0OiJcUGhwUGFyc2VyXExleGVyOjpjcmVhdGVUb2tlbk1hcCgpIjtPOjM1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZCI6MTI6e3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6MjI6IkNyZWF0ZXMgdGhlIHRva2VuIG1hcC4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MTY4OiJUaGUgdG9rZW4gbWFwIG1hcHMgdGhlIFBIUCBpbnRlcm5hbCB0b2tlbiBpZGVudGlmaWVycwp0byB0aGUgaWRlbnRpZmllcnMgdXNlZCBieSB0aGUgUGFyc2VyLiBBZGRpdGlvbmFsbHkgaXQKbWFwcyBUX09QRU5fVEFHX1dJVEhfRUNITyB0byBUX0VDSE8gYW5kIFRfQ0xPU0VfVEFHIHRvICc7Jy4iO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAdGFncyI7YToxOntpOjA7Tzo0NjoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXFRhZ3NcUmV0dXJuXyI6Mzp7czo3OiIAKgB0eXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjc6IgAqAG5hbWUiO3M6NjoicmV0dXJuIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoxMzoiVGhlIHRva2VuIG1hcCI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319fX1zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO3I6MzU0O3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAbG9jYXRpb24iO047czo1MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlU3RhcnQiO2I6MDtzOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVFbmQiO2I6MDt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6MzQ6IlxQaHBQYXJzZXJcTGV4ZXI6OmNyZWF0ZVRva2VuTWFwKCkiO3M6MzY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AbmFtZSI7czoxNDoiY3JlYXRlVG9rZW5NYXAiO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAYWJzdHJhY3QiO2I6MDtzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZmluYWwiO2I6MDtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAc3RhdGljIjtiOjA7czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAHZpc2liaWxpdHkiO086Mzk6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eSI6MTp7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcVmlzaWJpbGl0eQB2aXNpYmlsaXR5IjtzOjk6InByb3RlY3RlZCI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NDkzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTQzO3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX1zOjQ0OiJcUGhwUGFyc2VyXExleGVyOjpjcmVhdGVJZGVudGlmaWVyVG9rZW5NYXAoKSI7TzozNToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QiOjEyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAZG9jQmxvY2siO047czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcTWV0aG9kAGZxc2VuIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NDQ6IlxQaHBQYXJzZXJcTGV4ZXI6OmNyZWF0ZUlkZW50aWZpZXJUb2tlbk1hcCgpIjtzOjM2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZxc2VuAG5hbWUiO3M6MjQ6ImNyZWF0ZUlkZW50aWZpZXJUb2tlbk1hcCI7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhYnN0cmFjdCI7YjowO3M6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABmaW5hbCI7YjowO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABzdGF0aWMiO2I6MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAdmlzaWJpbGl0eSI7TzozOToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5IjoxOntzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxWaXNpYmlsaXR5AHZpc2liaWxpdHkiO3M6NzoicHJpdmF0ZSI7fXM6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABhcmd1bWVudHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTQ1O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZABlbmRMb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NTU5O3M6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cTG9jYXRpb24AY29sdW1uTnVtYmVyIjtpOjA7fXM6NDc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXE1ldGhvZAByZXR1cm5UeXBlIjtPOjM3OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQXJyYXlfIjozOntzOjEyOiIAKgB2YWx1ZVR5cGUiO086Mzc6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xNaXhlZF8iOjA6e31zOjEwOiIAKgBrZXlUeXBlIjtOO3M6MTc6IgAqAGRlZmF1bHRLZXlUeXBlIjtPOjM5OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29tcG91bmQiOjI6e3M6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdHlwZXMiO2E6Mjp7aTowO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xTdHJpbmdfIjowOnt9aToxO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xJbnRlZ2VyIjowOnt9fXM6NTI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQWdncmVnYXRlZFR5cGUAdG9rZW4iO3M6MToifCI7fX1zOjU3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAaGFzUmV0dXJuQnlSZWZlcmVuY2UiO2I6MDtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxNZXRob2QAbWV0YWRhdGEiO2E6MDp7fX19czo0NzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcQ2xhc3NfAHVzZWRUcmFpdHMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXwBsb2NhdGlvbiI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uIjoyOntzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGxpbmVOdW1iZXIiO2k6NztzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ4OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AZW5kTG9jYXRpb24iO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbiI6Mjp7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxMb2NhdGlvbgBsaW5lTnVtYmVyIjtpOjU2MDtzOjQ3OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXExvY2F0aW9uAGNvbHVtbk51bWJlciI7aTowO31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxDbGFzc18AbWV0YWRhdGEiO2E6MDp7fX19czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbnRlcmZhY2VzIjthOjA6e31zOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHRyYWl0cyI7YTowOnt9czo0MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBlbnVtcyI7YTowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBtZXRhZGF0YSI7YTowOnt9fQ==";