ZGlmZiAtLWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVmZmI5NTIuLjAwMDAwMDAKLS0tIGEvTWFrZWZpbGUKKysrIC9kZXYvbnVsbApAQCAtMSwxMzAgKzAsMCBAQAotIyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSMKLSMgTWFrZWZpbGUgZm9yIFRpbnlYbWwgdGVzdC4KLSMgTGVlIFRob21hc29uCi0jIHd3dy5ncmlubmluZ2xpemFyZC5jb20KLSMKLSMgVGhpcyBpcyBhIEdOVSBtYWtlIChnbWFrZSkgbWFrZWZpbGUKLSMqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0KLSMgREVCVUcgY2FuIGJlIHNldCB0byBZRVMgdG8gaW5jbHVkZSBkZWJ1Z2dpbmcgaW5mbywgb3IgTk8gb3RoZXJ3aXNlCi1ERUJVRyAgICAgICAgICA6PSBOTwotCi0jIFBST0ZJTEUgY2FuIGJlIHNldCB0byBZRVMgdG8gaW5jbHVkZSBwcm9maWxpbmcgaW5mbywgb3IgTk8gb3RoZXJ3aXNlCi1QUk9GSUxFICAgICAgICA6PSBOTwotCi0jIFRJTllYTUxfVVNFX1NUTCBjYW4gYmUgdXNlZCB0byB0dXJuIG9uIFNUTCBzdXBwb3J0LiBOTywgdGhlbiBTVEwKLSMgd2lsbCBub3QgYmUgdXNlZC4gWUVTIHdpbGwgaW5jbHVkZSB0aGUgU1RMIGZpbGVzLgotVElOWVhNTF9VU0VfU1RMIDo9IE5PCi0KLSMqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0KLUNDICAgICA6PSBnY2MKLUNYWCAgICA6PSBnKysKLUxEICAgICA6PSBnKysKLUFSICAgICA6PSBhciByYwotUkFOTElCIDo9IHJhbmxpYgotCi1ERUJVR19DRkxBR1MgICAgIDo9IC1XYWxsIC1Xbm8tZm9ybWF0IC1nIC1EREVCVUcKLVJFTEVBU0VfQ0ZMQUdTICAgOj0gLVdhbGwgLVduby11bmtub3duLXByYWdtYXMgLVduby1mb3JtYXQgLU8zCi0KLUxJQlMJCSA6PQotCi1ERUJVR19DWFhGTEFHUyAgIDo9ICR7REVCVUdfQ0ZMQUdTfSAKLVJFTEVBU0VfQ1hYRkxBR1MgOj0gJHtSRUxFQVNFX0NGTEFHU30KLQotREVCVUdfTERGTEFHUyAgICA6PSAtZwotUkVMRUFTRV9MREZMQUdTICA6PQotCi1pZmVxIChZRVMsICR7REVCVUd9KQotICAgQ0ZMQUdTICAgICAgIDo9ICR7REVCVUdfQ0ZMQUdTfQotICAgQ1hYRkxBR1MgICAgIDo9ICR7REVCVUdfQ1hYRkxBR1N9Ci0gICBMREZMQUdTICAgICAgOj0gJHtERUJVR19MREZMQUdTfQotZWxzZQotICAgQ0ZMQUdTICAgICAgIDo9ICR7UkVMRUFTRV9DRkxBR1N9Ci0gICBDWFhGTEFHUyAgICAgOj0gJHtSRUxFQVNFX0NYWEZMQUdTfQotICAgTERGTEFHUyAgICAgIDo9ICR7UkVMRUFTRV9MREZMQUdTfQotZW5kaWYKLQotaWZlcSAoWUVTLCAke1BST0ZJTEV9KQotICAgQ0ZMQUdTICAgOj0gJHtDRkxBR1N9IC1wZyAtTzMKLSAgIENYWEZMQUdTIDo9ICR7Q1hYRkxBR1N9IC1wZyAtTzMKLSAgIExERkxBR1MgIDo9ICR7TERGTEFHU30gLXBnCi1lbmRpZgotCi0jKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotIyBQcmVwcm9jZXNzb3IgZGlyZWN0aXZlcwotIyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLQotaWZlcSAoWUVTLCAke1RJTllYTUxfVVNFX1NUTH0pCi0gIERFRlMgOj0gLURUSVhNTF9VU0VfU1RMCi1lbHNlCi0gIERFRlMgOj0KLWVuZGlmCi0KLSMqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0jIEluY2x1ZGUgcGF0aHMKLSMqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0KLSNJTkNTIDo9IC1JL3Vzci9pbmNsdWRlL2crKy0yIC1JL3Vzci9sb2NhbC9pbmNsdWRlCi1JTkNTIDo9Ci0KLQotIyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSMgTWFrZWZpbGUgY29kZSBjb21tb24gdG8gYWxsIHBsYXRmb3JtcwotIyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLQotQ0ZMQUdTICAgOj0gJHtDRkxBR1N9ICAgJHtERUZTfQotQ1hYRkxBR1MgOj0gJHtDWFhGTEFHU30gJHtERUZTfQotCi0jKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotIyBUYXJnZXRzIG9mIHRoZSBidWlsZAotIyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLQotT1VUUFVUIDo9IHhtbHRlc3QKLQotYWxsOiAke09VVFBVVH0KLQotCi0jKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotIyBTb3VyY2UgZmlsZXMKLSMqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0KLVNSQ1MgOj0gdGlueXhtbC5jcHAgdGlueXhtbHBhcnNlci5jcHAgeG1sdGVzdC5jcHAgdGlueXhtbGVycm9yLmNwcCB0aW55c3RyLmNwcAotCi0jIEFkZCBvbiB0aGUgc291cmNlcyBmb3IgbGlicmFyaWVzCi1TUkNTIDo9ICR7U1JDU30KLQotT0JKUyA6PSAkKGFkZHN1ZmZpeCAubywkKGJhc2VuYW1lICR7U1JDU30pKQotCi0jKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotIyBPdXRwdXQKLSMqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0KLSR7T1VUUFVUfTogJHtPQkpTfQotCSR7TER9IC1vICRAICR7TERGTEFHU30gJHtPQkpTfSAke0xJQlN9ICR7RVhUUkFfTElCU30KLQotIyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKLSMgY29tbW9uIHJ1bGVzCi0jKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgotCi0jIFJ1bGVzIGZvciBjb21waWxpbmcgc291cmNlIGZpbGVzIHRvIG9iamVjdCBmaWxlcwotJS5vIDogJS5jcHAKLQkke0NYWH0gLWMgJHtDWFhGTEFHU30gJHtJTkNTfSAkPCAtbyAkQAotCi0lLm8gOiAlLmMKLQkke0NDfSAtYyAke0NGTEFHU30gJHtJTkNTfSAkPCAtbyAkQAotCi1kaXN0OgotCWJhc2ggbWFrZWRpc3RsaW51eAotCi1jbGVhbjoKLQktcm0gLWYgY29yZSAke09CSlN9ICR7T1VUUFVUfQotCi1kZXBlbmQ6Ci0JI21ha2VkZXBlbmQgJHtJTkNTfSAke1NSQ1N9Ci0KLXRpbnl4bWwubzogdGlueXhtbC5oIHRpbnlzdHIuaAotdGlueXhtbHBhcnNlci5vOiB0aW55eG1sLmggdGlueXN0ci5oCi14bWx0ZXN0Lm86IHRpbnl4bWwuaCB0aW55c3RyLmgKLXRpbnl4bWxlcnJvci5vOiB0aW55eG1sLmggdGlueXN0ci5oCmRpZmYgLS1naXQgYS9jaGFuZ2VzLnR4dCBiL2NoYW5nZXMudHh0CmluZGV4IDE1YjUxYmQuLjNmYzQ3ZDIgMTAwNjQ0Ci0tLSBhL2NoYW5nZXMudHh0CisrKyBiL2NoYW5nZXMudHh0CkBAIC0yMDgsOTIgKzIwOCwzIEBACiAgIGZyb20gJ2luc3RydWN0b3JfJwogLSBFbGxlcnMgc3VibWl0dGVkIGhpcyB2ZXJ5IHBvcHVsYXIgdHV0b3JpYWxzLCB3aGljaCBoYXZlIGJlZW4gYWRkZWQgdG8gdGhlIGRpc3RyaWJ1dGlvbi4KIAotMi40LjEKLS0gRml4ZWQgQ0RBVEEgb3V0cHV0IGZvcm1hdHRpbmcKLS0gRml4ZWQgbWVtb3J5IGFsbG9jYXRvcnMgaW4gVGlueVN0cmluZyB0byB3b3JrIHdpdGggb3ZlcmxvYWRlZCBuZXcvZGVsZXRlCi0KLTIuNC4yCi0tIHNvbG9zbmFrZSBwb2ludGVkIG91dCB0aGF0IFRJWE1MX0xPRyBjYXVzZXMgcHJvYmxlbXMgb24gYW4gWEJPWC4gVGhlIGRlZmluaXRpb24gaW4gdGhlIGhlYWRlcgotICB3YXMgc3VwZXJmbG91cyBhbmQgd2FzIG1vdmVkIGluc2lkZSBvZiBERUJVR19QQVJTSU5HCi0KLTIuNC4zCi0tIEZpeGVkIGEgdGVzdCBidWcgdGhhdCBjYXVzZWQgYSBjcmFzaCBpbiAneG1sdGVzdCcuIFRpbnlYTUwgd2FzIGZpbmUsIGJ1dCBpdCBpc24ndCBnb29kCi0gIHRvIHNoaXAgd2l0aCBhIGJyb2tlbiB0ZXN0IHN1aXRlLgotLSBTdGFydGVkIGNvbnZlcnRpbmcgc29tZSBmdW5jdGlvbnMgdG8gbm90IGNhc3QgYmV0d2VlbiBzdGQ6OnN0cmluZyBhbmQgY29uc3QgY2hhciogCi0gIHF1aXRlIGFzIG9mdGVuLgotLSBBZGRlZCBGSUxFKiB2ZXJzaW9ucyBvZiB0aGUgZG9jdW1lbnQgbG9hZHMgLSBnb29kIHN1Z2dlc3Rpb24gZnJvbSBXYWRlIEJyYWluZXJkCi0tIEVtcHR5IGRvY3VtZW50cyBtaWdodCBub3QgYWx3YXlzIHJldHVybiB0aGUgZXJyb3JzIHRoZXkgc2hvdWxkLiBbMTM5ODkxNV0gVGhhbmtzIHRvIGlnb3Igdi4KLS0gQWRkZWQgc29tZSBhc3NlcnRzIGZvciBtdWx0aXBseSBhZGRpbmcgYSBub2RlLCByZWdhcmRuZyBidWcgWzEzOTE5MzddIHN1Z2dlc3RlZCBieSBQYWNvIEFyam9uaWxsYS4KLQotMi40LjQKLS0gQnVnIGZpbmQgdGhhbmtzIHRvIGFuZHJlLWdyb3NzIGZvdW5kIGEgbWVtb3J5IGxlYWsgdGhhdCBvY2N1cmVkIHdoZW4gYSBkb2N1bWVudCBmYWlsZWQgdG8gbG9hZC4KLS0gQnVnIGZpbmQgKGFuZCBnb29kIGFuYWx5c2lzKSBieSBWaXJ0dWFsSmltIHdobyBmb3VuZCBhIGNhc2Ugd2hlcmUgYXR0cmlidXRlIHBhcnNpbmcgCi0gIHNob3VsZCBiZSB0aHJvd2luZyBhbiBlcnJvciBhbmQgd2Fzbid0LgotLSBTdGV2ZSBIeWF0dCBzdWdnZXN0ZWQgdGhlIFF1ZXJ5VmFsdWVBdHRyaWJ1dGUgbWV0aG9kLCB3aGljaCBpcyBub3cgaW1wbGVtZW50ZWQuCi0tIERhdmlkQSBpZGVudGlmaWVkIGEgY2h1bmsgb2YgZGVhZCBjb2RlLgotLSBBbmRyZXcgQmF4dGVyIHNlbnQgaW4gc29tZSBjb21waWxlciB3YXJuaW5ncyB0aGF0IHdlcmUgZ29vZCBjbGVhbiB1cCBwb2ludHMuCi0KLTIuNQotLSBBZGRlZCB0aGUgVmlzaXQoKSBBUEkuIE1hbnkgdGhhbmtzIHRvIGJvdGggQW5kcmV3IEVsbGVydG9uIGFuZCBKb2huLVBoaWxpcCBmb3IgYWxsIHRoZWlyCi0gIHdvcmssIGNvZGUsIHN1Z2dlc3Rpb24sIGFuZCBqdXN0IGdlbmVyYWwgcHVzaGluZyB0aGF0IGl0IHNob3VsZCBiZSBkb25lLgotLSBSZW1vdmVkIGV4aXN0aW5nIHN0cmVhbWluZyBjb2RlIGFuZCB1c2UgVGlYbWxQcmludGVyIGluc3RlYWQuCi0tIFsgdGlueXhtbC1CdWdzLTE1MjcwNzkgXSBDb21waWxlIGVycm9yIGluIHRpbnlzdHIuY3BwIGZpeGVkLCB0aGFua3MgdG8gUGF1bCBTdWdncwotLSBbIHRpbnl4bWwtQnVncy0xNTIyODkwIF0gU2F2ZUZpbGUgaGFzIG5vIGVycm9yIGNoZWNrcyBmaXhlZCwgdGhhbmtzIHRvIEl2YW4gRG9icm9rb3RvdgotLSBJdmFuIERvYnJva290b3YgYWxzbyByZXBvcnRlZCByZWR1bmRhbnQgbWVtb3J5IGFsbG9jYXRpb24gaW4gdGhlIEF0dHJpYnV0ZSgpIG1ldGhvZCwgd2hpY2gKLSAgdXBvbiBpbnZlc3RpZ2F0aW9uIHdhcyBhIG1lc3MuIFRoZSBhdHRyaWJ1dGUgc2hvdWxkIG5vdyBiZSBmaXhlZCBmb3IgYm90aCBjb25zdCBjaGFyKiBhbmQgCi0gIHN0ZDo6c3RyaW5nLCBhbmQgdGhlIHJldHVybiB0eXBlcyBtYXRjaCB0aGUgaW5wdXQgcGFyYW1ldGVycy4KLS0gRmVhdHVyZSBbIDE1MTExMDUgXSBNYWtlIFRpWG1sQ29tbWVudCBjb25zdHJ1Y3RvciBhY2NlcHQgYSBzdHJpbmcgLyBjaGFyKiwgaW1wbGVtZW50ZWQuCi0gIFRoYW5rcyB0byBLYXJsIEl0c2NoZW4gZm9yIHRoZSBmZWVkYmFjay4KLS0gWyAxNDgwMTA4IF0gU3RyZWFtIHBhcnNpbmcgZmFpbHMgd2hlbiBDREFUQSBjb250YWlucyB0YWdzIHdhcyBmb3VuZCBieSBUb2JpYXMgR3JpbW0sIHdobyBhbHNvCi0gIHN1Ym1pdHRlZCBhIHRlc3QgY2FzZSBhbmQgcGF0Y2guIEEgc2lnbmlmaWNhbnQgYnVnIGluIENEQVRBIHN0cmVhbWluZyAob3BlcmF0b3I+PikgaGFzIG5vdwotICBiZWVuIGZpeGVkLgotCi0yLjUuMgotLSBMaWV2ZW4sIGFuZCBvdGhlcnMsIHBvaW50ZWQgb3V0IGEgbWlzc2luZyBjb25zdC1jYXN0IHRoYXQgdXBzZXQgdGhlIE9wZW4gV2F0Y29tIGNvbXBpbGVyLgotICBTaG91bGQgbm93IGJlIGZpeGVkLgotLSBFcnJvclJvdyBhbmQgRXJyb3JDb2wgc2hvdWxkIGhhdmUgYmVlbiBjb25zdCwgYW5kIHdlcmVuJ3QuIEZpeGVkIHRoYW5rcyB0byBEbWl0cnkgUG9sdXRvdi4KLQotMi41LjMKLS0gemxvZV96bG8gaWRlbnRpZmllZCBhIG1pc3Npbmcgc3RyaW5nIHNwZWNpYWxpemF0aW9uIGZvciBRdWVyeVZhbHVlQXR0cmlidXRlKCkgWyAxNjk1NDI5IF0uIFdvcmtlZAotICBvbiB0aGlzIGJ1ZywgYnV0IG5vdCBzdXJlIGhvdyB0byBmaXggaXQgaW4gYSBzYWZlLCBjcm9zcy1jb21waWxlciB3YXkuCi0tIGluY3JlYXNlZCB3YXJuaW5nIGxldmVsIHRvIDQgYW5kIHR1cm5lZCBvbiBkZXRlY3QgNjQgYml0IHBvcnRhYmlsaXR5IGlzc3VlcyBmb3IgVkMyMDA1LgotICBNYXkgYWRkcmVzcyBbIDE2Nzc3MzcgXSBWUzIwMDU6IC9XcDY0IHdhcm5pbmdzCi0tIGdyb3NoZWNrIGlkZW50aWZpZWQgc2V2ZXJhbCBwcm9ibGVtcyB3aXRoIHRoZSBEb2N1bWVudCBjb3B5LiBNYW55IHRoYW5rcyBmb3IgWyAxNjYwMzY3IF0KLS0gTmljZSBjYXRjaCwgYW5kIHN1Z2dlc3RlZCBmaXgsIGJlIEdpbGFkIE5vdmlrIG9uIHRoZSBQcmludGVyIGRyb3BwaW5nIGVudGl0aWVzLgotICAiWyAxNjAwNjUwIF0gQnVnIHdoZW4gcHJpbnRpbmcgeG1sIHRleHQiIGlzIG5vdyBmaXhlZC4KLS0gQSBzdWJ0bGUgZml4IGZyb20gTmljb3MgR29sbGFuIGluIHRoZSB0aW55c3RyaW5nIGluaXRpYWxpemVyOiAKLSAgWyAxNTgxNDQ5IF0gRml4IGluaXRpYWxpc2VyIG9mIFRpWG1sU3RyaW5nOjpudWxscmVwXwotLSBHcmVhdCBjYXRjaCwgYWx0aG91Z2ggdGhlcmUgaXNuJ3QgYSBzdWJtaXR0ZXIgZm9yIHRoZSBidWcuIFsgMTQ3NTIwMSBdIFRpbnlYTUwgcGFyc2VzIGVudGl0aWVzIGluIGNvbW1lbnRzLiAKLSAgQ29tbWVudHMgc2hvdWxkIG5vdCwgaW4gZmFjdCwgcGFyc2UgZW50aXRpZXMuIEZpeGVkIHRoZSBjb2RlIHBhdGggYW5kIGFkZGVkIHRlc3RzLgotLSBXZSB3ZXJlIG5vdCBjYXRjaGluZyBhbGwgdGhlIHJldHVybnMgZnJvbSBmdGVsbC4gVGhhbmtzIHRvIEJlcm5hcmQgZm9yIGNhdGNoaW5nIHRoYXQuCi0gIAotMi41LjQKLS0gQSBUaVhNTERvY3VtZW50IGNhbid0IGJlIGEgc3ViLW5vZGUuIEJsb2NrIHRoaXMgZnJvbSBoYXBwZW5pbmcgaW4gdGhlICdyZXBsYWNlJy4gVGhhbmtzIE5vYW0uCi0tIFsgMTcxNDgzMSBdIFRpWG1sQmFzZTo6bG9jYXRpb24gaXMgbm90IGNvcGllZCBieSBjb3B5LWN0b3JzLCBmaXggcmVwb3J0ZWQgYW5kIHN1Z2dlc3RlZCBieSBOaWNvbGEgQ2l2cmFuLgotLSBGaXhlZCBwb3NzaWJsZSBtZW1vcnkgb3ZlcnJ1biBpbiB0aGUgY29tbWVudCByZWFkaW5nIGNvZGUgLSB0aGFua3MgZ2Nhcmx0b243NwotCi0yLjUuNQotLSBBbGV4IHZhbiBkZXIgV2FsIHNwb3R0ZWQgaW5jb3JyZWN0IHR5cGVzIChsZikgYmVpbmcgdXNlZCBpbiBwcmludCBhbmQgc2Nhbi4gcm9iZXJ0bmVzdG9yIHBvaW50ZWQgb3V0IHNvbWUgcHJvYmxlbXMgd2l0aCB0aGUgc2ltcGxlIHNvbHV0aW9uLiBUeXBlcyB1cGRhdGVkLgotLSBKb2hhbm5lcyBIaWxsZXJ0IHBvaW50ZWQgb3V0IHNvbWUgYnVnIHR5cG9zLgotLSBDaHJpc3RpYW4gTXVlbGxlciBpZGVudGlmaWVkIGluY29uc2lzdGVudCBlcnJvciBoYW5kbGluZyB3aXRoIEF0dHJpYnV0ZXMuCi0tIG9saXZpZXIgYmFydGhlbGVteSBhbHNvIHJlcG9ydGVkIGEgcHJvYmxlbSB3aXRoIGRvdWJsZSB0cnVuY2F0aW9uLCBhbHNvIHJlbGF0ZWQgdG8gdGhlICVsZiBpc3N1ZS4KLS0gemFlbHNpdXMgY2FtZSB1cCB3aXRoIGEgZ3JlYXQgKGFuZCBzaW1wbGUpIHN1Z2dlc3Rpb24gdG8gZml4IFF1ZXJ5VmFsdWVBdHRyaWJ1dGUgdHJ1bmNhdGluZyBzdHJpbmdzLgotLSBhZGRlZCBzb21lIG51bGwgcG9pbnRlciBjaGVja3Mgc3VnZ2VzdGVkIGJ5IGhhbnNlbmsKLS0gU2FtaSBW5Glz5G5lbiBmb3VuZCBhIChyYXJlKSBidWZmZXIgb3ZlcnJ1biB0aGF0IGNvdWxkIG9jY3VyIGluIHBhcnNpbmcuCi0tIHZpIHRyaSBmaWxlZCBhIGJ1ZyB0aGF0IGxlZCB0byBhIHJlZmFjdG9yaW5nIG9mIHRoZSBhdHRyaWJ1dGUgc2V0dGluZyBtZXNzIChhcyB3ZWxsIGFzIGFkZGluZyBhIG1pc3NpbmcgU2V0RG91YmxlQXR0cmlidXRlKCkgKQotLSByZW1vdmVkIFRJWE1MX0VSUk9SX09VVF9PRl9NRU1PUlkuIFRpbnlYTUwgZG9lcyBub3Qgc3lzdGVtYXRpY2FsbHkgYWRkcmVzcyBPT08sIGFuZCB0aGUgbm90aW9uIGl0IGRvZXMgaXMgbWlzbGVhZGluZy4KLS0gdmFubmV0bywga2VpdGhtYXJzaGFsbCwgb3RoZXJzIGFsbCByZXBvcnRlZCB0aGUgd2FybmluZyBmcm9tIElzV2hpdGVTcGFjZSgpIHVzYWdlLiBDbGVhbmVkIHRoaXMgdXAgLSBtYW55IHRoYW5rcyB0byBldmVyeW9uZSB3aG8gcmVwb3J0ZWQgdGhpcyBvbmUuCi0tIHRpYnVyIGZvdW5kIGEgYnVnIGluIGVuZCB0YWcgcGFyc2luZwotCi0KLTIuNi4yCi0tIFN3aXRjaGVkIG92ZXIgdG8gVkMgMjAxMAotLSBGaXhlZCB1cCBhbGwgdGhlIGJ1aWxkIGlzc3VlcyBhcmlzaW5nIGZyb20gdGhhdC4gKExvdHMgb2YgbGF0ZW50IGJ1aWxkIHByb2JsZW1zLikKLS0gUmVtb3ZlZCB0aGUgb2xkLCBub3cgdW5tYWludGFpbmVkIGFuZCBsaWtlbHkgbm90IHdvcmtpbmcsIGJ1aWxkIGZpbGVzLgotLSBGaXhlZCBzb21lIHN0YXRpYyBhbmFseXNpcyBpc3N1ZXMgcmVwb3J0ZWQgYnkgb3JiaXRjb3dib3kgZnJvbSBjcHBjaGVjay4gCi0tIEJheWFyZCA5NSBzZW50IGluIGFuYWx5c2lzIGZyb20gYSBkaWZmZXJlbnQgYW5hbHl6ZXIgLSBmaXhlcyBhcHBsaWVkIGZyb20gdGhhdCBhcyB3ZWxsLgotLSBUaW0gS29zc2Ugc2VudCBhIHBhdGNoIGZpeGluZyBhbiBpbmZpbml0ZSBsb29wLgotLSBNYSBBbmd1byBpZGVudGlmaWVkIGEgZG9jIGlzc3VlLgotLSBFZGRpZSBDb2hlbiBpZGVudGlmaWVkIGEgbWlzc2luZyBxdWFsaWZpZXIgcmVzdWx0aW5nIGluIGEgY29tcGlsYXRpb24gZXJyb3Igb24gc29tZSBzeXN0ZW1zLgotLSBGaXhlZCBhIGxpbmUgZW5kaW5nIGJ1Zy4gKFdoYXQgeWVhciBpcyB0aGlzPyBDYW4gd2UgYWxsIGFncmVlIG9uIGEgZm9ybWF0IGZvciB0ZXh0IGZpbGVzPyBQbGVhc2U/IC4uLm9oIHdlbGwuKQotCmRpZmYgLS1naXQgYS9kb2NzL2Fubm90YXRlZC5odG1sIGIvZG9jcy9hbm5vdGF0ZWQuaHRtbAppbmRleCBhODRlNWZhLi4zNDJhZjNmIDEwMDY0NAotLS0gYS9kb2NzL2Fubm90YXRlZC5odG1sCisrKyBiL2RvY3MvYW5ub3RhdGVkLmh0bWwKQEAgLTEsNDggKzEsMjQgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iPgorPGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1pc28tODg1OS0xIj4KIDx0aXRsZT5UaW55WG1sOiBDbGFzcyBMaXN0PC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLTxoMT5DbGFzcyBMaXN0PC9oMT5IZXJlIGFyZSB0aGUgY2xhc3Nlcywgc3RydWN0cywgdW5pb25zIGFuZCBpbnRlcmZhY2VzIHdpdGggYnJpZWYgZGVzY3JpcHRpb25zOjx0YWJsZT4KKzxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIj4KKzwvaGVhZD48Ym9keT4KKzwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS40LjQgLS0+Cis8ZGl2IGNsYXNzPSJxaW5kZXgiPjxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImluZGV4Lmh0bWwiPk1haW4mbmJzcDtQYWdlPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImhpZXJhcmNoeS5odG1sIj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvYT4gfCA8YSBjbGFzcz0icWluZGV4SEwiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPkNsYXNzJm5ic3A7TWVtYmVyczwvYT48L2Rpdj4KKzxoMT5UaW55WG1sIENsYXNzIExpc3Q8L2gxPkhlcmUgYXJlIHRoZSBjbGFzc2VzLCBzdHJ1Y3RzLCB1bmlvbnMgYW5kIGludGVyZmFjZXMgd2l0aCBicmllZiBkZXNjcmlwdGlvbnM6PHRhYmxlPgogICA8dHI+PHRkIGNsYXNzPSJpbmRleGtleSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPjwvdGQ+PHRkIGNsYXNzPSJpbmRleHZhbHVlIj5BbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIgPC90ZD48L3RyPgotICA8dHI+PHRkIGNsYXNzPSJpbmRleGtleSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQgY2xhc3M9ImluZGV4dmFsdWUiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCIgdGl0bGU9IlRpWG1sQmFzZSBpcyBhIGJhc2UgY2xhc3MgZm9yIGV2ZXJ5IGNsYXNzIGluIFRpbnlYbWwuIj5UaVhtbEJhc2U8L2E+IGlzIGEgYmFzZSBjbGFzcyBmb3IgZXZlcnkgY2xhc3MgaW4gVGlueVhtbCA8L3RkPjwvdHI+CisgIDx0cj48dGQgY2xhc3M9ImluZGV4a2V5Ij48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZCBjbGFzcz0iaW5kZXh2YWx1ZSI+VGlYbWxCYXNlIGlzIGEgYmFzZSBjbGFzcyBmb3IgZXZlcnkgY2xhc3MgaW4gVGlueVhtbCA8L3RkPjwvdHI+CiAgIDx0cj48dGQgY2xhc3M9ImluZGV4a2V5Ij48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT48L3RkPjx0ZCBjbGFzcz0iaW5kZXh2YWx1ZSI+QW4gWE1MIGNvbW1lbnQgPC90ZD48L3RyPgogICA8dHI+PHRkIGNsYXNzPSJpbmRleGtleSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT48L3RkPjx0ZCBjbGFzcz0iaW5kZXh2YWx1ZSI+SW4gY29ycmVjdCBYTUwgdGhlIGRlY2xhcmF0aW9uIGlzIHRoZSBmaXJzdCBlbnRyeSBpbiB0aGUgZmlsZSA8L3RkPjwvdHI+CiAgIDx0cj48dGQgY2xhc3M9ImluZGV4a2V5Ij48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkIGNsYXNzPSJpbmRleHZhbHVlIj5BbHdheXMgdGhlIHRvcCBsZXZlbCBub2RlIDwvdGQ+PC90cj4KICAgPHRyPjx0ZCBjbGFzcz0iaW5kZXhrZXkiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkIGNsYXNzPSJpbmRleHZhbHVlIj5UaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcyA8L3RkPjwvdHI+Ci0gIDx0cj48dGQgY2xhc3M9ImluZGV4a2V5Ij48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+PC90ZD48dGQgY2xhc3M9ImluZGV4dmFsdWUiPkEgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiIHRpdGxlPSJBIFRpWG1sSGFuZGxlIGlzIGEgY2xhc3MgdGhhdCB3cmFwcyBhIG5vZGUgcG9pbnRlciB3aXRoIG51bGwgY2hlY2tzOyB0aGlzIGlzIGFuIGluY3JlZGlibHkuLi4iPlRpWG1sSGFuZGxlPC9hPiBpcyBhIGNsYXNzIHRoYXQgd3JhcHMgYSBub2RlIHBvaW50ZXIgd2l0aCBudWxsIGNoZWNrczsgdGhpcyBpcyBhbiBpbmNyZWRpYmx5IHVzZWZ1bCB0aGluZyA8L3RkPjwvdHI+CisgIDx0cj48dGQgY2xhc3M9ImluZGV4a2V5Ij48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+PC90ZD48dGQgY2xhc3M9ImluZGV4dmFsdWUiPkEgVGlYbWxIYW5kbGUgaXMgYSBjbGFzcyB0aGF0IHdyYXBzIGEgbm9kZSBwb2ludGVyIHdpdGggbnVsbCBjaGVja3M7IHRoaXMgaXMgYW4gaW5jcmVkaWJseSB1c2VmdWwgdGhpbmcgPC90ZD48L3RyPgogICA8dHI+PHRkIGNsYXNzPSJpbmRleGtleSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQgY2xhc3M9ImluZGV4dmFsdWUiPlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbCA8L3RkPjwvdHI+Ci0gIDx0cj48dGQgY2xhc3M9ImluZGV4a2V5Ij48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwiPlRpWG1sUHJpbnRlcjwvYT48L3RkPjx0ZCBjbGFzcz0iaW5kZXh2YWx1ZSI+UHJpbnQgdG8gbWVtb3J5IGZ1bmN0aW9uYWxpdHkgPC90ZD48L3RyPgogICA8dHI+PHRkIGNsYXNzPSJpbmRleGtleSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+PC90ZD48dGQgY2xhc3M9ImluZGV4dmFsdWUiPlhNTCB0ZXh0IDwvdGQ+PC90cj4KICAgPHRyPjx0ZCBjbGFzcz0iaW5kZXhrZXkiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPjwvdGQ+PHRkIGNsYXNzPSJpbmRleHZhbHVlIj5BbnkgdGFnIHRoYXQgdGlueVhtbCBkb2Vzbid0IHJlY29nbml6ZSBpcyBzYXZlZCBhcyBhbiB1bmtub3duIDwvdGQ+PC90cj4KLSAgPHRyPjx0ZCBjbGFzcz0iaW5kZXhrZXkiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCI+VGlYbWxWaXNpdG9yPC9hPjwvdGQ+PHRkIGNsYXNzPSJpbmRleHZhbHVlIj5JbXBsZW1lbnRzIHRoZSBpbnRlcmZhY2UgdG8gdGhlICJWaXNpdG9yIHBhdHRlcm4iIChzZWUgdGhlIEFjY2VwdCgpIG1ldGhvZCA8L3RkPjwvdHI+CiA8L3RhYmxlPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKKzxociBzaXplPSIxIj48YWRkcmVzcyBzdHlsZT0iYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBvbiBTYXQgT2N0IDggMTQ6MTU6MzAgMjAwNSBmb3IgVGlueVhtbCBieSZuYnNwOwogPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KKzxpbWcgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIiBhbGlnbj0ibWlkZGxlIiBib3JkZXI9IjAiPjwvYT4gMS40LjQgPC9zbWFsbD48L2FkZHJlc3M+CiA8L2JvZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2NsYXNzVGlYbWxBdHRyaWJ1dGUtbWVtYmVycy5odG1sIGIvZG9jcy9jbGFzc1RpWG1sQXR0cmlidXRlLW1lbWJlcnMuaHRtbAppbmRleCBmNmYyYzk5Li4xYzE0YTczIDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxBdHRyaWJ1dGUtbWVtYmVycy5odG1sCisrKyBiL2RvY3MvY2xhc3NUaVhtbEF0dHJpYnV0ZS1tZW1iZXJzLmh0bWwKQEAgLTEsNjMgKzEsMzYgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iPgorPGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1pc28tODg1OS0xIj4KIDx0aXRsZT5UaW55WG1sOiBNZW1iZXIgTGlzdDwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLTxoMT5UaVhtbEF0dHJpYnV0ZSBNZW1iZXIgTGlzdDwvaDE+VGhpcyBpcyB0aGUgY29tcGxldGUgbGlzdCBvZiBtZW1iZXJzIGZvciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+LCBpbmNsdWRpbmcgYWxsIGluaGVyaXRlZCBtZW1iZXJzLjx0YWJsZT4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiNTRiZmI5YjcwZmU2ZGQyNzZlN2IyNzljYWI3ZjAwMyI+Q29sdW1uPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EyODgwZGRlZjUzZmM3NTIyYzk5NTM1MjczOTU0ZDIzMCI+RG91YmxlVmFsdWU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E2YmQ4YzMxNWMxYWNiMDllMzQxMDdiODczNjUwNTk0OCI+RW5jb2RlU3RyaW5nPC9hPihjb25zdCBUSVhNTF9TVFJJTkcgJmFtcDtzdHIsIFRJWE1MX1NUUklORyAqb3V0KTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbc3RhdGljXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNjU1OWE1MzBjYTY3NjNmYzMwMWExNGQ3N2VkMjhjMTciPkdldFVzZXJEYXRhPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FkMDEyMDIxMGU0NjgwZWYyMDg4NjAxNzUzY2UwZWRlNCI+R2V0VXNlckRhdGE8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWExYTIwYWQ1OWRjN2U4OWEwYWIyNjUzOTYzNjBkNTBmIj5JbnRWYWx1ZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWQ0YjE0NzI1MzFjNjQ3YTI1YjE4NDBhODdhZTQyNDM4Ij5Jc1doaXRlU3BhY2VDb25kZW5zZWQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgc3RhdGljXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EyOThhNTcyODdkMzA1OTA0YmE2YmQ5NmFlNmY3OGQzZCI+TmFtZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTFjNzhlOTJlMjIzYTQwODQzZjY0NGJhNDhlZjY5ZjY3Ij5OZXh0PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E2ZWJiZmUzMzNmZTc2Y2Q4MzRiZDZjYmNjYTMxMzBjZiI+UHJldmlvdXM8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWNjMDQ5NTZjMWQ1YzRjMzFmZTc0ZjdhNzUyOGQxMDlhIj5QcmludDwvYT4oRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FjODdiMmE4NDg5OTA2YTVkN2FhMjg3NWYyMGJlMzUxMyI+UXVlcnlEb3VibGVWYWx1ZTwvYT4oZG91YmxlICpfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FkNmM5MzA4OGVlMjFhZjQxYTEwNzkzMTIyMzMzOTM0NCI+UXVlcnlJbnRWYWx1ZTwvYT4oaW50ICpfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMDI0YmNlYjA3MDE4OGRmOTJjMmE4ZDg4NTJkZDA4NTMiPlJvdzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTBmNzk5ZWM2NDViZmI4ZDhhOTY5ZTgzNDc4ZjM3OWMxIj5TZXRDb25kZW5zZVdoaXRlU3BhY2U8L2E+KGJvb2wgY29uZGVuc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMDMxNmRhMzEzNzM0OTZjNDM2OGFkNTQ5YmY3MTEzOTQiPlNldERvdWJsZVZhbHVlPC9hPihkb3VibGUgX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E3ZTA2NWRmNjQwMTE2YTYyZWE0ZjRiN2RhNTQ0OWNjOCI+U2V0SW50VmFsdWU8L2E+KGludCBfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWI3ZmEzZDIxZmY4ZDdjNTc2NGNmOWFmMTViNjY3YTk5Ij5TZXROYW1lPC9hPihjb25zdCBjaGFyICpfbmFtZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWIyOTZmZjBjOWE4YzcwMTA1NWNkMjU3YThhOTc2ZTU3Ij5TZXROYW1lPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO19uYW1lKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWM2YjNlMGY3OTA5MzBkNDk3MGVjMzA3NjRlOTM3YjVkIj5TZXRVc2VyRGF0YTwvYT4odm9pZCAqdXNlcik8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMmRhZTQ0MTc4ZjY2OGIzY2I0ODEwMWJlNGYyMjM2YTAiPlNldFZhbHVlPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FiNDNmNjdhMGNjM2VjMWQ4MGU2MjYwNjUwMGYwOTI1ZiI+U2V0VmFsdWU8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhOWNmYTNjODE3OTg3M2ZkNDg1ZDgzMDAzYjExNGY4ZTEiPlRpWG1sQXR0cmlidXRlPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EwNTIyMTM1MjJjYWFjMzk3OTk2MGUwNzE0MDYzODYxZCI+VGlYbWxBdHRyaWJ1dGU8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X25hbWUsIGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNzU5ZDBiNzZmYjhmY2Y3NjVlY2FiMjQzYmMxNGYwNWUiPlRpWG1sQXR0cmlidXRlPC9hPihjb25zdCBjaGFyICpfbmFtZSwgY29uc3QgY2hhciAqX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWIyNDJjMDE1OTAxOTFmNjQ0NTY5ZmE4OWEwODBkOTdjIj51c2VyRGF0YTwvYT48L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW3Byb3RlY3RlZF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMGY4NzQ0OTBlYWM4Y2EwMGVlMDA3MDc2NWQwZTk3ZTMiPlZhbHVlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhODc3MDVjM2NjZjllZTk0MTdiZWI0ZjdjYmFjZDRkMzMiPlZhbHVlU3RyPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotPC90YWJsZT48L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOworPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPkNsYXNzJm5ic3A7TWVtYmVyczwvYT48L2Rpdj4KKzxoMT5UaVhtbEF0dHJpYnV0ZSBNZW1iZXIgTGlzdDwvaDE+VGhpcyBpcyB0aGUgY29tcGxldGUgbGlzdCBvZiBtZW1iZXJzIGZvciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+LCBpbmNsdWRpbmcgYWxsIGluaGVyaXRlZCBtZW1iZXJzLjxwPjx0YWJsZT4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E0Ij5Db2x1bW48L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTYiPkRvdWJsZVZhbHVlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E1Ij5JbnRWYWx1ZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjZTEiPklzV2hpdGVTcGFjZUNvbmRlbnNlZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTMiPk5hbWU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExNSI+TmV4dDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTciPlByZXZpb3VzPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EyMyI+UHJpbnQ8L2E+KEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTgiPlF1ZXJ5RG91YmxlVmFsdWU8L2E+KGRvdWJsZSAqX3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNyI+UXVlcnlJbnRWYWx1ZTwvYT4oaW50ICpfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMyI+Um93PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNlMCI+U2V0Q29uZGVuc2VXaGl0ZVNwYWNlPC9hPihib29sIGNvbmRlbnNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTEyIj5TZXREb3VibGVWYWx1ZTwvYT4oZG91YmxlIF92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTEiPlNldEludFZhbHVlPC9hPihpbnQgX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E5Ij5TZXROYW1lPC9hPihjb25zdCBjaGFyICpfbmFtZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTEzIj5TZXROYW1lPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO19uYW1lKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTAiPlNldFZhbHVlPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExNCI+U2V0VmFsdWU8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMCI+VGlYbWxBdHRyaWJ1dGU8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTEiPlRpWG1sQXR0cmlidXRlPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO19uYW1lLCBjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTIiPlRpWG1sQXR0cmlidXRlPC9hPihjb25zdCBjaGFyICpfbmFtZSwgY29uc3QgY2hhciAqX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjcDEiPnVzZXJEYXRhPC9hPjwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbcHJvdGVjdGVkXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E0Ij5WYWx1ZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKzwvdGFibGU+PGhyIHNpemU9IjEiPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFNhdCBPY3QgOCAxNDoxNTozMCAyMDA1IGZvciBUaW55WG1sIGJ5Jm5ic3A7CiA8YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgorPGltZyBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iIGFsaWduPSJtaWRkbGUiIGJvcmRlcj0iMCI+PC9hPiAxLjQuNCA8L3NtYWxsPjwvYWRkcmVzcz4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIGIvZG9jcy9jbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwKaW5kZXggNmVhY2E2Yi4uMWI0ZGI1MSAxMDA2NDQKLS0tIGEvZG9jcy9jbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwKKysrIGIvZG9jcy9jbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwKQEAgLTEsMTczICsxLDE3OSBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PWlzby04ODU5LTEiPgogPHRpdGxlPlRpbnlYbWw6IFRpWG1sQXR0cmlidXRlIENsYXNzIFJlZmVyZW5jZTwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLTxoMT5UaVhtbEF0dHJpYnV0ZSBDbGFzcyBSZWZlcmVuY2U8L2gxPjwhLS0gZG94eXRhZzogY2xhc3M9IlRpWG1sQXR0cmlidXRlIiAtLT48IS0tIGRveHl0YWc6IGluaGVyaXRzPSJUaVhtbEJhc2UiIC0tPgotPHA+QW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiAgCi08YSBocmVmPSIjX2RldGFpbHMiPk1vcmUuLi48L2E+PC9wPgotCi08cD48Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT48L3A+Ci08ZGl2IGNsYXNzPSJkeW5oZWFkZXIiPgotSW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxBdHRyaWJ1dGU6PC9kaXY+Ci08ZGl2IGNsYXNzPSJkeW5zZWN0aW9uIj4KLSA8ZGl2IGNsYXNzPSJjZW50ZXIiPgotICA8aW1nIHNyYz0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5wbmciIHVzZW1hcD0iI1RpWG1sQXR0cmlidXRlX21hcCIgYWx0PSIiLz4KLSAgPG1hcCBpZD0iVGlYbWxBdHRyaWJ1dGVfbWFwIiBuYW1lPSJUaVhtbEF0dHJpYnV0ZV9tYXAiPgotPGFyZWEgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCIgYWx0PSJUaVhtbEJhc2UiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjAsMCw5MCwyNCIvPgorPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPkNsYXNzJm5ic3A7TWVtYmVyczwvYT48L2Rpdj4KKzxoMT5UaVhtbEF0dHJpYnV0ZSBDbGFzcyBSZWZlcmVuY2U8L2gxPjwhLS0gZG94eXRhZzogY2xhc3M9IlRpWG1sQXR0cmlidXRlIiAtLT48IS0tIGRveHl0YWc6IGluaGVyaXRzPSJUaVhtbEJhc2UiIC0tPkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4gIAorPGEgaHJlZj0iI19kZXRhaWxzIj5Nb3JlLi4uPC9hPgorPHA+Cis8Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoLXNvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT4KKzxwPgorPHA+SW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxBdHRyaWJ1dGU6Cis8cD48Y2VudGVyPjxpbWcgc3JjPSJjbGFzc1RpWG1sQXR0cmlidXRlLnBuZyIgdXNlbWFwPSIjVGlYbWxBdHRyaWJ1dGVfbWFwIiBib3JkZXI9IjAiIGFsdD0iIj48L2NlbnRlcj4KKzxtYXAgbmFtZT0iVGlYbWxBdHRyaWJ1dGVfbWFwIj4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiIGFsdD0iVGlYbWxCYXNlIiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDAsOTAsMjQiPgogPC9tYXA+Ci0gPC9kaXY+Ci08L2Rpdj4KKzxhIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUtbWVtYmVycy5odG1sIj5MaXN0IG9mIGFsbCBtZW1iZXJzLjwvYT48dGFibGUgYm9yZGVyPSIwIiBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiPgorPHRyPjx0ZD48L3RkPjwvdHI+Cis8dHI+PHRkIGNvbHNwYW49IjIiPjxicj48aDI+UHVibGljIE1lbWJlciBGdW5jdGlvbnM8L2gyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTAiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OlRpWG1sQXR0cmlidXRlIiByZWY9ImEwIiBhcmdzPSIoKSIgLS0+CismbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTAiPlRpWG1sQXR0cmlidXRlPC9hPiAoKTwvdGQ+PC90cj4KIAotPHA+PGEgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS1tZW1iZXJzLmh0bWwiPkxpc3Qgb2YgYWxsIG1lbWJlcnMuPC9hPjwvcD4KLTx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+Ci08dHI+PHRkIGNvbHNwYW49IjIiPjxoMj5QdWJsaWMgTWVtYmVyIEZ1bmN0aW9uczwvaDI+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhOWNmYTNjODE3OTg3M2ZkNDg1ZDgzMDAzYjExNGY4ZTEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OlRpWG1sQXR0cmlidXRlIiByZWY9ImE5Y2ZhM2M4MTc5ODczZmQ0ODVkODMwMDNiMTE0ZjhlMSIgYXJncz0iKCkiIC0tPgotJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E5Y2ZhM2M4MTc5ODczZmQ0ODVkODMwMDNiMTE0ZjhlMSI+VGlYbWxBdHRyaWJ1dGU8L2E+ICgpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29uc3RydWN0IGFuIGVtcHR5IGF0dHJpYnV0ZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEwNTIyMTM1MjJjYWFjMzk3OTk2MGUwNzE0MDYzODYxZCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEF0dHJpYnV0ZTo6VGlYbWxBdHRyaWJ1dGUiIHJlZj0iYTA1MjIxMzUyMmNhYWMzOTc5OTYwZTA3MTQwNjM4NjFkIiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfbmFtZSwgY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIiAtLT4KLSZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMDUyMjEzNTIyY2FhYzM5Nzk5NjBlMDcxNDA2Mzg2MWQiPlRpWG1sQXR0cmlidXRlPC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfbmFtZSwgY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+c3RkOjpzdHJpbmcgY29uc3RydWN0b3IuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNzU5ZDBiNzZmYjhmY2Y3NjVlY2FiMjQzYmMxNGYwNWUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OlRpWG1sQXR0cmlidXRlIiByZWY9ImE3NTlkMGI3NmZiOGZjZjc2NWVjYWIyNDNiYzE0ZjA1ZSIgYXJncz0iKGNvbnN0IGNoYXIgKl9uYW1lLCBjb25zdCBjaGFyICpfdmFsdWUpIiAtLT4KLSZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNzU5ZDBiNzZmYjhmY2Y3NjVlY2FiMjQzYmMxNGYwNWUiPlRpWG1sQXR0cmlidXRlPC9hPiAoY29uc3QgY2hhciAqX25hbWUsIGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5Db25zdHJ1Y3QgYW4gYXR0cmlidXRlIHdpdGggYSBuYW1lIGFuZCB2YWx1ZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEyOThhNTcyODdkMzA1OTA0YmE2YmQ5NmFlNmY3OGQzZCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEF0dHJpYnV0ZTo6TmFtZSIgcmVmPSJhMjk4YTU3Mjg3ZDMwNTkwNGJhNmJkOTZhZTZmNzhkM2QiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci1jb25zdCBjaGFyICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTI5OGE1NzI4N2QzMDU5MDRiYTZiZDk2YWU2Zjc4ZDNkIj5OYW1lPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gdGhlIG5hbWUgb2YgdGhpcyBhdHRyaWJ1dGUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMGY4NzQ0OTBlYWM4Y2EwMGVlMDA3MDc2NWQwZTk3ZTMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OlZhbHVlIiByZWY9ImEwZjg3NDQ5MGVhYzhjYTAwZWUwMDcwNzY1ZDBlOTdlMyIgYXJncz0iKCkgY29uc3QgIiAtLT4KLWNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMGY4NzQ0OTBlYWM4Y2EwMGVlMDA3MDc2NWQwZTk3ZTMiPlZhbHVlPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gdGhlIHZhbHVlIG9mIHRoaXMgYXR0cmlidXRlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTg3NzA1YzNjY2Y5ZWU5NDE3YmViNGY3Y2JhY2Q0ZDMzIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQXR0cmlidXRlOjpWYWx1ZVN0ciIgcmVmPSJhODc3MDVjM2NjZjllZTk0MTdiZWI0ZjdjYmFjZDRkMzMiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci1jb25zdCBzdGQ6OnN0cmluZyAmYW1wOyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhODc3MDVjM2NjZjllZTk0MTdiZWI0ZjdjYmFjZDRkMzMiPlZhbHVlU3RyPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gdGhlIHZhbHVlIG9mIHRoaXMgYXR0cmlidXRlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWExYTIwYWQ1OWRjN2U4OWEwYWIyNjUzOTYzNjBkNTBmIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQXR0cmlidXRlOjpJbnRWYWx1ZSIgcmVmPSJhYTFhMjBhZDU5ZGM3ZTg5YTBhYjI2NTM5NjM2MGQ1MGYiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci1pbnQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWExYTIwYWQ1OWRjN2U4OWEwYWIyNjUzOTYzNjBkNTBmIj5JbnRWYWx1ZTwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGlzIGF0dHJpYnV0ZSwgY29udmVydGVkIHRvIGFuIGludGVnZXIuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMjg4MGRkZWY1M2ZjNzUyMmM5OTUzNTI3Mzk1NGQyMzAiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OkRvdWJsZVZhbHVlIiByZWY9ImEyODgwZGRlZjUzZmM3NTIyYzk5NTM1MjczOTU0ZDIzMCIgYXJncz0iKCkgY29uc3QgIiAtLT4KLWRvdWJsZSZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMjg4MGRkZWY1M2ZjNzUyMmM5OTUzNTI3Mzk1NGQyMzAiPkRvdWJsZVZhbHVlPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gdGhlIHZhbHVlIG9mIHRoaXMgYXR0cmlidXRlLCBjb252ZXJ0ZWQgdG8gYSBkb3VibGUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmludCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhZDZjOTMwODhlZTIxYWY0MWExMDc5MzEyMjMzMzkzNDQiPlF1ZXJ5SW50VmFsdWU8L2E+IChpbnQgKl92YWx1ZSkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UXVlcnlJbnRWYWx1ZSBleGFtaW5lcyB0aGUgdmFsdWUgc3RyaW5nLiAgPGEgaHJlZj0iI2FkNmM5MzA4OGVlMjFhZjQxYTEwNzkzMTIyMzMzOTM0NCI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhYzg3YjJhODQ4OTkwNmE1ZDdhYTI4NzVmMjBiZTM1MTMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OlF1ZXJ5RG91YmxlVmFsdWUiIHJlZj0iYWM4N2IyYTg0ODk5MDZhNWQ3YWEyODc1ZjIwYmUzNTEzIiBhcmdzPSIoZG91YmxlICpfdmFsdWUpIGNvbnN0ICIgLS0+Ci1pbnQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWM4N2IyYTg0ODk5MDZhNWQ3YWEyODc1ZjIwYmUzNTEzIj5RdWVyeURvdWJsZVZhbHVlPC9hPiAoZG91YmxlICpfdmFsdWUpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlF1ZXJ5RG91YmxlVmFsdWUgZXhhbWluZXMgdGhlIHZhbHVlIHN0cmluZy4gU2VlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FkNmM5MzA4OGVlMjFhZjQxYTEwNzkzMTIyMzMzOTM0NCIgdGl0bGU9IlF1ZXJ5SW50VmFsdWUgZXhhbWluZXMgdGhlIHZhbHVlIHN0cmluZy4iPlF1ZXJ5SW50VmFsdWUoKTwvYT4uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhYjdmYTNkMjFmZjhkN2M1NzY0Y2Y5YWYxNWI2NjdhOTkiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OlNldE5hbWUiIHJlZj0iYWI3ZmEzZDIxZmY4ZDdjNTc2NGNmOWFmMTViNjY3YTk5IiBhcmdzPSIoY29uc3QgY2hhciAqX25hbWUpIiAtLT4KLXZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWI3ZmEzZDIxZmY4ZDdjNTc2NGNmOWFmMTViNjY3YTk5Ij5TZXROYW1lPC9hPiAoY29uc3QgY2hhciAqX25hbWUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U2V0IHRoZSBuYW1lIG9mIHRoaXMgYXR0cmlidXRlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTJkYWU0NDE3OGY2NjhiM2NiNDgxMDFiZTRmMjIzNmEwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQXR0cmlidXRlOjpTZXRWYWx1ZSIgcmVmPSJhMmRhZTQ0MTc4ZjY2OGIzY2I0ODEwMWJlNGYyMjM2YTAiIGFyZ3M9Iihjb25zdCBjaGFyICpfdmFsdWUpIiAtLT4KLXZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTJkYWU0NDE3OGY2NjhiM2NiNDgxMDFiZTRmMjIzNmEwIj5TZXRWYWx1ZTwvYT4gKGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TZXQgdGhlIHZhbHVlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTdlMDY1ZGY2NDAxMTZhNjJlYTRmNGI3ZGE1NDQ5Y2M4Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQXR0cmlidXRlOjpTZXRJbnRWYWx1ZSIgcmVmPSJhN2UwNjVkZjY0MDExNmE2MmVhNGY0YjdkYTU0NDljYzgiIGFyZ3M9IihpbnQgX3ZhbHVlKSIgLS0+Ci12b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E3ZTA2NWRmNjQwMTE2YTYyZWE0ZjRiN2RhNTQ0OWNjOCI+U2V0SW50VmFsdWU8L2E+IChpbnQgX3ZhbHVlKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNldCB0aGUgdmFsdWUgZnJvbSBhbiBpbnRlZ2VyLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTAzMTZkYTMxMzczNDk2YzQzNjhhZDU0OWJmNzExMzk0Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQXR0cmlidXRlOjpTZXREb3VibGVWYWx1ZSIgcmVmPSJhMDMxNmRhMzEzNzM0OTZjNDM2OGFkNTQ5YmY3MTEzOTQiIGFyZ3M9Iihkb3VibGUgX3ZhbHVlKSIgLS0+Ci12b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EwMzE2ZGEzMTM3MzQ5NmM0MzY4YWQ1NDliZjcxMTM5NCI+U2V0RG91YmxlVmFsdWU8L2E+IChkb3VibGUgX3ZhbHVlKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNldCB0aGUgdmFsdWUgZnJvbSBhIGRvdWJsZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFiMjk2ZmYwYzlhOGM3MDEwNTVjZDI1N2E4YTk3NmU1NyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEF0dHJpYnV0ZTo6U2V0TmFtZSIgcmVmPSJhYjI5NmZmMGM5YThjNzAxMDU1Y2QyNTdhOGE5NzZlNTciIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO19uYW1lKSIgLS0+Ci12b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FiMjk2ZmYwYzlhOGM3MDEwNTVjZDI1N2E4YTk3NmU1NyI+U2V0TmFtZTwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X25hbWUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U1RMIHN0ZDo6c3RyaW5nIGZvcm0uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhYjQzZjY3YTBjYzNlYzFkODBlNjI2MDY1MDBmMDkyNWYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OlNldFZhbHVlIiByZWY9ImFiNDNmNjdhMGNjM2VjMWQ4MGU2MjYwNjUwMGYwOTI1ZiIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSIgLS0+Ci12b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FiNDNmNjdhMGNjM2VjMWQ4MGU2MjYwNjUwMGYwOTI1ZiI+U2V0VmFsdWU8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImExYzc4ZTkyZTIyM2E0MDg0M2Y2NDRiYTQ4ZWY2OWY2NyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEF0dHJpYnV0ZTo6TmV4dCIgcmVmPSJhMWM3OGU5MmUyMjNhNDA4NDNmNjQ0YmE0OGVmNjlmNjciIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci1jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTFjNzhlOTJlMjIzYTQwODQzZjY0NGJhNDhlZjY5ZjY3Ij5OZXh0PC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5HZXQgdGhlIG5leHQgc2libGluZyBhdHRyaWJ1dGUgaW4gdGhlIERPTS4gUmV0dXJucyBudWxsIGF0IGVuZC4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE2ZWJiZmUzMzNmZTc2Y2Q4MzRiZDZjYmNjYTMxMzBjZiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEF0dHJpYnV0ZTo6UHJldmlvdXMiIHJlZj0iYTZlYmJmZTMzM2ZlNzZjZDgzNGJkNmNiY2NhMzEzMGNmIiBhcmdzPSIoKSBjb25zdCAiIC0tPgotY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E2ZWJiZmUzMzNmZTc2Y2Q4MzRiZDZjYmNjYTMxMzBjZiI+UHJldmlvdXM8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkdldCB0aGUgcHJldmlvdXMgc2libGluZyBhdHRyaWJ1dGUgaW4gdGhlIERPTS4gUmV0dXJucyBudWxsIGF0IGJlZ2lubmluZy4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+dmlydHVhbCB2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FjYzA0OTU2YzFkNWM0YzMxZmU3NGY3YTc1MjhkMTA5YSI+UHJpbnQ8L2E+IChGSUxFICpjZmlsZSwgaW50IGRlcHRoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5BbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbSBvciB0aGUgc3RyaW5nIGNsYXNzIChUaVhtbFN0cmluZyBpbiBub24tU1RMIG1vZGUsIHN0ZDo6c3RyaW5nIGluIFNUTCBtb2RlLiAgPGEgaHJlZj0iI2FjYzA0OTU2YzFkNWM0YzMxZmU3NGY3YTc1MjhkMTA5YSI+PC9hPjxici8+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29uc3RydWN0IGFuIGVtcHR5IGF0dHJpYnV0ZS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OlRpWG1sQXR0cmlidXRlIiByZWY9ImExIiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfbmFtZSwgY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIiAtLT4KKyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMSI+VGlYbWxBdHRyaWJ1dGU8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO19uYW1lLCBjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPnN0ZDo6c3RyaW5nIGNvbnN0cnVjdG9yLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEF0dHJpYnV0ZTo6VGlYbWxBdHRyaWJ1dGUiIHJlZj0iYTIiIGFyZ3M9Iihjb25zdCBjaGFyICpfbmFtZSwgY29uc3QgY2hhciAqX3ZhbHVlKSIgLS0+CismbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTIiPlRpWG1sQXR0cmlidXRlPC9hPiAoY29uc3QgY2hhciAqX25hbWUsIGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNvbnN0cnVjdCBhbiBhdHRyaWJ1dGUgd2l0aCBhIG5hbWUgYW5kIHZhbHVlLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEF0dHJpYnV0ZTo6TmFtZSIgcmVmPSJhMyIgYXJncz0iKCkgY29uc3QgIiAtLT4KK2NvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMyI+TmFtZTwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gdGhlIG5hbWUgb2YgdGhpcyBhdHRyaWJ1dGUuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE0Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQXR0cmlidXRlOjpWYWx1ZSIgcmVmPSJhNCIgYXJncz0iKCkgY29uc3QgIiAtLT4KK2NvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNCI+VmFsdWU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGlzIGF0dHJpYnV0ZS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OkludFZhbHVlIiByZWY9ImE1IiBhcmdzPSIoKSBjb25zdCAiIC0tPgoraW50Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E1Ij5JbnRWYWx1ZTwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gdGhlIHZhbHVlIG9mIHRoaXMgYXR0cmlidXRlLCBjb252ZXJ0ZWQgdG8gYW4gaW50ZWdlci4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OkRvdWJsZVZhbHVlIiByZWY9ImE2IiBhcmdzPSIoKSBjb25zdCAiIC0tPgorZG91YmxlJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E2Ij5Eb3VibGVWYWx1ZTwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gdGhlIHZhbHVlIG9mIHRoaXMgYXR0cmlidXRlLCBjb252ZXJ0ZWQgdG8gYSBkb3VibGUuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmludCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNyI+UXVlcnlJbnRWYWx1ZTwvYT4gKGludCAqX3ZhbHVlKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlF1ZXJ5SW50VmFsdWUgZXhhbWluZXMgdGhlIHZhbHVlIHN0cmluZy4gIDxhIGhyZWY9IiNhNyI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE4Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQXR0cmlidXRlOjpRdWVyeURvdWJsZVZhbHVlIiByZWY9ImE4IiBhcmdzPSIoZG91YmxlICpfdmFsdWUpIGNvbnN0ICIgLS0+CitpbnQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTgiPlF1ZXJ5RG91YmxlVmFsdWU8L2E+IChkb3VibGUgKl92YWx1ZSkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5RdWVyeURvdWJsZVZhbHVlIGV4YW1pbmVzIHRoZSB2YWx1ZSBzdHJpbmcuIFNlZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNyI+UXVlcnlJbnRWYWx1ZSgpPC9hPi4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTkiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OlNldE5hbWUiIHJlZj0iYTkiIGFyZ3M9Iihjb25zdCBjaGFyICpfbmFtZSkiIC0tPgordm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhOSI+U2V0TmFtZTwvYT4gKGNvbnN0IGNoYXIgKl9uYW1lKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U2V0IHRoZSBuYW1lIG9mIHRoaXMgYXR0cmlidXRlLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMTAiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OlNldFZhbHVlIiByZWY9ImExMCIgYXJncz0iKGNvbnN0IGNoYXIgKl92YWx1ZSkiIC0tPgordm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTAiPlNldFZhbHVlPC9hPiAoY29uc3QgY2hhciAqX3ZhbHVlKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U2V0IHRoZSB2YWx1ZS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTExIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQXR0cmlidXRlOjpTZXRJbnRWYWx1ZSIgcmVmPSJhMTEiIGFyZ3M9IihpbnQgX3ZhbHVlKSIgLS0+Cit2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExMSI+U2V0SW50VmFsdWU8L2E+IChpbnQgX3ZhbHVlKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U2V0IHRoZSB2YWx1ZSBmcm9tIGFuIGludGVnZXIuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImExMiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEF0dHJpYnV0ZTo6U2V0RG91YmxlVmFsdWUiIHJlZj0iYTEyIiBhcmdzPSIoZG91YmxlIF92YWx1ZSkiIC0tPgordm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTIiPlNldERvdWJsZVZhbHVlPC9hPiAoZG91YmxlIF92YWx1ZSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNldCB0aGUgdmFsdWUgZnJvbSBhIGRvdWJsZS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTEzIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQXR0cmlidXRlOjpTZXROYW1lIiByZWY9ImExMyIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X25hbWUpIiAtLT4KK3ZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTEzIj5TZXROYW1lPC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfbmFtZSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMTQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OlNldFZhbHVlIiByZWY9ImExNCIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSIgLS0+Cit2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExNCI+U2V0VmFsdWU8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMTUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6Ok5leHQiIHJlZj0iYTE1IiBhcmdzPSIoKSBjb25zdCAiIC0tPgorY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExNSI+TmV4dDwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5HZXQgdGhlIG5leHQgc2libGluZyBhdHRyaWJ1dGUgaW4gdGhlIERPTS4gUmV0dXJucyBudWxsIGF0IGVuZC4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTE3Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQXR0cmlidXRlOjpQcmV2aW91cyIgcmVmPSJhMTciIGFyZ3M9IigpIGNvbnN0ICIgLS0+Citjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTE3Ij5QcmV2aW91czwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5HZXQgdGhlIHByZXZpb3VzIHNpYmxpbmcgYXR0cmlidXRlIGluIHRoZSBET00uIFJldHVybnMgbnVsbCBhdCBiZWdpbm5pbmcuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZpcnR1YWwgdm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMjMiPlByaW50PC9hPiAoRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5BbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbS4gIDxhIGhyZWY9IiNhMjMiPjwvYT48YnI+PC90ZD48L3RyPgogPC90YWJsZT4KLTxoci8+PGEgbmFtZT0iX2RldGFpbHMiPjwvYT48aDI+RGV0YWlsZWQgRGVzY3JpcHRpb248L2gyPgotPHA+QW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiA8L3A+Ci08cD5FbGVtZW50cyBoYXZlIGFuIGFyYml0cmFyeSBudW1iZXIgb2YgYXR0cmlidXRlcywgZWFjaCB3aXRoIGEgdW5pcXVlIG5hbWUuPC9wPgotPGRsIGNsYXNzPSJub3RlIj48ZHQ+PGI+Tm90ZTo8L2I+PC9kdD48ZGQ+VGhlIGF0dHJpYnV0ZXMgYXJlIG5vdCBUaVhtbE5vZGVzLCBzaW5jZSB0aGV5IGFyZSBub3QgcGFydCBvZiB0aGUgdGlueVhNTCBkb2N1bWVudCBvYmplY3QgbW9kZWwuIFRoZXJlIGFyZSBvdGhlciBzdWdnZXN0ZWQgd2F5cyB0byBsb29rIGF0IHRoaXMgcHJvYmxlbS4gPC9kZD48L2RsPgotPGhyLz48aDI+TWVtYmVyIEZ1bmN0aW9uIERvY3VtZW50YXRpb248L2gyPgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFjYzA0OTU2YzFkNWM0YzMxZmU3NGY3YTc1MjhkMTA5YSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEF0dHJpYnV0ZTo6UHJpbnQiIHJlZj0iYWNjMDQ5NTZjMWQ1YzRjMzFmZTc0ZjdhNzUyOGQxMDlhIiBhcmdzPSIoRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxocj48YSBuYW1lPSJfZGV0YWlscyI+PC9hPjxoMj5EZXRhaWxlZCBEZXNjcmlwdGlvbjwvaDI+CitBbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIuIAorPHA+CitFbGVtZW50cyBoYXZlIGFuIGFyYml0cmFyeSBudW1iZXIgb2YgYXR0cmlidXRlcywgZWFjaCB3aXRoIGEgdW5pcXVlIG5hbWUuPHA+Cis8ZGwgY29tcGFjdD48ZHQ+PGI+Tm90ZTo8L2I+PC9kdD48ZGQ+VGhlIGF0dHJpYnV0ZXMgYXJlIG5vdCBUaVhtbE5vZGVzLCBzaW5jZSB0aGV5IGFyZSBub3QgcGFydCBvZiB0aGUgdGlueVhNTCBkb2N1bWVudCBvYmplY3QgbW9kZWwuIFRoZXJlIGFyZSBvdGhlciBzdWdnZXN0ZWQgd2F5cyB0byBsb29rIGF0IHRoaXMgcHJvYmxlbS48L2RkPjwvZGw+CisKKzxwPgorPGhyPjxoMj5NZW1iZXIgRnVuY3Rpb24gRG9jdW1lbnRhdGlvbjwvaDI+Cis8YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMjMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxBdHRyaWJ1dGU6OlByaW50IiByZWY9ImEyMyIgYXJncz0iKEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0ICIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPnZpcnR1YWwgdm9pZCBUaVhtbEF0dHJpYnV0ZTo6UHJpbnQgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPkZJTEUgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+Y2ZpbGU8L2VtPiwgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPnZpcnR1YWwgdm9pZCBUaVhtbEF0dHJpYnV0ZTo6UHJpbnQgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+RklMRSAqJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZSIgbm93cmFwPiA8ZW0+Y2ZpbGU8L2VtPiwgPC90ZD4KICAgICAgICAgPC90cj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1rZXkiPjwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmludCZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+ZGVwdGg8L2VtPjwvdGQ+PHRkPiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIGFsaWduPSJyaWdodCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcD5pbnQmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lIiBub3dyYXA+IDxlbT5kZXB0aDwvZW0+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZD4pPC90ZD4KLSAgICAgICAgICA8dGQ+PC90ZD48dGQ+PC90ZD48dGQ+IGNvbnN0PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj4pJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBjb2xzcGFuPSIyIj4gY29uc3Q8Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5BbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbSBvciB0aGUgc3RyaW5nIGNsYXNzIChUaVhtbFN0cmluZyBpbiBub24tU1RMIG1vZGUsIHN0ZDo6c3RyaW5nIGluIFNUTCBtb2RlLiA8L3A+Ci08cD4pIEVpdGhlciBvciBib3RoIGNmaWxlIGFuZCBzdHIgY2FuIGJlIG51bGwuPC9wPgotPHA+VGhpcyBpcyBhIGZvcm1hdHRlZCBwcmludCwgYW5kIHdpbGwgaW5zZXJ0IHRhYnMgYW5kIG5ld2xpbmVzLjwvcD4KLTxwPihGb3IgYW4gdW5mb3JtYXR0ZWQgc3RyZWFtLCB1c2UgdGhlICZsdDsmbHQ7IG9wZXJhdG9yLikgPC9wPgotCi08cD5JbXBsZW1lbnRzIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGRlNTZiM2YyZWYxNGM2NTA5MWEzYjkxNjQzN2I1MTIiPlRpWG1sQmFzZTwvYT4uPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFkNmM5MzA4OGVlMjFhZjQxYTEwNzkzMTIyMzMzOTM0NCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEF0dHJpYnV0ZTo6UXVlcnlJbnRWYWx1ZSIgcmVmPSJhZDZjOTMwODhlZTIxYWY0MWExMDc5MzEyMjMzMzkzNDQiIGFyZ3M9IihpbnQgKl92YWx1ZSkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorQWxsIFRpbnlYbWwgY2xhc3NlcyBjYW4gcHJpbnQgdGhlbXNlbHZlcyB0byBhIGZpbGVzdHJlYW0uIAorPHA+CitUaGlzIGlzIGEgZm9ybWF0dGVkIHByaW50LCBhbmQgd2lsbCBpbnNlcnQgdGFicyBhbmQgbmV3bGluZXMuPHA+CisoRm9yIGFuIHVuZm9ybWF0dGVkIHN0cmVhbSwgdXNlIHRoZSAmbHQ7Jmx0OyBvcGVyYXRvci4pCis8cD4KK0ltcGxlbWVudHMgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EyIj5UaVhtbEJhc2U8L2E+LiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE3Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQXR0cmlidXRlOjpRdWVyeUludFZhbHVlIiByZWY9ImE3IiBhcmdzPSIoaW50ICpfdmFsdWUpIGNvbnN0ICIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPmludCBUaVhtbEF0dHJpYnV0ZTo6UXVlcnlJbnRWYWx1ZSA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+aW50ICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPl92YWx1ZTwvZW0+PC90ZD4KLSAgICAgICAgICA8dGQ+Jm5ic3A7KSZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkPiBjb25zdDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5pbnQgVGlYbWxBdHRyaWJ1dGU6OlF1ZXJ5SW50VmFsdWUgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+aW50ICombmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lMSIgdmFsaWduPSJ0b3AiIG5vd3JhcD4gPGVtPl92YWx1ZTwvZW0+ICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPiZuYnNwOykmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcD4gY29uc3Q8L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+UXVlcnlJbnRWYWx1ZSBleGFtaW5lcyB0aGUgdmFsdWUgc3RyaW5nLiA8L3A+Ci08cD5JdCBpcyBhbiBhbHRlcm5hdGl2ZSB0byB0aGUgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWExYTIwYWQ1OWRjN2U4OWEwYWIyNjUzOTYzNjBkNTBmIiB0aXRsZT0iUmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGlzIGF0dHJpYnV0ZSwgY29udmVydGVkIHRvIGFuIGludGVnZXIuIj5JbnRWYWx1ZSgpPC9hPiBtZXRob2Qgd2l0aCByaWNoZXIgZXJyb3IgY2hlY2tpbmcuIElmIHRoZSB2YWx1ZSBpcyBhbiBpbnRlZ2VyLCBpdCBpcyBzdG9yZWQgaW4gJ3ZhbHVlJyBhbmQgdGhlIGNhbGwgcmV0dXJucyBUSVhNTF9TVUNDRVNTLiBJZiBpdCBpcyBub3QgYW4gaW50ZWdlciwgaXQgcmV0dXJucyBUSVhNTF9XUk9OR19UWVBFLjwvcD4KLTxwPkEgc3BlY2lhbGl6ZWQgYnV0IHVzZWZ1bCBjYWxsLiBOb3RlIHRoYXQgZm9yIHN1Y2Nlc3MgaXQgcmV0dXJucyAwLCB3aGljaCBpcyB0aGUgb3Bwb3NpdGUgb2YgYWxtb3N0IGFsbCBvdGhlciBUaW55WG1sIGNhbGxzLiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08aHIvPlRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGlzIGNsYXNzIHdhcyBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIGZpbGU6PHVsPgotPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPjwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKKzxwPgorUXVlcnlJbnRWYWx1ZSBleGFtaW5lcyB0aGUgdmFsdWUgc3RyaW5nLiAKKzxwPgorSXQgaXMgYW4gYWx0ZXJuYXRpdmUgdG8gdGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E1Ij5JbnRWYWx1ZSgpPC9hPiBtZXRob2Qgd2l0aCByaWNoZXIgZXJyb3IgY2hlY2tpbmcuIElmIHRoZSB2YWx1ZSBpcyBhbiBpbnRlZ2VyLCBpdCBpcyBzdG9yZWQgaW4gJ3ZhbHVlJyBhbmQgdGhlIGNhbGwgcmV0dXJucyBUSVhNTF9TVUNDRVNTLiBJZiBpdCBpcyBub3QgYW4gaW50ZWdlciwgaXQgcmV0dXJucyBUSVhNTF9XUk9OR19UWVBFLjxwPgorQSBzcGVjaWFsaXplZCBidXQgdXNlZnVsIGNhbGwuIE5vdGUgdGhhdCBmb3Igc3VjY2VzcyBpdCByZXR1cm5zIDAsIHdoaWNoIGlzIHRoZSBvcHBvc2l0ZSBvZiBhbG1vc3QgYWxsIG90aGVyIFRpbnlYbWwgY2FsbHMuICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGhyPlRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGlzIGNsYXNzIHdhcyBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIGZpbGU6PHVsPgorPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aC1zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPjwvdWw+Cis8aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9jbGFzc1RpWG1sQXR0cmlidXRlLnBuZyBiL2RvY3MvY2xhc3NUaVhtbEF0dHJpYnV0ZS5wbmcKaW5kZXggMGY4ZTU5My4uZWJhYzVjYSAxMDA2NDQKLS0tIGEvZG9jcy9jbGFzc1RpWG1sQXR0cmlidXRlLnBuZworKysgYi9kb2NzL2NsYXNzVGlYbWxBdHRyaWJ1dGUucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbEJhc2UtbWVtYmVycy5odG1sIGIvZG9jcy9jbGFzc1RpWG1sQmFzZS1tZW1iZXJzLmh0bWwKaW5kZXggZmUxYWViOC4uNzc4NmQ5MCAxMDA2NDQKLS0tIGEvZG9jcy9jbGFzc1RpWG1sQmFzZS1tZW1iZXJzLmh0bWwKKysrIGIvZG9jcy9jbGFzc1RpWG1sQmFzZS1tZW1iZXJzLmh0bWwKQEAgLTEsNDUgKzEsMTkgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iPgorPGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1pc28tODg1OS0xIj4KIDx0aXRsZT5UaW55WG1sOiBNZW1iZXIgTGlzdDwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLTxoMT5UaVhtbEJhc2UgTWVtYmVyIExpc3Q8L2gxPlRoaXMgaXMgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgbWVtYmVycyBmb3IgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+LCBpbmNsdWRpbmcgYWxsIGluaGVyaXRlZCBtZW1iZXJzLjx0YWJsZT4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiNTRiZmI5YjcwZmU2ZGQyNzZlN2IyNzljYWI3ZjAwMyI+Q29sdW1uPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNmJkOGMzMTVjMWFjYjA5ZTM0MTA3Yjg3MzY1MDU5NDgiPkVuY29kZVN0cmluZzwvYT4oY29uc3QgVElYTUxfU1RSSU5HICZhbXA7c3RyLCBUSVhNTF9TVFJJTkcgKm91dCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW3N0YXRpY108L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTY1NTlhNTMwY2E2NzYzZmMzMDFhMTRkNzdlZDI4YzE3Ij5HZXRVc2VyRGF0YTwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDAxMjAyMTBlNDY4MGVmMjA4ODYwMTc1M2NlMGVkZTQiPkdldFVzZXJEYXRhPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDRiMTQ3MjUzMWM2NDdhMjViMTg0MGE4N2FlNDI0MzgiPklzV2hpdGVTcGFjZUNvbmRlbnNlZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwZGU1NmIzZjJlZjE0YzY1MDkxYTNiOTE2NDM3YjUxMiI+UHJpbnQ8L2E+KEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0ID0wPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtwdXJlIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwMjRiY2ViMDcwMTg4ZGY5MmMyYThkODg1MmRkMDg1MyI+Um93PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGY3OTllYzY0NWJmYjhkOGE5NjllODM0NzhmMzc5YzEiPlNldENvbmRlbnNlV2hpdGVTcGFjZTwvYT4oYm9vbCBjb25kZW5zZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgc3RhdGljXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYzZiM2UwZjc5MDkzMGQ0OTcwZWMzMDc2NGU5MzdiNWQiPlNldFVzZXJEYXRhPC9hPih2b2lkICp1c2VyKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjI0MmMwMTU5MDE5MWY2NDQ1NjlmYTg5YTA4MGQ5N2MiPnVzZXJEYXRhPC9hPjwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbcHJvdGVjdGVkXTwvY29kZT48L3RkPjwvdHI+Ci08L3RhYmxlPjwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Cis8bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+Cis8L2hlYWQ+PGJvZHk+Cis8IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNC40IC0tPgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJpbmRleC5odG1sIj5NYWluJm5ic3A7UGFnZTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJoaWVyYXJjaHkuaHRtbCI+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPkNsYXNzJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmaWxlcy5odG1sIj5GaWxlJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+Q2xhc3MmbmJzcDtNZW1iZXJzPC9hPjwvZGl2PgorPGgxPlRpWG1sQmFzZSBNZW1iZXIgTGlzdDwvaDE+VGhpcyBpcyB0aGUgY29tcGxldGUgbGlzdCBvZiBtZW1iZXJzIGZvciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT4sIGluY2x1ZGluZyBhbGwgaW5oZXJpdGVkIG1lbWJlcnMuPHA+PHRhYmxlPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTQiPkNvbHVtbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjZTEiPklzV2hpdGVTcGFjZUNvbmRlbnNlZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EyIj5QcmludDwvYT4oRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPTA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW3B1cmUgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTMiPlJvdzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjZTAiPlNldENvbmRlbnNlV2hpdGVTcGFjZTwvYT4oYm9vbCBjb25kZW5zZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgc3RhdGljXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNwMSI+dXNlckRhdGE8L2E+PC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtwcm90ZWN0ZWRdPC9jb2RlPjwvdGQ+PC90cj4KKzwvdGFibGU+PGhyIHNpemU9IjEiPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFNhdCBPY3QgOCAxNDoxNTozMCAyMDA1IGZvciBUaW55WG1sIGJ5Jm5ic3A7CiA8YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgorPGltZyBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iIGFsaWduPSJtaWRkbGUiIGJvcmRlcj0iMCI+PC9hPiAxLjQuNCA8L3NtYWxsPjwvYWRkcmVzcz4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbEJhc2UuaHRtbCBiL2RvY3MvY2xhc3NUaVhtbEJhc2UuaHRtbAppbmRleCA0ZDFiYTY3Li4zOWMwY2QwIDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxCYXNlLmh0bWwKKysrIGIvZG9jcy9jbGFzc1RpWG1sQmFzZS5odG1sCkBAIC0xLDk5ICsxLDcwIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIj4KKzxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9aXNvLTg4NTktMSI+CiA8dGl0bGU+VGlueVhtbDogVGlYbWxCYXNlIENsYXNzIFJlZmVyZW5jZTwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLTxoMT5UaVhtbEJhc2UgQ2xhc3MgUmVmZXJlbmNlPC9oMT48IS0tIGRveHl0YWc6IGNsYXNzPSJUaVhtbEJhc2UiIC0tPgotPHA+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIiB0aXRsZT0iVGlYbWxCYXNlIGlzIGEgYmFzZSBjbGFzcyBmb3IgZXZlcnkgY2xhc3MgaW4gVGlueVhtbC4iPlRpWG1sQmFzZTwvYT4gaXMgYSBiYXNlIGNsYXNzIGZvciBldmVyeSBjbGFzcyBpbiBUaW55WG1sLiAgCi08YSBocmVmPSIjX2RldGFpbHMiPk1vcmUuLi48L2E+PC9wPgotCi08cD48Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT48L3A+Ci08ZGl2IGNsYXNzPSJkeW5oZWFkZXIiPgotSW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxCYXNlOjwvZGl2PgotPGRpdiBjbGFzcz0iZHluc2VjdGlvbiI+Ci0gPGRpdiBjbGFzcz0iY2VudGVyIj4KLSAgPGltZyBzcmM9ImNsYXNzVGlYbWxCYXNlLnBuZyIgdXNlbWFwPSIjVGlYbWxCYXNlX21hcCIgYWx0PSIiLz4KLSAgPG1hcCBpZD0iVGlYbWxCYXNlX21hcCIgbmFtZT0iVGlYbWxCYXNlX21hcCI+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIGFsdD0iVGlYbWxBdHRyaWJ1dGUiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjAsNTYsMTA4LDgwIi8+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiBhbHQ9IlRpWG1sTm9kZSIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMjk1LDU2LDQwMyw4MCIvPgotPGFyZWEgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCIgYWx0PSJUaVhtbENvbW1lbnQiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjAsMTEyLDEwOCwxMzYiLz4KLTxhcmVhIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIiBhbHQ9IlRpWG1sRGVjbGFyYXRpb24iIHNoYXBlPSJyZWN0IiBjb29yZHM9IjExOCwxMTIsMjI2LDEzNiIvPgotPGFyZWEgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiIGFsdD0iVGlYbWxEb2N1bWVudCIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMjM2LDExMiwzNDQsMTM2Ii8+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIiBhbHQ9IlRpWG1sRWxlbWVudCIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMzU0LDExMiw0NjIsMTM2Ii8+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIiBhbHQ9IlRpWG1sVGV4dCIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iNDcyLDExMiw1ODAsMTM2Ii8+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIiBhbHQ9IlRpWG1sVW5rbm93biIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iNTkwLDExMiw2OTgsMTM2Ii8+Cis8bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+Cis8L2hlYWQ+PGJvZHk+Cis8IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNC40IC0tPgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJpbmRleC5odG1sIj5NYWluJm5ic3A7UGFnZTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJoaWVyYXJjaHkuaHRtbCI+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPkNsYXNzJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmaWxlcy5odG1sIj5GaWxlJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+Q2xhc3MmbmJzcDtNZW1iZXJzPC9hPjwvZGl2PgorPGgxPlRpWG1sQmFzZSBDbGFzcyBSZWZlcmVuY2U8L2gxPjwhLS0gZG94eXRhZzogY2xhc3M9IlRpWG1sQmFzZSIgLS0+VGlYbWxCYXNlIGlzIGEgYmFzZSBjbGFzcyBmb3IgZXZlcnkgY2xhc3MgaW4gVGlueVhtbC4gIAorPGEgaHJlZj0iI19kZXRhaWxzIj5Nb3JlLi4uPC9hPgorPHA+Cis8Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoLXNvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT4KKzxwPgorPHA+SW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxCYXNlOgorPHA+PGNlbnRlcj48aW1nIHNyYz0iY2xhc3NUaVhtbEJhc2UucG5nIiB1c2VtYXA9IiNUaVhtbEJhc2VfbWFwIiBib3JkZXI9IjAiIGFsdD0iIj48L2NlbnRlcj4KKzxtYXAgbmFtZT0iVGlYbWxCYXNlX21hcCI+Cis8YXJlYSBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIGFsdD0iVGlYbWxBdHRyaWJ1dGUiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjAsNTYsMTA4LDgwIj4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIGFsdD0iVGlYbWxOb2RlIiBzaGFwZT0icmVjdCIgY29vcmRzPSIyOTUsNTYsNDAzLDgwIj4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiIGFsdD0iVGlYbWxDb21tZW50IiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDExMiwxMDgsMTM2Ij4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIiBhbHQ9IlRpWG1sRGVjbGFyYXRpb24iIHNoYXBlPSJyZWN0IiBjb29yZHM9IjExOCwxMTIsMjI2LDEzNiI+Cis8YXJlYSBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgYWx0PSJUaVhtbERvY3VtZW50IiBzaGFwZT0icmVjdCIgY29vcmRzPSIyMzYsMTEyLDM0NCwxMzYiPgorPGFyZWEgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgYWx0PSJUaVhtbEVsZW1lbnQiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjM1NCwxMTIsNDYyLDEzNiI+Cis8YXJlYSBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIiBhbHQ9IlRpWG1sVGV4dCIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iNDcyLDExMiw1ODAsMTM2Ij4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiIGFsdD0iVGlYbWxVbmtub3duIiBzaGFwZT0icmVjdCIgY29vcmRzPSI1OTAsMTEyLDY5OCwxMzYiPgogPC9tYXA+Ci0gPC9kaXY+Ci08L2Rpdj4KKzxhIGhyZWY9ImNsYXNzVGlYbWxCYXNlLW1lbWJlcnMuaHRtbCI+TGlzdCBvZiBhbGwgbWVtYmVycy48L2E+PHRhYmxlIGJvcmRlcj0iMCIgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIj4KKzx0cj48dGQ+PC90ZD48L3RyPgorPHRyPjx0ZCBjb2xzcGFuPSIyIj48YnI+PGgyPlB1YmxpYyBNZW1iZXIgRnVuY3Rpb25zPC9oMj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZpcnR1YWwgdm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTIiPlByaW50PC9hPiAoRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPTA8L3RkPjwvdHI+CiAKLTxwPjxhIGhyZWY9ImNsYXNzVGlYbWxCYXNlLW1lbWJlcnMuaHRtbCI+TGlzdCBvZiBhbGwgbWVtYmVycy48L2E+PC9wPgotPHRhYmxlIGJvcmRlcj0iMCIgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIj4KLTx0cj48dGQgY29sc3Bhbj0iMiI+PGgyPlB1YmxpYyBNZW1iZXIgRnVuY3Rpb25zPC9oMj48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+dmlydHVhbCB2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGRlNTZiM2YyZWYxNGM2NTA5MWEzYjkxNjQzN2I1MTIiPlByaW50PC9hPiAoRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPTA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5BbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbSBvciB0aGUgc3RyaW5nIGNsYXNzIChUaVhtbFN0cmluZyBpbiBub24tU1RMIG1vZGUsIHN0ZDo6c3RyaW5nIGluIFNUTCBtb2RlLiAgPGEgaHJlZj0iI2EwZGU1NmIzZjJlZjE0YzY1MDkxYTNiOTE2NDM3YjUxMiI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmludCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTAyNGJjZWIwNzAxODhkZjkyYzJhOGQ4ODUyZGQwODUzIj5Sb3c8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiB0aGUgcG9zaXRpb24sIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSwgb2YgdGhpcyBub2RlIG9yIGF0dHJpYnV0ZS4gIDxhIGhyZWY9IiNhMDI0YmNlYjA3MDE4OGRmOTJjMmE4ZDg4NTJkZDA4NTMiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWI1NGJmYjliNzBmZTZkZDI3NmU3YjI3OWNhYjdmMDAzIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQmFzZTo6Q29sdW1uIiByZWY9ImFiNTRiZmI5YjcwZmU2ZGQyNzZlN2IyNzljYWI3ZjAwMyIgYXJncz0iKCkgY29uc3QgIiAtLT4KLWludCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWI1NGJmYjliNzBmZTZkZDI3NmU3YjI3OWNhYjdmMDAzIj5Db2x1bW48L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNlZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTAyNGJjZWIwNzAxODhkZjkyYzJhOGQ4ODUyZGQwODUzIiB0aXRsZT0iUmV0dXJuIHRoZSBwb3NpdGlvbiwgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlLCBvZiB0aGlzIG5vZGUgb3IgYXR0cmlidXRlLiI+Um93KCk8L2E+LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWM2YjNlMGY3OTA5MzBkNDk3MGVjMzA3NjRlOTM3YjVkIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQmFzZTo6U2V0VXNlckRhdGEiIHJlZj0iYWM2YjNlMGY3OTA5MzBkNDk3MGVjMzA3NjRlOTM3YjVkIiBhcmdzPSIodm9pZCAqdXNlcikiIC0tPgotdm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWM2YjNlMGY3OTA5MzBkNDk3MGVjMzA3NjRlOTM3YjVkIj5TZXRVc2VyRGF0YTwvYT4gKHZvaWQgKnVzZXIpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U2V0IGEgcG9pbnRlciB0byBhcmJpdHJhcnkgdXNlciBkYXRhLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTY1NTlhNTMwY2E2NzYzZmMzMDFhMTRkNzdlZDI4YzE3Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQmFzZTo6R2V0VXNlckRhdGEiIHJlZj0iYTY1NTlhNTMwY2E2NzYzZmMzMDFhMTRkNzdlZDI4YzE3IiBhcmdzPSIoKSIgLS0+Ci12b2lkICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E2NTU5YTUzMGNhNjc2M2ZjMzAxYTE0ZDc3ZWQyOGMxNyI+R2V0VXNlckRhdGE8L2E+ICgpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+R2V0IGEgcG9pbnRlciB0byBhcmJpdHJhcnkgdXNlciBkYXRhLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWQwMTIwMjEwZTQ2ODBlZjIwODg2MDE3NTNjZTBlZGU0Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQmFzZTo6R2V0VXNlckRhdGEiIHJlZj0iYWQwMTIwMjEwZTQ2ODBlZjIwODg2MDE3NTNjZTBlZGU0IiBhcmdzPSIoKSBjb25zdCAiIC0tPgotY29uc3Qgdm9pZCAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDAxMjAyMTBlNDY4MGVmMjA4ODYwMTc1M2NlMGVkZTQiPkdldFVzZXJEYXRhPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5HZXQgYSBwb2ludGVyIHRvIGFyYml0cmFyeSB1c2VyIGRhdGEuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjb2xzcGFuPSIyIj48aDI+U3RhdGljIFB1YmxpYyBNZW1iZXIgRnVuY3Rpb25zPC9oMj48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+c3RhdGljIHZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwZjc5OWVjNjQ1YmZiOGQ4YTk2OWU4MzQ3OGYzNzljMSI+U2V0Q29uZGVuc2VXaGl0ZVNwYWNlPC9hPiAoYm9vbCBjb25kZW5zZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5UaGUgd29ybGQgZG9lcyBub3QgYWdyZWUgb24gd2hldGhlciB3aGl0ZSBzcGFjZSBzaG91bGQgYmUga2VwdCBvciBub3QuICA8YSBocmVmPSIjYTBmNzk5ZWM2NDViZmI4ZDhhOTY5ZTgzNDc4ZjM3OWMxIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFkNGIxNDcyNTMxYzY0N2EyNWIxODQwYTg3YWU0MjQzOCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEJhc2U6OklzV2hpdGVTcGFjZUNvbmRlbnNlZCIgcmVmPSJhZDRiMTQ3MjUzMWM2NDdhMjViMTg0MGE4N2FlNDI0MzgiIGFyZ3M9IigpIiAtLT4KLXN0YXRpYyBib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDRiMTQ3MjUzMWM2NDdhMjViMTg0MGE4N2FlNDI0MzgiPklzV2hpdGVTcGFjZUNvbmRlbnNlZDwvYT4gKCk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gdGhlIGN1cnJlbnQgd2hpdGUgc3BhY2Ugc2V0dGluZy4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+c3RhdGljIHZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E2YmQ4YzMxNWMxYWNiMDllMzQxMDdiODczNjUwNTk0OCI+RW5jb2RlU3RyaW5nPC9hPiAoY29uc3QgVElYTUxfU1RSSU5HICZhbXA7c3RyLCBUSVhNTF9TVFJJTkcgKm91dCk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5FeHBhbmRzIGVudGl0aWVzIGluIGEgc3RyaW5nLiAgPGEgaHJlZj0iI2E2YmQ4YzMxNWMxYWNiMDllMzQxMDdiODczNjUwNTk0OCI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjb2xzcGFuPSIyIj48aDI+UHJvdGVjdGVkIEF0dHJpYnV0ZXM8L2gyPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWIyNDJjMDE1OTAxOTFmNjQ0NTY5ZmE4OWEwODBkOTdjIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQmFzZTo6dXNlckRhdGEiIHJlZj0iYWIyNDJjMDE1OTAxOTFmNjQ0NTY5ZmE4OWEwODBkOTdjIiBhcmdzPSIiIC0tPgotdm9pZCAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjI0MmMwMTU5MDE5MWY2NDQ1NjlmYTg5YTA4MGQ5N2MiPnVzZXJEYXRhPC9hPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkZpZWxkIGNvbnRhaW5pbmcgYSBnZW5lcmljIHVzZXIgcG9pbnRlci4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNvbHNwYW49IjIiPjxoMj5GcmllbmRzPC9oMj48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEyMTg4NzJhMGQ5ODVhZTMwZTc4YzU1YWRjNGJkYjE5NiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEJhc2U6OlRpWG1sTm9kZSIgcmVmPSJhMjE4ODcyYTBkOTg1YWUzMGU3OGM1NWFkYzRiZGIxOTYiIGFyZ3M9IiIgLS0+Ci1jbGFzcyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTIxODg3MmEwZDk4NWFlMzBlNzhjNTVhZGM0YmRiMTk2Ij5UaVhtbE5vZGU8L2E+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhYjY1OTJlMzJjYjkxMzJiZTUxN2NjMTJhNzA1NjRjNGIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxCYXNlOjpUaVhtbEVsZW1lbnQiIHJlZj0iYWI2NTkyZTMyY2I5MTMyYmU1MTdjYzEyYTcwNTY0YzRiIiBhcmdzPSIiIC0tPgotY2xhc3MmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiNjU5MmUzMmNiOTEzMmJlNTE3Y2MxMmE3MDU2NGM0YiI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTE3MzYxN2Y2ZGZlOTAyY2Y0ODRjZTU1NTJiOTUwNDc1Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQmFzZTo6VGlYbWxEb2N1bWVudCIgcmVmPSJhMTczNjE3ZjZkZmU5MDJjZjQ4NGNlNTU1MmI5NTA0NzUiIGFyZ3M9IiIgLS0+Ci1jbGFzcyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTE3MzYxN2Y2ZGZlOTAyY2Y0ODRjZTU1NTJiOTUwNDc1Ij5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkFsbCBUaW55WG1sIGNsYXNzZXMgY2FuIHByaW50IHRoZW1zZWx2ZXMgdG8gYSBmaWxlc3RyZWFtLiAgPGEgaHJlZj0iI2EyIj48L2E+PGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+aW50Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMyI+Um93PC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiB0aGUgcG9zaXRpb24sIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSwgb2YgdGhpcyBub2RlIG9yIGF0dHJpYnV0ZS4gIDxhIGhyZWY9IiNhMyI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE0Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQmFzZTo6Q29sdW1uIiByZWY9ImE0IiBhcmdzPSIoKSBjb25zdCAiIC0tPgoraW50Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNCI+Q29sdW1uPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNlZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTMiPlJvdygpPC9hPi4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY29sc3Bhbj0iMiI+PGJyPjxoMj5TdGF0aWMgUHVibGljIE1lbWJlciBGdW5jdGlvbnM8L2gyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+c3RhdGljIHZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2UwIj5TZXRDb25kZW5zZVdoaXRlU3BhY2U8L2E+IChib29sIGNvbmRlbnNlKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+VGhlIHdvcmxkIGRvZXMgbm90IGFncmVlIG9uIHdoZXRoZXIgd2hpdGUgc3BhY2Ugc2hvdWxkIGJlIGtlcHQgb3Igbm90LiAgPGEgaHJlZj0iI2UwIj48L2E+PGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iZTEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxCYXNlOjpJc1doaXRlU3BhY2VDb25kZW5zZWQiIHJlZj0iZTEiIGFyZ3M9IigpIiAtLT4KK3N0YXRpYyBib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNlMSI+SXNXaGl0ZVNwYWNlQ29uZGVuc2VkPC9hPiAoKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIHRoZSBjdXJyZW50IHdoaXRlIHNwYWNlIHNldHRpbmcuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNvbHNwYW49IjIiPjxicj48aDI+UHJvdGVjdGVkIEF0dHJpYnV0ZXM8L2gyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0icDEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxCYXNlOjp1c2VyRGF0YSIgcmVmPSJwMSIgYXJncz0iIiAtLT4KK3ZvaWQgKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjcDEiPnVzZXJEYXRhPC9hPjwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+RmllbGQgY29udGFpbmluZyBhIGdlbmVyaWMgdXNlciBwb2ludGVyLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjb2xzcGFuPSIyIj48YnI+PGgyPkZyaWVuZHM8L2gyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0ibjAiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxCYXNlOjpUaVhtbE5vZGUiIHJlZj0ibjAiIGFyZ3M9IiIgLS0+CitjbGFzcyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjbjAiPlRpWG1sTm9kZTwvYT48L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0ibjEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxCYXNlOjpUaVhtbEVsZW1lbnQiIHJlZj0ibjEiIGFyZ3M9IiIgLS0+CitjbGFzcyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjbjEiPlRpWG1sRWxlbWVudDwvYT48L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0ibjIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxCYXNlOjpUaVhtbERvY3VtZW50IiByZWY9Im4yIiBhcmdzPSIiIC0tPgorY2xhc3MmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI24yIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PC90cj4KKwogPC90YWJsZT4KLTxoci8+PGEgbmFtZT0iX2RldGFpbHMiPjwvYT48aDI+RGV0YWlsZWQgRGVzY3JpcHRpb248L2gyPgotPHA+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIiB0aXRsZT0iVGlYbWxCYXNlIGlzIGEgYmFzZSBjbGFzcyBmb3IgZXZlcnkgY2xhc3MgaW4gVGlueVhtbC4iPlRpWG1sQmFzZTwvYT4gaXMgYSBiYXNlIGNsYXNzIGZvciBldmVyeSBjbGFzcyBpbiBUaW55WG1sLiA8L3A+Ci08cD5JdCBkb2VzIGxpdHRsZSBleGNlcHQgdG8gZXN0YWJsaXNoIHRoYXQgVGlueVhtbCBjbGFzc2VzIGNhbiBiZSBwcmludGVkIGFuZCBwcm92aWRlIHNvbWUgdXRpbGl0eSBmdW5jdGlvbnMuPC9wPgotPHA+SW4gWE1MLCB0aGUgZG9jdW1lbnQgYW5kIGVsZW1lbnRzIGNhbiBjb250YWluIG90aGVyIGVsZW1lbnRzIGFuZCBvdGhlciB0eXBlcyBvZiBub2Rlcy48L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotCUEgRG9jdW1lbnQgY2FuIGNvbnRhaW46CUVsZW1lbnQJKGNvbnRhaW5lciBvciBsZWFmKQorPGhyPjxhIG5hbWU9Il9kZXRhaWxzIj48L2E+PGgyPkRldGFpbGVkIERlc2NyaXB0aW9uPC9oMj4KK1RpWG1sQmFzZSBpcyBhIGJhc2UgY2xhc3MgZm9yIGV2ZXJ5IGNsYXNzIGluIFRpbnlYbWwuIAorPHA+CitJdCBkb2VzIGxpdHRsZSBleGNlcHQgdG8gZXN0YWJsaXNoIHRoYXQgVGlueVhtbCBjbGFzc2VzIGNhbiBiZSBwcmludGVkIGFuZCBwcm92aWRlIHNvbWUgdXRpbGl0eSBmdW5jdGlvbnMuPHA+CitJbiBYTUwsIHRoZSBkb2N1bWVudCBhbmQgZWxlbWVudHMgY2FuIGNvbnRhaW4gb3RoZXIgZWxlbWVudHMgYW5kIG90aGVyIHR5cGVzIG9mIG5vZGVzLjxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JQSBEb2N1bWVudCBjYW4gY29udGFpbjoJRWxlbWVudAkoY29udGFpbmVyIG9yIGxlYWYpCiAJCQkJCQkJQ29tbWVudCAobGVhZikKIAkJCQkJCQlVbmtub3duIChsZWFmKQogCQkJCQkJCURlY2xhcmF0aW9uKCBsZWFmICkKQEAgLTEwNSwxMjIgKzc2LDExOSBAQAogCQkJCQkJCVVua25vd24gKGxlYWYpCiAKIAlBIERlY2xlcmF0aW9uIGNvbnRhaW5zOiBBdHRyaWJ1dGVzIChub3Qgb24gdHJlZSkKLQk8L3ByZT48L2Rpdj4gPGhyLz48aDI+TWVtYmVyIEZ1bmN0aW9uIERvY3VtZW50YXRpb248L2gyPgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE2YmQ4YzMxNWMxYWNiMDllMzQxMDdiODczNjUwNTk0OCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEJhc2U6OkVuY29kZVN0cmluZyIgcmVmPSJhNmJkOGMzMTVjMWFjYjA5ZTM0MTA3Yjg3MzY1MDU5NDgiIGFyZ3M9Iihjb25zdCBUSVhNTF9TVFJJTkcgJmFtcDtzdHIsIFRJWE1MX1NUUklORyAqb3V0KSIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+CisJPC9wcmU+PC9kaXY+Cis8cD4KKzxocj48aDI+TWVtYmVyIEZ1bmN0aW9uIERvY3VtZW50YXRpb248L2gyPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxCYXNlOjpQcmludCIgcmVmPSJhMiIgYXJncz0iKEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0ID0wIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+c3RhdGljIHZvaWQgVGlYbWxCYXNlOjpFbmNvZGVTdHJpbmcgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmNvbnN0IFRJWE1MX1NUUklORyAmYW1wOyZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+c3RyPC9lbT4sIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj52aXJ0dWFsIHZvaWQgVGlYbWxCYXNlOjpQcmludCAgICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+KCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5GSUxFICombmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lIiBub3dyYXA+IDxlbT5jZmlsZTwvZW0+LCA8L3RkPgogICAgICAgICA8L3RyPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbWtleSI+PC90ZD4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+VElYTUxfU1RSSU5HICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPm91dDwvZW0+PC90ZD48dGQ+Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgYWxpZ249InJpZ2h0Ij48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPmludCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPmRlcHRoPC9lbT48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkPik8L3RkPgotICAgICAgICAgIDx0ZD48L3RkPjx0ZD48L3RkPjx0ZD48Y29kZT4gW3N0YXRpY108L2NvZGU+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPikmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIGNvbHNwYW49IjIiPiBjb25zdDxjb2RlPiBbcHVyZSB2aXJ0dWFsXTwvY29kZT48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+RXhwYW5kcyBlbnRpdGllcyBpbiBhIHN0cmluZy4gPC9wPgotPHA+Tm90ZSB0aGlzIHNob3VsZCBub3QgY29udGlhbiB0aGUgdGFnJ3MgJyZsdDsnLCAnJmd0OycsIGV0Yywgb3IgdGhleSB3aWxsIGJlIHRyYW5zZm9ybWVkIGludG8gZW50aXRpZXMhIDwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMGRlNTZiM2YyZWYxNGM2NTA5MWEzYjkxNjQzN2I1MTIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxCYXNlOjpQcmludCIgcmVmPSJhMGRlNTZiM2YyZWYxNGM2NTA5MWEzYjkxNjQzN2I1MTIiIGFyZ3M9IihGSUxFICpjZmlsZSwgaW50IGRlcHRoKSBjb25zdCA9MCIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8cD4KK0FsbCBUaW55WG1sIGNsYXNzZXMgY2FuIHByaW50IHRoZW1zZWx2ZXMgdG8gYSBmaWxlc3RyZWFtLiAKKzxwPgorVGhpcyBpcyBhIGZvcm1hdHRlZCBwcmludCwgYW5kIHdpbGwgaW5zZXJ0IHRhYnMgYW5kIG5ld2xpbmVzLjxwPgorKEZvciBhbiB1bmZvcm1hdHRlZCBzdHJlYW0sIHVzZSB0aGUgJmx0OyZsdDsgb3BlcmF0b3IuKQorPHA+CitJbXBsZW1lbnRlZCBpbiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMjMiPlRpWG1sQXR0cmlidXRlPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyOSI+VGlYbWxFbGVtZW50PC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2E1Ij5UaVhtbENvbW1lbnQ8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTUiPlRpWG1sVGV4dDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTEwIj5UaVhtbERlY2xhcmF0aW9uPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2E1Ij5UaVhtbFVua25vd248L2E+LCBhbmQgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMjQiPlRpWG1sRG9jdW1lbnQ8L2E+LiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEzIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQmFzZTo6Um93IiByZWY9ImEzIiBhcmdzPSIoKSBjb25zdCAiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj52aXJ0dWFsIHZvaWQgVGlYbWxCYXNlOjpQcmludCA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+RklMRSAqJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5jZmlsZTwvZW0+LCA8L3RkPgotICAgICAgICA8L3RyPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbWtleSI+PC90ZD4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+aW50Jm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5kZXB0aDwvZW0+PC90ZD48dGQ+Jm5ic3A7PC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZD4pPC90ZD4KLSAgICAgICAgICA8dGQ+PC90ZD48dGQ+PC90ZD48dGQ+IGNvbnN0PGNvZGU+IFtwdXJlIHZpcnR1YWxdPC9jb2RlPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5pbnQgVGlYbWxCYXNlOjpSb3cgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lMSIgdmFsaWduPSJ0b3AiIG5vd3JhcD4gICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+Jm5ic3A7KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPiBjb25zdDxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+QWxsIFRpbnlYbWwgY2xhc3NlcyBjYW4gcHJpbnQgdGhlbXNlbHZlcyB0byBhIGZpbGVzdHJlYW0gb3IgdGhlIHN0cmluZyBjbGFzcyAoVGlYbWxTdHJpbmcgaW4gbm9uLVNUTCBtb2RlLCBzdGQ6OnN0cmluZyBpbiBTVEwgbW9kZS4gPC9wPgotPHA+KSBFaXRoZXIgb3IgYm90aCBjZmlsZSBhbmQgc3RyIGNhbiBiZSBudWxsLjwvcD4KLTxwPlRoaXMgaXMgYSBmb3JtYXR0ZWQgcHJpbnQsIGFuZCB3aWxsIGluc2VydCB0YWJzIGFuZCBuZXdsaW5lcy48L3A+Ci08cD4oRm9yIGFuIHVuZm9ybWF0dGVkIHN0cmVhbSwgdXNlIHRoZSAmbHQ7Jmx0OyBvcGVyYXRvci4pIDwvcD4KLQotPHA+SW1wbGVtZW50ZWQgaW4gPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWNjMDQ5NTZjMWQ1YzRjMzFmZTc0ZjdhNzUyOGQxMDlhIj5UaVhtbEF0dHJpYnV0ZTwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZmJmNTI3MzZlNzBmYzkxZWM5ZDc2MDcyMWQ2ZjRmZDIiPlRpWG1sRWxlbWVudDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhNmIzMTY1MjdhYWE4ZGEwMzcwY2Q2OGMyMmE1YTBmNWYiPlRpWG1sQ29tbWVudDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhMGNhZmJmNmYyMzZjN2YwMmQxMmIyYmZmYzJiNzk3NmIiPlRpWG1sVGV4dDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYWJmNjMwM2RiNGJkMDViNWJlNTU0MDM2ODE3ZmYxY2I0Ij5UaVhtbERlY2xhcmF0aW9uPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2EzMWJhMDg5YTQwZmI1YTE4Njk3NTBmY2UwOWIwYmFjYiI+VGlYbWxVbmtub3duPC9hPiwgYW5kIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTg3MDFmZGExZmEzMWIyNWFiYmM5YzBkZjQyZGExMGU4Ij5UaVhtbERvY3VtZW50PC9hPi48L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTAyNGJjZWIwNzAxODhkZjkyYzJhOGQ4ODUyZGQwODUzIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQmFzZTo6Um93IiByZWY9ImEwMjRiY2ViMDcwMTg4ZGY5MmMyYThkODg1MmRkMDg1MyIgYXJncz0iKCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorUmV0dXJuIHRoZSBwb3NpdGlvbiwgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlLCBvZiB0aGlzIG5vZGUgb3IgYXR0cmlidXRlLiAKKzxwPgorVGhlIHJvdyBhbmQgY29sdW1uIGFyZSAxLWJhc2VkLiAoVGhhdCBpcyB0aGUgZmlyc3Qgcm93IGFuZCBmaXJzdCBjb2x1bW4gaXMgMSwxKS4gSWYgdGhlIHJldHVybnMgdmFsdWVzIGFyZSAwIG9yIGxlc3MsIHRoZW4gdGhlIHBhcnNlciBkb2VzIG5vdCBoYXZlIGEgcm93IGFuZCBjb2x1bW4gdmFsdWUuPHA+CitHZW5lcmFsbHksIHRoZSByb3cgYW5kIGNvbHVtbiB2YWx1ZSB3aWxsIGJlIHNldCB3aGVuIHRoZSBUaVhtbERvY3VtZW50OjpMb2FkKCksIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTYiPlRpWG1sRG9jdW1lbnQ6OkxvYWRGaWxlKCk8L2E+LCBvciBhbnkgVGlYbWxOb2RlOjpQYXJzZSgpIGlzIGNhbGxlZC4gSXQgd2lsbCBOT1QgYmUgc2V0IHdoZW4gdGhlIERPTSB3YXMgY3JlYXRlZCBmcm9tIG9wZXJhdG9yJmd0OyZndDsuPHA+CitUaGUgdmFsdWVzIHJlZmxlY3QgdGhlIGluaXRpYWwgbG9hZC4gT25jZSB0aGUgRE9NIGlzIG1vZGlmaWVkIHByb2dyYW1tYXRpY2FsbHkgKGJ5IGFkZGluZyBvciBjaGFuZ2luZyBub2RlcyBhbmQgYXR0cmlidXRlcykgdGhlIG5ldyB2YWx1ZXMgd2lsbCBOT1QgdXBkYXRlIHRvIHJlZmxlY3QgY2hhbmdlcyBpbiB0aGUgZG9jdW1lbnQuPHA+CitUaGVyZSBpcyBhIG1pbm9yIHBlcmZvcm1hbmNlIGNvc3QgdG8gY29tcHV0aW5nIHRoZSByb3cgYW5kIGNvbHVtbi4gQ29tcHV0YXRpb24gY2FuIGJlIGRpc2FibGVkIGlmIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTIwIj5UaVhtbERvY3VtZW50OjpTZXRUYWJTaXplKCk8L2E+IGlzIGNhbGxlZCB3aXRoIDAgYXMgdGhlIHZhbHVlLjxwPgorPGRsIGNvbXBhY3Q+PGR0PjxiPlNlZSBhbHNvOjwvYj48L2R0PjxkZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMCI+VGlYbWxEb2N1bWVudDo6U2V0VGFiU2l6ZSgpPC9hPjwvZGQ+PC9kbD4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImUwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQmFzZTo6U2V0Q29uZGVuc2VXaGl0ZVNwYWNlIiByZWY9ImUwIiBhcmdzPSIoYm9vbCBjb25kZW5zZSkiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj5pbnQgVGlYbWxCYXNlOjpSb3cgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD4gY29uc3Q8Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPnN0YXRpYyB2b2lkIFRpWG1sQmFzZTo6U2V0Q29uZGVuc2VXaGl0ZVNwYWNlICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmJvb2wmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lMSIgdmFsaWduPSJ0b3AiIG5vd3JhcD4gPGVtPmNvbmRlbnNlPC9lbT4gICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+Jm5ic3A7KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5SZXR1cm4gdGhlIHBvc2l0aW9uLCBpbiB0aGUgb3JpZ2luYWwgc291cmNlIGZpbGUsIG9mIHRoaXMgbm9kZSBvciBhdHRyaWJ1dGUuIDwvcD4KLTxwPlRoZSByb3cgYW5kIGNvbHVtbiBhcmUgMS1iYXNlZC4gKFRoYXQgaXMgdGhlIGZpcnN0IHJvdyBhbmQgZmlyc3QgY29sdW1uIGlzIDEsMSkuIElmIHRoZSByZXR1cm5zIHZhbHVlcyBhcmUgMCBvciBsZXNzLCB0aGVuIHRoZSBwYXJzZXIgZG9lcyBub3QgaGF2ZSBhIHJvdyBhbmQgY29sdW1uIHZhbHVlLjwvcD4KLTxwPkdlbmVyYWxseSwgdGhlIHJvdyBhbmQgY29sdW1uIHZhbHVlIHdpbGwgYmUgc2V0IHdoZW4gdGhlIFRpWG1sRG9jdW1lbnQ6OkxvYWQoKSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNGM4NTJhODg5YzAyY2YyNTExMTdmZDFkOWZlMTg0NWYiIHRpdGxlPSJMb2FkIGEgZmlsZSB1c2luZyB0aGUgY3VycmVudCBkb2N1bWVudCB2YWx1ZS4iPlRpWG1sRG9jdW1lbnQ6OkxvYWRGaWxlKCk8L2E+LCBvciBhbnkgVGlYbWxOb2RlOjpQYXJzZSgpIGlzIGNhbGxlZC4gSXQgd2lsbCBOT1QgYmUgc2V0IHdoZW4gdGhlIERPTSB3YXMgY3JlYXRlZCBmcm9tIG9wZXJhdG9yJmd0OyZndDsuPC9wPgotPHA+VGhlIHZhbHVlcyByZWZsZWN0IHRoZSBpbml0aWFsIGxvYWQuIE9uY2UgdGhlIERPTSBpcyBtb2RpZmllZCBwcm9ncmFtbWF0aWNhbGx5IChieSBhZGRpbmcgb3IgY2hhbmdpbmcgbm9kZXMgYW5kIGF0dHJpYnV0ZXMpIHRoZSBuZXcgdmFsdWVzIHdpbGwgTk9UIHVwZGF0ZSB0byByZWZsZWN0IGNoYW5nZXMgaW4gdGhlIGRvY3VtZW50LjwvcD4KLTxwPlRoZXJlIGlzIGEgbWlub3IgcGVyZm9ybWFuY2UgY29zdCB0byBjb21wdXRpbmcgdGhlIHJvdyBhbmQgY29sdW1uLiBDb21wdXRhdGlvbiBjYW4gYmUgZGlzYWJsZWQgaWYgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNTFkYWM1NjMxNmY4OWIzNWJkYjdkMGQ0MzNiYTk4OGUiIHRpdGxlPSJTZXRUYWJTaXplKCkgYWxsb3dzIHRoZSBlcnJvciByZXBvcnRpbmcgZnVuY3Rpb25zIChFcnJvclJvdygpIGFuZCBFcnJvckNvbCgpKSB0by4uLiI+VGlYbWxEb2N1bWVudDo6U2V0VGFiU2l6ZSgpPC9hPiBpcyBjYWxsZWQgd2l0aCAwIGFzIHRoZSB2YWx1ZS48L3A+Ci08ZGwgY2xhc3M9InNlZSI+PGR0PjxiPlNlZSBhbHNvOjwvYj48L2R0PjxkZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E1MWRhYzU2MzE2Zjg5YjM1YmRiN2QwZDQzM2JhOTg4ZSIgdGl0bGU9IlNldFRhYlNpemUoKSBhbGxvd3MgdGhlIGVycm9yIHJlcG9ydGluZyBmdW5jdGlvbnMgKEVycm9yUm93KCkgYW5kIEVycm9yQ29sKCkpIHRvLi4uIj5UaVhtbERvY3VtZW50OjpTZXRUYWJTaXplKCk8L2E+IDwvZGQ+PC9kbD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMGY3OTllYzY0NWJmYjhkOGE5NjllODM0NzhmMzc5YzEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxCYXNlOjpTZXRDb25kZW5zZVdoaXRlU3BhY2UiIHJlZj0iYTBmNzk5ZWM2NDViZmI4ZDhhOTY5ZTgzNDc4ZjM3OWMxIiBhcmdzPSIoYm9vbCBjb25kZW5zZSkiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj5zdGF0aWMgdm9pZCBUaVhtbEJhc2U6OlNldENvbmRlbnNlV2hpdGVTcGFjZSA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+Ym9vbCZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+Y29uZGVuc2U8L2VtPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD48Y29kZT4gW2lubGluZSwgc3RhdGljXTwvY29kZT48L3RkPgotICAgICAgICA8L3RyPgotICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KLQotPHA+VGhlIHdvcmxkIGRvZXMgbm90IGFncmVlIG9uIHdoZXRoZXIgd2hpdGUgc3BhY2Ugc2hvdWxkIGJlIGtlcHQgb3Igbm90LiA8L3A+Ci08cD5JbiBvcmRlciB0byBtYWtlIGV2ZXJ5b25lIGhhcHB5LCB0aGVzZSBnbG9iYWwsIHN0YXRpYyBmdW5jdGlvbnMgYXJlIHByb3ZpZGVkIHRvIHNldCB3aGV0aGVyIG9yIG5vdCBUaW55WG1sIHdpbGwgY29uZGVuc2UgYWxsIHdoaXRlIHNwYWNlIGludG8gYSBzaW5nbGUgc3BhY2Ugb3Igbm90LiBUaGUgZGVmYXVsdCBpcyB0byBjb25kZW5zZS4gTm90ZSBjaGFuZ2luZyB0aGlzIHZhbHVlIGlzIG5vdCB0aHJlYWQgc2FmZS4gPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGhyLz5UaGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhpcyBjbGFzcyB3YXMgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBmaWxlOjx1bD4KLTxsaT48YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGhfc291cmNlLmh0bWwiPnRpbnl4bWwuaDwvYT48L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Cis8cD4KK1RoZSB3b3JsZCBkb2VzIG5vdCBhZ3JlZSBvbiB3aGV0aGVyIHdoaXRlIHNwYWNlIHNob3VsZCBiZSBrZXB0IG9yIG5vdC4gCis8cD4KK0luIG9yZGVyIHRvIG1ha2UgZXZlcnlvbmUgaGFwcHksIHRoZXNlIGdsb2JhbCwgc3RhdGljIGZ1bmN0aW9ucyBhcmUgcHJvdmlkZWQgdG8gc2V0IHdoZXRoZXIgb3Igbm90IFRpbnlYbWwgd2lsbCBjb25kZW5zZSBhbGwgd2hpdGUgc3BhY2UgaW50byBhIHNpbmdsZSBzcGFjZSBvciBub3QuIFRoZSBkZWZhdWx0IGlzIHRvIGNvbmRlbnNlLiBOb3RlIGNoYW5naW5nIHRoaXMgdmFsdWVzIGlzIG5vdCB0aHJlYWQgc2FmZS4gICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8aHI+VGhlIGRvY3VtZW50YXRpb24gZm9yIHRoaXMgY2xhc3Mgd2FzIGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgZmlsZTo8dWw+Cis8bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoLXNvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+PC91bD4KKzxociBzaXplPSIxIj48YWRkcmVzcyBzdHlsZT0iYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBvbiBTYXQgT2N0IDggMTQ6MTU6MzAgMjAwNSBmb3IgVGlueVhtbCBieSZuYnNwOwogPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KKzxpbWcgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIiBhbGlnbj0ibWlkZGxlIiBib3JkZXI9IjAiPjwvYT4gMS40LjQgPC9zbWFsbD48L2FkZHJlc3M+CiA8L2JvZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2NsYXNzVGlYbWxCYXNlLnBuZyBiL2RvY3MvY2xhc3NUaVhtbEJhc2UucG5nCmluZGV4IGNhOWQwZGUuLjA4NWRiNmUgMTAwNjQ0Ci0tLSBhL2RvY3MvY2xhc3NUaVhtbEJhc2UucG5nCisrKyBiL2RvY3MvY2xhc3NUaVhtbEJhc2UucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbENvbW1lbnQtbWVtYmVycy5odG1sIGIvZG9jcy9jbGFzc1RpWG1sQ29tbWVudC1tZW1iZXJzLmh0bWwKaW5kZXggMGQwMDcwNC4uZjcwNDdiMiAxMDA2NDQKLS0tIGEvZG9jcy9jbGFzc1RpWG1sQ29tbWVudC1tZW1iZXJzLmh0bWwKKysrIGIvZG9jcy9jbGFzc1RpWG1sQ29tbWVudC1tZW1iZXJzLmh0bWwKQEAgLTEsMTA5ICsxLDgxIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIj4KKzxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9aXNvLTg4NTktMSI+CiA8dGl0bGU+VGlueVhtbDogTWVtYmVyIExpc3Q8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci08aDE+VGlYbWxDb21tZW50IE1lbWJlciBMaXN0PC9oMT5UaGlzIGlzIHRoZSBjb21wbGV0ZSBsaXN0IG9mIG1lbWJlcnMgZm9yIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCI+VGlYbWxDb21tZW50PC9hPiwgaW5jbHVkaW5nIGFsbCBpbmhlcml0ZWQgbWVtYmVycy48dGFibGU+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhZjNhYzFiOTlmYmJlOWVhNGZiNmUxNDE0NjE1NmU0M2UiPkFjY2VwdDwvYT4oVGlYbWxWaXNpdG9yICp2aXNpdG9yKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MDhlN2Y5NTNkZjYxZDRkMmQxMmY3MzE3MTU1MGE0YiI+Q2xlYXI8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhMGQ2NjYyYmRjNTI0ODhiOWUxMmIzYzdhMDQ1M2QwMjgiPkNsb25lPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCI+VGlYbWxDb21tZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWI1NGJmYjliNzBmZTZkZDI3NmU3YjI3OWNhYjdmMDAzIj5Db2x1bW48L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E2YmQ4YzMxNWMxYWNiMDllMzQxMDdiODczNjUwNTk0OCI+RW5jb2RlU3RyaW5nPC9hPihjb25zdCBUSVhNTF9TVFJJTkcgJmFtcDtzdHIsIFRJWE1MX1NUUklORyAqb3V0KTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbc3RhdGljXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDRjOGVlZTI2YmJlMmQxYjI3NjIwMzhkZjlkZGUyZjAiPkZpcnN0Q2hpbGQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExZjA1ODI4ZDAyMzE1MDcwNmVlYjE2ZDZmYjNmNjM1NSI+Rmlyc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiYzhiZjMyYmU2NDE5ZWM0NTNhNzMxODY4ZGUxOTU1NCI+Rmlyc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDdmNjIwMGE1OTU2YzcyM2M1YjUyZDcwZjI5YzQ2ZjYiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEwZDI2NjljY2I1ZTI5ZTAyZmNiMGU0NDA4Njg1ZWY2Ij5GaXJzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWY0ZmI2NTJmNmJkNzlhZTBkNWNlN2QwZjdkM2MwZmJhIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhY2NkYTJjNmI0NWMyNWJiNWE2ZjljMzQwN2E2NDRlNjEiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBjaGFyICpfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMjdhZDRiYmQ5MDA3M2M1ZGZjOTMxYjA3MzE0ZjVmNyI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTdmMWQ3MjkxODgwNTM0YzFlNWNkZWIzOTJkOGMxZjQ1Ij5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4MGUzOTdmYTk3M2NmNTMyM2UzM2IwNzE1NGIwMjRmMyI+R2V0RG9jdW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTY1NTlhNTMwY2E2NzYzZmMzMDFhMTRkNzdlZDI4YzE3Ij5HZXRVc2VyRGF0YTwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDAxMjAyMTBlNDY4MGVmMjA4ODYwMTc1M2NlMGVkZTQiPkdldFVzZXJEYXRhPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZDliNzVlNTRlYzE5MzAxYzhiNGQ1ZmY1ODNkMGIzZDUiPkluc2VydEFmdGVyQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqYWZ0ZXJUaGlzLCBjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwYzE0NmZhMmZmZjAxNTdiNjgxNTk0MTAyZjQ4Y2JjNyI+SW5zZXJ0QmVmb3JlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqYmVmb3JlVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZDdkNDYzMGUxYTJhOTE2ZWRkYTE2YmUyMjQ0OGE4YmEiPkluc2VydEVuZENoaWxkPC9hPihjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FkNGIxNDcyNTMxYzY0N2EyNWIxODQwYTg3YWU0MjQzOCI+SXNXaGl0ZVNwYWNlQ29uZGVuc2VkPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTg2MjExOTZiYTM3MDVmYTIyNmJlZjRhNzYxY2M1MWI2Ij5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FkZmFlZjM1YTA3NmI5MzQzYWRjMTQyMDc1NzM3NmMzOSI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBjaGFyICp2YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTFjYmFhZjhlODJjMDlhZDc2M2Q1MjYxNmQ3NTcyNGRmIj5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE2ZTlhZDUzZTJmNTQ0NWIxNGJmMzI1YzkwYWE4NjJjIj5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjQzMmQyYjI0OTVmNmNhZjljYjQyNzhkZjcwNmEwMzEiPkxhc3RDaGlsZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYmFkNWJmMTA1OWM0ODEyN2I5NTg3MTFlZjg5ZThlNWQiPkxhc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjU2ZDBjZGJmY2ZlY2NhZTgzZjNhMWM5NzQ3YThiNjMiPkxhc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjk3NzJjOTIwMmY3MDU1M2Y5NDBiMTVjMDZiMDdiZTMiPkxhc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1ZDI5NDQyYWU0NmRlNmQwMTY4NDI5MTU2MTk3YmZjNiI+TGlua0VuZENoaWxkPC9hPihUaVhtbE5vZGUgKmFkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTFiOTRkMmY3ZmE3YWIyNWE1YThlOGQ0MzQwYzQ0OWM5Ij5OZXh0U2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTc1N2MxZjRkMDFlOGM5NTk2ZmZkYmQ1NjFjNzZhZWEiPk5leHRTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWY4NTRiYWViYTM4NGY1ZmU5ODU5ZjVhZWUwM2I1NDhlIj5OZXh0U2libGluZzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTJlNjFjMGI4OWE3N2UzNmEwZThjNjA0OTAwMDNjYjQ2Ij5OZXh0U2libGluZzwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzNhY2Y5MjlkNDlkMTBiZDBlNWZiM2QzMWIwMzcyZDEiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDcxYmE3N2ZkN2FiNzk0MDJmYTg0YjdlOWI4NjA3YjMiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzU3MmQwYWY5ZDFlNjk2ZWUzZjA1ZDhiYjVlYmI0NjMiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTA2OTU4ZTM0NDA2NzI5YTRlNGM1MzI2ZWEzOWQwODEiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FlZWQyMWFkMzA2MzBlZjZlN2ZhZjA5NjEyN2VkYzlmMyI+Tm9DaGlsZHJlbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgzNmVkZWQ0OTIwYWI5ZTllZjI4NDk2ZjQ4Y2Q5NWEyIj5Ob2RlVHlwZTwvYT4gZW51bSBuYW1lPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTg2Y2Q0OWNmYjE3YTg0NGMwMDEwYjMxMzZhYzk2NmM3Ij5vcGVyYXRvciZsdDsmbHQ7PC9hPihzdGQ6Om9zdHJlYW0gJmFtcDtvdXQsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MmVmMTdlNzA4MGRmMjQ5MGNmODdiZGUzODA2ODVhYiI+b3BlcmF0b3ImbHQ7Jmx0OzwvYT4oc3RkOjpzdHJpbmcgJmFtcDtvdXQsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiNTdiZDQyNjU2M2M5MjY4NDRmNjVhNzg0MTJlMThiOSI+b3BlcmF0b3ImZ3Q7Jmd0OzwvYT4oc3RkOjppc3RyZWFtICZhbXA7aW4sIFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiNjQzMDQzMTMyZmZkNzk0Zjg2MDI2ODVkMzRhOTgyZSI+UGFyZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjMmNkODkyNzY4NzI2MjcwZTUxMWIyYWIzMmRlNGQxMCI+UHJldmlvdXNTaWJsaW5nPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNWJkZDQ5MzI3ZWVjMWU2MDliN2QyMmFmNzA2YjgzMTYiPlByZXZpb3VzU2libGluZzwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjU4Mjc2ZjU3ZDM1ZDVkNDI1NmQxZGMxYTJjMzk4YWIiPlByZXZpb3VzU2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhY2M4YTA0MzRjN2Y0MDFkNGEzYjZkZWU3N2MxYTU5MTIiPlByZXZpb3VzU2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2E2YjMxNjUyN2FhYThkYTAzNzBjZDY4YzIyYTVhMGY1ZiI+UHJpbnQ8L2E+KEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCI+VGlYbWxDb21tZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWUxOWQ4NTEwZWZjOTA1OTY1NTJmNGZlZWFjOWE4ZmJmIj5SZW1vdmVDaGlsZDwvYT4oVGlYbWxOb2RlICpyZW1vdmVUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwYzQ5ZTczOWExN2I5OTM4MDUwYzIyY2Q4OTYxN2ZiZCI+UmVwbGFjZUNoaWxkPC9hPihUaVhtbE5vZGUgKnJlcGxhY2VUaGlzLCBjb25zdCBUaVhtbE5vZGUgJmFtcDt3aXRoVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMDI0YmNlYjA3MDE4OGRmOTJjMmE4ZDg4NTJkZDA4NTMiPlJvdzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTBmNzk5ZWM2NDViZmI4ZDhhOTY5ZTgzNDc4ZjM3OWMxIj5TZXRDb25kZW5zZVdoaXRlU3BhY2U8L2E+KGJvb2wgY29uZGVuc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWM2YjNlMGY3OTA5MzBkNDk3MGVjMzA3NjRlOTM3YjVkIj5TZXRVc2VyRGF0YTwvYT4odm9pZCAqdXNlcik8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTJhMzgzMjljYTVkM2YyOGY5OGNlOTMyYjgyOTlhZTkwIj5TZXRWYWx1ZTwvYT4oY29uc3QgY2hhciAqX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjU5OGQ1ZjQ0ODA0MmMxYWJiZWFlNDUwM2RkNDVmZjIiPlNldFZhbHVlPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYWFhMzI1MjAzMWQzZThiZDNhMmJmNTFhMWM2MTIwMWI3Ij5UaVhtbENvbW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTM3ZTc4MDJlZjE3YmMwM2ViZTVhZTc5YmYwNzEzZDQ3Ij5UaVhtbENvbW1lbnQ8L2E+KGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTAwZmI0MjE1YzIwYTIzOTllYTA1YWM5YjllN2U2OGEwIj5Ub0NvbW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIj5UaVhtbENvbW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2FjYzdjN2UwN2UxM2MyM2YxNzc5N2Q2NDI5ODE1MTFkZiI+VG9Db21tZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIj5UaVhtbENvbW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E5ZjQzZTY5ODRmYzdkNGFmZDZlYjMyNzE0YzZiN2I3MiI+VG9EZWNsYXJhdGlvbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQwMjcxMzZjYTgyMGZmNGE2MzZiNjA3MjMxYjZhNmRmIj5Ub0RlY2xhcmF0aW9uPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4YTRjZGE0YjE1YzI5ZjY0Y2ZmNDE5MzA5YWViZWQwOCI+VG9Eb2N1bWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTZhNGM4YWMyOGVlN2E3NDVkMDU5ZGI2NjkxZTAzYmFlIj5Ub0RvY3VtZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MmFiZWQ5NmRjOTY2N2FiOWUwYTJhMjc1MzAxYmIxYyI+VG9FbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYTY1ZDAwMDIyMzE4N2QyMmE0ZGNlYmQ3NDc5ZTllYmMiPlRvRWxlbWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhOTVhNDZhNTJjNTI1OTkyZDZiNGVlMDhiZWIxNGNkNjkiPlRvVGV4dDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTNkZGZiY2FjNzhmYmVhMDQxZmFkNTdlNWM2ZDYwYTAzIj5Ub1RleHQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWZkNzIwNWNmMzFkN2EzNzY5MjlmOGEzNjkzMDYyN2EyIj5Ub1Vua25vd248L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwNmRlNWFmODUyNjY4YzdlNGFmMGQwOWMyMDVmMGIwZCI+VG9Vbmtub3duPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1N2I5OWQ1Yzk3ZDY3YTQyYjk3NTJmNTIxMGExYmE1ZSI+VHlwZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWIyNDJjMDE1OTAxOTFmNjQ0NTY5ZmE4OWEwODBkOTdjIj51c2VyRGF0YTwvYT48L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW3Byb3RlY3RlZF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTc3OTQzZWI5MGQxMmMyODkyYjEzMzdhOWY1OTE4YjQxIj5WYWx1ZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTZkOWU1MDU2MTlkMzliZjUwYmZkOTYwOWM5MTY5ZWE1Ij5WYWx1ZVN0cjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotPC90YWJsZT48L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOworPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPkNsYXNzJm5ic3A7TWVtYmVyczwvYT48L2Rpdj4KKzxoMT5UaVhtbENvbW1lbnQgTWVtYmVyIExpc3Q8L2gxPlRoaXMgaXMgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgbWVtYmVycyBmb3IgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIj5UaVhtbENvbW1lbnQ8L2E+LCBpbmNsdWRpbmcgYWxsIGluaGVyaXRlZCBtZW1iZXJzLjxwPjx0YWJsZT4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1Ij5DbGVhcjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2E0Ij5DbG9uZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E0Ij5Db2x1bW48L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4Ij5GaXJzdENoaWxkPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTAiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTEiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNiI+Rmlyc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTciPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTAiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MiI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTQiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTciPkdldERvY3VtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyOSI+SW5zZXJ0QWZ0ZXJDaGlsZDwvYT4oVGlYbWxOb2RlICphZnRlclRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI4Ij5JbnNlcnRCZWZvcmVDaGlsZDwvYT4oVGlYbWxOb2RlICpiZWZvcmVUaGlzLCBjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNiI+SW5zZXJ0RW5kQ2hpbGQ8L2E+KGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjZTEiPklzV2hpdGVTcGFjZUNvbmRlbnNlZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyMCI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjIiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oY29uc3QgY2hhciAqdmFsdWUsIGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNCI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNSI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgVGlYbWxOb2RlICpwcmV2aW91cyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEzIj5MYXN0Q2hpbGQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE1Ij5MYXN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExOCI+TGFzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExOSI+TGFzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI3Ij5MaW5rRW5kQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqYWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzgiPk5leHRTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzOSI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDAiPk5leHRTaWJsaW5nPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDIiPk5leHRTaWJsaW5nPC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NCI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NiI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0OCI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0OSI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU5Ij5Ob0NoaWxkcmVuPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCN3NyI+Tm9kZVR5cGU8L2E+IGVudW0gbmFtZTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI24zIj5vcGVyYXRvciZsdDsmbHQ7PC9hPihzdGQ6Om9zdHJlYW0gJmFtcDtvdXQsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI240Ij5vcGVyYXRvciZsdDsmbHQ7PC9hPihzdGQ6OnN0cmluZyAmYW1wO291dCwgY29uc3QgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjIiPm9wZXJhdG9yJmd0OyZndDs8L2E+KHN0ZDo6aXN0cmVhbSAmYW1wO2luLCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNiI+UGFyZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMiI+UHJldmlvdXNTaWJsaW5nPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzQiPlByZXZpb3VzU2libGluZzwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzYiPlByZXZpb3VzU2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzciPlByZXZpb3VzU2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2E1Ij5QcmludDwvYT4oRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIj5UaVhtbENvbW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzEiPlJlbW92ZUNoaWxkPC9hPihUaVhtbE5vZGUgKnJlbW92ZVRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMwIj5SZXBsYWNlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqcmVwbGFjZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO3dpdGhUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EzIj5Sb3c8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2UwIj5TZXRDb25kZW5zZVdoaXRlU3BhY2U8L2E+KGJvb2wgY29uZGVuc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMiPlNldFZhbHVlPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0Ij5TZXRWYWx1ZTwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2EwIj5UaVhtbENvbW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYyIj5Ub0NvbW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2OCI+VG9Db21tZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NSI+VG9EZWNsYXJhdGlvbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcxIj5Ub0RlY2xhcmF0aW9uPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MCI+VG9Eb2N1bWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY2Ij5Ub0RvY3VtZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MSI+VG9FbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjciPlRvRWxlbWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjQiPlRvVGV4dDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcwIj5Ub1RleHQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYzIj5Ub1Vua25vd248L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2OSI+VG9Vbmtub3duPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NiI+VHlwZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjcDEiPnVzZXJEYXRhPC9hPjwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbcHJvdGVjdGVkXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMSI+VmFsdWU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyIj5WYWx1ZVN0cjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorPC90YWJsZT48aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9jbGFzc1RpWG1sQ29tbWVudC5odG1sIGIvZG9jcy9jbGFzc1RpWG1sQ29tbWVudC5odG1sCmluZGV4IGUyMDI0NDMuLjU5M2FmOWMgMTAwNjQ0Ci0tLSBhL2RvY3MvY2xhc3NUaVhtbENvbW1lbnQuaHRtbAorKysgYi9kb2NzL2NsYXNzVGlYbWxDb21tZW50Lmh0bWwKQEAgLTEsMTE1ICsxLDQ0IEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIj4KKzxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9aXNvLTg4NTktMSI+CiA8dGl0bGU+VGlueVhtbDogVGlYbWxDb21tZW50IENsYXNzIFJlZmVyZW5jZTwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLTxoMT5UaVhtbENvbW1lbnQgQ2xhc3MgUmVmZXJlbmNlPC9oMT48IS0tIGRveHl0YWc6IGNsYXNzPSJUaVhtbENvbW1lbnQiIC0tPjwhLS0gZG94eXRhZzogaW5oZXJpdHM9IlRpWG1sTm9kZSIgLS0+Ci08cD5BbiBYTUwgY29tbWVudC4gIAotPGEgaHJlZj0iI19kZXRhaWxzIj5Nb3JlLi4uPC9hPjwvcD4KLQotPHA+PGNvZGU+I2luY2x1ZGUgJmx0OzxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPiZndDs8L2NvZGU+PC9wPgotPGRpdiBjbGFzcz0iZHluaGVhZGVyIj4KLUluaGVyaXRhbmNlIGRpYWdyYW0gZm9yIFRpWG1sQ29tbWVudDo8L2Rpdj4KLTxkaXYgY2xhc3M9ImR5bnNlY3Rpb24iPgotIDxkaXYgY2xhc3M9ImNlbnRlciI+Ci0gIDxpbWcgc3JjPSJjbGFzc1RpWG1sQ29tbWVudC5wbmciIHVzZW1hcD0iI1RpWG1sQ29tbWVudF9tYXAiIGFsdD0iIi8+Ci0gIDxtYXAgaWQ9IlRpWG1sQ29tbWVudF9tYXAiIG5hbWU9IlRpWG1sQ29tbWVudF9tYXAiPgotPGFyZWEgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgYWx0PSJUaVhtbE5vZGUiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjAsNTYsOTQsODAiLz4KLTxhcmVhIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiIGFsdD0iVGlYbWxCYXNlIiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDAsOTQsMjQiLz4KKzxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIj4KKzwvaGVhZD48Ym9keT4KKzwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS40LjQgLS0+Cis8ZGl2IGNsYXNzPSJxaW5kZXgiPjxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImluZGV4Lmh0bWwiPk1haW4mbmJzcDtQYWdlPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImhpZXJhcmNoeS5odG1sIj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+Q2xhc3MmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZpbGVzLmh0bWwiPkZpbGUmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj5DbGFzcyZuYnNwO01lbWJlcnM8L2E+PC9kaXY+Cis8aDE+VGlYbWxDb21tZW50IENsYXNzIFJlZmVyZW5jZTwvaDE+PCEtLSBkb3h5dGFnOiBjbGFzcz0iVGlYbWxDb21tZW50IiAtLT48IS0tIGRveHl0YWc6IGluaGVyaXRzPSJUaVhtbE5vZGUiIC0tPkFuIFhNTCBjb21tZW50LiAgCis8YSBocmVmPSIjX2RldGFpbHMiPk1vcmUuLi48L2E+Cis8cD4KKzxjb2RlPiNpbmNsdWRlICZsdDs8YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGgtc291cmNlLmh0bWwiPnRpbnl4bWwuaDwvYT4mZ3Q7PC9jb2RlPgorPHA+Cis8cD5Jbmhlcml0YW5jZSBkaWFncmFtIGZvciBUaVhtbENvbW1lbnQ6Cis8cD48Y2VudGVyPjxpbWcgc3JjPSJjbGFzc1RpWG1sQ29tbWVudC5wbmciIHVzZW1hcD0iI1RpWG1sQ29tbWVudF9tYXAiIGJvcmRlcj0iMCIgYWx0PSIiPjwvY2VudGVyPgorPG1hcCBuYW1lPSJUaVhtbENvbW1lbnRfbWFwIj4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIGFsdD0iVGlYbWxOb2RlIiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDU2LDk0LDgwIj4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiIGFsdD0iVGlYbWxCYXNlIiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDAsOTQsMjQiPgogPC9tYXA+Ci0gPC9kaXY+Ci08L2Rpdj4KKzxhIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50LW1lbWJlcnMuaHRtbCI+TGlzdCBvZiBhbGwgbWVtYmVycy48L2E+PHRhYmxlIGJvcmRlcj0iMCIgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIj4KKzx0cj48dGQ+PC90ZD48L3RyPgorPHRyPjx0ZCBjb2xzcGFuPSIyIj48YnI+PGgyPlB1YmxpYyBNZW1iZXIgRnVuY3Rpb25zPC9oMj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sQ29tbWVudDo6VGlYbWxDb21tZW50IiByZWY9ImEwIiBhcmdzPSIoKSIgLS0+CismbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2EwIj5UaVhtbENvbW1lbnQ8L2E+ICgpPC90ZD48L3RyPgogCi08cD48YSBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC1tZW1iZXJzLmh0bWwiPkxpc3Qgb2YgYWxsIG1lbWJlcnMuPC9hPjwvcD4KLTx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+Ci08dHI+PHRkIGNvbHNwYW49IjIiPjxoMj5QdWJsaWMgTWVtYmVyIEZ1bmN0aW9uczwvaDI+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhYWEzMjUyMDMxZDNlOGJkM2EyYmY1MWExYzYxMjAxYjciPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxDb21tZW50OjpUaVhtbENvbW1lbnQiIHJlZj0iYWFhMzI1MjAzMWQzZThiZDNhMmJmNTFhMWM2MTIwMWI3IiBhcmdzPSIoKSIgLS0+Ci0mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2FhYTMyNTIwMzFkM2U4YmQzYTJiZjUxYTFjNjEyMDFiNyI+VGlYbWxDb21tZW50PC9hPiAoKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNvbnN0cnVjdHMgYW4gZW1wdHkgY29tbWVudC4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEzN2U3ODAyZWYxN2JjMDNlYmU1YWU3OWJmMDcxM2Q0NyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbENvbW1lbnQ6OlRpWG1sQ29tbWVudCIgcmVmPSJhMzdlNzgwMmVmMTdiYzAzZWJlNWFlNzliZjA3MTNkNDciIGFyZ3M9Iihjb25zdCBjaGFyICpfdmFsdWUpIiAtLT4KLSZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTM3ZTc4MDJlZjE3YmMwM2ViZTVhZTc5YmYwNzEzZDQ3Ij5UaVhtbENvbW1lbnQ8L2E+IChjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29uc3RydWN0IGEgY29tbWVudCBmcm9tIHRleHQuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMGQ2NjYyYmRjNTI0ODhiOWUxMmIzYzdhMDQ1M2QwMjgiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxDb21tZW50OjpDbG9uZSIgcmVmPSJhMGQ2NjYyYmRjNTI0ODhiOWUxMmIzYzdhMDQ1M2QwMjgiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci12aXJ0dWFsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhMGQ2NjYyYmRjNTI0ODhiOWUxMmIzYzdhMDQ1M2QwMjgiPkNsb25lPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm5zIGEgY29weSBvZiB0aGlzIENvbW1lbnQuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZpcnR1YWwgdm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTZiMzE2NTI3YWFhOGRhMDM3MGNkNjhjMjJhNWEwZjVmIj5QcmludDwvYT4gKEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkFsbCBUaW55WG1sIGNsYXNzZXMgY2FuIHByaW50IHRoZW1zZWx2ZXMgdG8gYSBmaWxlc3RyZWFtIG9yIHRoZSBzdHJpbmcgY2xhc3MgKFRpWG1sU3RyaW5nIGluIG5vbi1TVEwgbW9kZSwgc3RkOjpzdHJpbmcgaW4gU1RMIG1vZGUuICA8YSBocmVmPSIjYTZiMzE2NTI3YWFhOGRhMDM3MGNkNjhjMjJhNWEwZjVmIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEwMGZiNDIxNWMyMGEyMzk5ZWEwNWFjOWI5ZTdlNjhhMCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbENvbW1lbnQ6OlRvQ29tbWVudCIgcmVmPSJhMDBmYjQyMTVjMjBhMjM5OWVhMDVhYzliOWU3ZTY4YTAiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci12aXJ0dWFsIGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCI+VGlYbWxDb21tZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhMDBmYjQyMTVjMjBhMjM5OWVhMDVhYzliOWU3ZTY4YTAiPlRvQ29tbWVudDwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhY2M3YzdlMDdlMTNjMjNmMTc3OTdkNjQyOTgxNTExZGYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxDb21tZW50OjpUb0NvbW1lbnQiIHJlZj0iYWNjN2M3ZTA3ZTEzYzIzZjE3Nzk3ZDY0Mjk4MTUxMWRmIiBhcmdzPSIoKSIgLS0+Ci12aXJ0dWFsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCI+VGlYbWxDb21tZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhY2M3YzdlMDdlMTNjMjNmMTc3OTdkNjQyOTgxNTExZGYiPlRvQ29tbWVudDwvYT4gKCk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFmM2FjMWI5OWZiYmU5ZWE0ZmI2ZTE0MTQ2MTU2ZTQzZSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbENvbW1lbnQ6OkFjY2VwdCIgcmVmPSJhZjNhYzFiOTlmYmJlOWVhNGZiNmUxNDE0NjE1NmU0M2UiIGFyZ3M9IihUaVhtbFZpc2l0b3IgKnZpc2l0b3IpIGNvbnN0ICIgLS0+Ci12aXJ0dWFsIGJvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2FmM2FjMWI5OWZiYmU5ZWE0ZmI2ZTE0MTQ2MTU2ZTQzZSI+QWNjZXB0PC9hPiAoPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIj5UaVhtbFZpc2l0b3I8L2E+ICp2aXNpdG9yKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5XYWxrIHRoZSBYTUwgdHJlZSB2aXNpdGluZyB0aGlzIG5vZGUgYW5kIGFsbCBvZiBpdHMgY2hpbGRyZW4uIDxici8+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29uc3RydWN0cyBhbiBlbXB0eSBjb21tZW50LiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhNCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbENvbW1lbnQ6OkNsb25lIiByZWY9ImE0IiBhcmdzPSIoKSBjb25zdCAiIC0tPgordmlydHVhbCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTQiPkNsb25lPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybnMgYSBjb3B5IG9mIHRoaXMgQ29tbWVudC4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxDb21tZW50OjpQcmludCIgcmVmPSJhNSIgYXJncz0iKEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0ICIgLS0+Cit2aXJ0dWFsIHZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2E1Ij5QcmludDwvYT4gKEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+V3JpdGUgdGhpcyBDb21tZW50IHRvIGEgRklMRSBzdHJlYW0uIDxicj48L3RkPjwvdHI+CiA8L3RhYmxlPgotPGhyLz48YSBuYW1lPSJfZGV0YWlscyI+PC9hPjxoMj5EZXRhaWxlZCBEZXNjcmlwdGlvbjwvaDI+Ci08cD5BbiBYTUwgY29tbWVudC4gPC9wPgotPGhyLz48aDI+TWVtYmVyIEZ1bmN0aW9uIERvY3VtZW50YXRpb248L2gyPgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE2YjMxNjUyN2FhYThkYTAzNzBjZDY4YzIyYTVhMGY1ZiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbENvbW1lbnQ6OlByaW50IiByZWY9ImE2YjMxNjUyN2FhYThkYTAzNzBjZDY4YzIyYTVhMGY1ZiIgYXJncz0iKEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0ICIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPnZpcnR1YWwgdm9pZCBUaVhtbENvbW1lbnQ6OlByaW50IDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5GSUxFICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmNmaWxlPC9lbT4sIDwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFta2V5Ij48L3RkPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5pbnQmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmRlcHRoPC9lbT48L3RkPjx0ZD4mbmJzcDs8L3RkPgotICAgICAgICA8L3RyPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkPik8L3RkPgotICAgICAgICAgIDx0ZD48L3RkPjx0ZD48L3RkPjx0ZD4gY29uc3Q8Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgotCi08cD5BbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbSBvciB0aGUgc3RyaW5nIGNsYXNzIChUaVhtbFN0cmluZyBpbiBub24tU1RMIG1vZGUsIHN0ZDo6c3RyaW5nIGluIFNUTCBtb2RlLiA8L3A+Ci08cD4pIEVpdGhlciBvciBib3RoIGNmaWxlIGFuZCBzdHIgY2FuIGJlIG51bGwuPC9wPgotPHA+VGhpcyBpcyBhIGZvcm1hdHRlZCBwcmludCwgYW5kIHdpbGwgaW5zZXJ0IHRhYnMgYW5kIG5ld2xpbmVzLjwvcD4KLTxwPihGb3IgYW4gdW5mb3JtYXR0ZWQgc3RyZWFtLCB1c2UgdGhlICZsdDsmbHQ7IG9wZXJhdG9yLikgPC9wPgotCi08cD5JbXBsZW1lbnRzIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGRlNTZiM2YyZWYxNGM2NTA5MWEzYjkxNjQzN2I1MTIiPlRpWG1sQmFzZTwvYT4uPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGhyLz5UaGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhpcyBjbGFzcyB3YXMgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBmaWxlOjx1bD4KLTxsaT48YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGhfc291cmNlLmh0bWwiPnRpbnl4bWwuaDwvYT48L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Cis8aHI+PGEgbmFtZT0iX2RldGFpbHMiPjwvYT48aDI+RGV0YWlsZWQgRGVzY3JpcHRpb248L2gyPgorQW4gWE1MIGNvbW1lbnQuIAorPHA+Cis8aHI+VGhlIGRvY3VtZW50YXRpb24gZm9yIHRoaXMgY2xhc3Mgd2FzIGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgZmlsZTo8dWw+Cis8bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoLXNvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+PC91bD4KKzxociBzaXplPSIxIj48YWRkcmVzcyBzdHlsZT0iYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBvbiBTYXQgT2N0IDggMTQ6MTU6MzAgMjAwNSBmb3IgVGlueVhtbCBieSZuYnNwOwogPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KKzxpbWcgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIiBhbGlnbj0ibWlkZGxlIiBib3JkZXI9IjAiPjwvYT4gMS40LjQgPC9zbWFsbD48L2FkZHJlc3M+CiA8L2JvZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2NsYXNzVGlYbWxDb21tZW50LnBuZyBiL2RvY3MvY2xhc3NUaVhtbENvbW1lbnQucG5nCmluZGV4IDVmYjFkMWQuLmUzM2Q3NDIgMTAwNjQ0Ci0tLSBhL2RvY3MvY2xhc3NUaVhtbENvbW1lbnQucG5nCisrKyBiL2RvY3MvY2xhc3NUaVhtbENvbW1lbnQucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbERlY2xhcmF0aW9uLW1lbWJlcnMuaHRtbCBiL2RvY3MvY2xhc3NUaVhtbERlY2xhcmF0aW9uLW1lbWJlcnMuaHRtbAppbmRleCBkNjAxNzQ0Li44YmM2M2NkIDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxEZWNsYXJhdGlvbi1tZW1iZXJzLmh0bWwKKysrIGIvZG9jcy9jbGFzc1RpWG1sRGVjbGFyYXRpb24tbWVtYmVycy5odG1sCkBAIC0xLDExMyArMSw4NiBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PWlzby04ODU5LTEiPgogPHRpdGxlPlRpbnlYbWw6IE1lbWJlciBMaXN0PC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotPGgxPlRpWG1sRGVjbGFyYXRpb24gTWVtYmVyIExpc3Q8L2gxPlRoaXMgaXMgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgbWVtYmVycyBmb3IgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4sIGluY2x1ZGluZyBhbGwgaW5oZXJpdGVkIG1lbWJlcnMuPHRhYmxlPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2EyMjMxNWE1MzU5ODNiODY1MzVjZGJhMzQ1ODY2OWUzZSI+QWNjZXB0PC9hPihUaVhtbFZpc2l0b3IgKnZpc2l0b3IpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiPlRpWG1sRGVjbGFyYXRpb248L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzA4ZTdmOTUzZGY2MWQ0ZDJkMTJmNzMxNzE1NTBhNGIiPkNsZWFyPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E3Y2Y0NTkxODYwNDAxNDFjZGE3YTE4MGE2NTg1Y2UyZSI+Q2xvbmU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT48L3RkPjx0ZD48Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiNTRiZmI5YjcwZmU2ZGQyNzZlN2IyNzljYWI3ZjAwMyI+Q29sdW1uPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNmJkOGMzMTVjMWFjYjA5ZTM0MTA3Yjg3MzY1MDU5NDgiPkVuY29kZVN0cmluZzwvYT4oY29uc3QgVElYTUxfU1RSSU5HICZhbXA7c3RyLCBUSVhNTF9TVFJJTkcgKm91dCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW3N0YXRpY108L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E1ZDk3NDIzMWY5ZTlhMmYwNTQyZjE1ZjNhNDZjZGI3NiI+RW5jb2Rpbmc8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ0YzhlZWUyNmJiZTJkMWIyNzYyMDM4ZGY5ZGRlMmYwIj5GaXJzdENoaWxkPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMWYwNTgyOGQwMjMxNTA3MDZlZWIxNmQ2ZmIzZjYzNTUiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYmM4YmYzMmJlNjQxOWVjNDUzYTczMTg2OGRlMTk1NTQiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTA3ZjYyMDBhNTk1NmM3MjNjNWI1MmQ3MGYyOWM0NmY2Ij5GaXJzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMGQyNjY5Y2NiNWUyOWUwMmZjYjBlNDQwODY4NWVmNiI+Rmlyc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmNGZiNjUyZjZiZDc5YWUwZDVjZTdkMGY3ZDNjMGZiYSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWNjZGEyYzZiNDVjMjViYjVhNmY5YzM0MDdhNjQ0ZTYxIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3QgY2hhciAqX3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzI3YWQ0YmJkOTAwNzNjNWRmYzkzMWIwNzMxNGY1ZjciPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3ZjFkNzI5MTg4MDUzNGMxZTVjZGViMzkyZDhjMWY0NSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODBlMzk3ZmE5NzNjZjUzMjNlMzNiMDcxNTRiMDI0ZjMiPkdldERvY3VtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E2NTU5YTUzMGNhNjc2M2ZjMzAxYTE0ZDc3ZWQyOGMxNyI+R2V0VXNlckRhdGE8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWQwMTIwMjEwZTQ2ODBlZjIwODg2MDE3NTNjZTBlZGU0Ij5HZXRVc2VyRGF0YTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWQ5Yjc1ZTU0ZWMxOTMwMWM4YjRkNWZmNTgzZDBiM2Q1Ij5JbnNlcnRBZnRlckNoaWxkPC9hPihUaVhtbE5vZGUgKmFmdGVyVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMGMxNDZmYTJmZmYwMTU3YjY4MTU5NDEwMmY0OGNiYzciPkluc2VydEJlZm9yZUNoaWxkPC9hPihUaVhtbE5vZGUgKmJlZm9yZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWQ3ZDQ2MzBlMWEyYTkxNmVkZGExNmJlMjI0NDhhOGJhIj5JbnNlcnRFbmRDaGlsZDwvYT4oY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDRiMTQ3MjUzMWM2NDdhMjViMTg0MGE4N2FlNDI0MzgiPklzV2hpdGVTcGFjZUNvbmRlbnNlZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4NjIxMTk2YmEzNzA1ZmEyMjZiZWY0YTc2MWNjNTFiNiI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZGZhZWYzNWEwNzZiOTM0M2FkYzE0MjA3NTczNzZjMzkiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oY29uc3QgY2hhciAqdmFsdWUsIGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExY2JhYWY4ZTgyYzA5YWQ3NjNkNTI2MTZkNzU3MjRkZiI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNmU5YWQ1M2UyZjU0NDViMTRiZjMyNWM5MGFhODYyYyI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY0MzJkMmIyNDk1ZjZjYWY5Y2I0Mjc4ZGY3MDZhMDMxIj5MYXN0Q2hpbGQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWJhZDViZjEwNTljNDgxMjdiOTU4NzExZWY4OWU4ZTVkIj5MYXN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI1NmQwY2RiZmNmZWNjYWU4M2YzYTFjOTc0N2E4YjYzIj5MYXN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY5NzcyYzkyMDJmNzA1NTNmOTQwYjE1YzA2YjA3YmUzIj5MYXN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNWQyOTQ0MmFlNDZkZTZkMDE2ODQyOTE1NjE5N2JmYzYiPkxpbmtFbmRDaGlsZDwvYT4oVGlYbWxOb2RlICphZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExYjk0ZDJmN2ZhN2FiMjVhNWE4ZThkNDM0MGM0NDljOSI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE3NTdjMWY0ZDAxZThjOTU5NmZmZGJkNTYxYzc2YWVhIj5OZXh0U2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmODU0YmFlYmEzODRmNWZlOTg1OWY1YWVlMDNiNTQ4ZSI+TmV4dFNpYmxpbmc8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyZTYxYzBiODlhNzdlMzZhMGU4YzYwNDkwMDAzY2I0NiI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTczYWNmOTI5ZDQ5ZDEwYmQwZTVmYjNkMzFiMDM3MmQxIj5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTA3MWJhNzdmZDdhYjc5NDAyZmE4NGI3ZTliODYwN2IzIj5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTc1NzJkMGFmOWQxZTY5NmVlM2YwNWQ4YmI1ZWJiNDYzIj5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUwNjk1OGUzNDQwNjcyOWE0ZTRjNTMyNmVhMzlkMDgxIj5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZWVkMjFhZDMwNjMwZWY2ZTdmYWYwOTYxMjdlZGM5ZjMiPk5vQ2hpbGRyZW48L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4MzZlZGVkNDkyMGFiOWU5ZWYyODQ5NmY0OGNkOTVhMiI+Tm9kZVR5cGU8L2E+IGVudW0gbmFtZTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4NmNkNDljZmIxN2E4NDRjMDAxMGIzMTM2YWM5NjZjNyI+b3BlcmF0b3ImbHQ7Jmx0OzwvYT4oc3RkOjpvc3RyZWFtICZhbXA7b3V0LCBjb25zdCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTJlZjE3ZTcwODBkZjI0OTBjZjg3YmRlMzgwNjg1YWIiPm9wZXJhdG9yJmx0OyZsdDs8L2E+KHN0ZDo6c3RyaW5nICZhbXA7b3V0LCBjb25zdCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYjU3YmQ0MjY1NjNjOTI2ODQ0ZjY1YTc4NDEyZTE4YjkiPm9wZXJhdG9yJmd0OyZndDs8L2E+KHN0ZDo6aXN0cmVhbSAmYW1wO2luLCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYjY0MzA0MzEzMmZmZDc5NGY4NjAyNjg1ZDM0YTk4MmUiPlBhcmVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYzJjZDg5Mjc2ODcyNjI3MGU1MTFiMmFiMzJkZTRkMTAiPlByZXZpb3VzU2libGluZzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTViZGQ0OTMyN2VlYzFlNjA5YjdkMjJhZjcwNmI4MzE2Ij5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY1ODI3NmY1N2QzNWQ1ZDQyNTZkMWRjMWEyYzM5OGFiIj5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWNjOGEwNDM0YzdmNDAxZDRhM2I2ZGVlNzdjMWE1OTEyIj5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYWJmNjMwM2RiNGJkMDViNWJlNTU0MDM2ODE3ZmYxY2I0Ij5QcmludDwvYT4oRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWUxOWQ4NTEwZWZjOTA1OTY1NTJmNGZlZWFjOWE4ZmJmIj5SZW1vdmVDaGlsZDwvYT4oVGlYbWxOb2RlICpyZW1vdmVUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwYzQ5ZTczOWExN2I5OTM4MDUwYzIyY2Q4OTYxN2ZiZCI+UmVwbGFjZUNoaWxkPC9hPihUaVhtbE5vZGUgKnJlcGxhY2VUaGlzLCBjb25zdCBUaVhtbE5vZGUgJmFtcDt3aXRoVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMDI0YmNlYjA3MDE4OGRmOTJjMmE4ZDg4NTJkZDA4NTMiPlJvdzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTBmNzk5ZWM2NDViZmI4ZDhhOTY5ZTgzNDc4ZjM3OWMxIj5TZXRDb25kZW5zZVdoaXRlU3BhY2U8L2E+KGJvb2wgY29uZGVuc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWM2YjNlMGY3OTA5MzBkNDk3MGVjMzA3NjRlOTM3YjVkIj5TZXRVc2VyRGF0YTwvYT4odm9pZCAqdXNlcik8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTJhMzgzMjljYTVkM2YyOGY5OGNlOTMyYjgyOTlhZTkwIj5TZXRWYWx1ZTwvYT4oY29uc3QgY2hhciAqX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjU5OGQ1ZjQ0ODA0MmMxYWJiZWFlNDUwM2RkNDVmZjIiPlNldFZhbHVlPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E5ZmYwNmFmYzAzM2Q3ZWY3MzBlYzdjNjgyNWI5N2FkOSI+U3RhbmRhbG9uZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYWEwNDg0ZDA1OWJlYTBlYTFhY2I0N2M5MDk0MzgyZDc5Ij5UaVhtbERlY2xhcmF0aW9uPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2FjZDU1NTYwMDdjM2M3MjIwOTQ2NTA4MWRlMzlkOTgzNiI+VGlYbWxEZWNsYXJhdGlvbjwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmVyc2lvbiwgY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfZW5jb2RpbmcsIGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3N0YW5kYWxvbmUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTNiNjE4ZDFjMzBjMjVlNGI3YTcxZjMxYTU5NWVlMjk4Ij5UaVhtbERlY2xhcmF0aW9uPC9hPihjb25zdCBjaGFyICpfdmVyc2lvbiwgY29uc3QgY2hhciAqX2VuY29kaW5nLCBjb25zdCBjaGFyICpfc3RhbmRhbG9uZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FhMGE1MDg2ZjllYWVlOTEwYmJmZGM3Zjk3NWUyNjU3NCI+VG9Db21tZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzgzZTA2YTA3ODdmNzA2Mzk1MzkzNDg2Nzk5MGY4NDkiPlRvQ29tbWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTFlMDg1ZDNmZWZkMWRiZjVjY2RiZmY3Mjk5MzFhOTY3Ij5Ub0RlY2xhcmF0aW9uPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiPlRpWG1sRGVjbGFyYXRpb248L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhNmJkM2QxZGFkZGNhZWI5NTQzYzI0YmZkMDkwOTY5Y2UiPlRvRGVjbGFyYXRpb248L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhOGE0Y2RhNGIxNWMyOWY2NGNmZjQxOTMwOWFlYmVkMDgiPlRvRG9jdW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2YTRjOGFjMjhlZTdhNzQ1ZDA1OWRiNjY5MWUwM2JhZSI+VG9Eb2N1bWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzJhYmVkOTZkYzk2NjdhYjllMGEyYTI3NTMwMWJiMWMiPlRvRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWE2NWQwMDAyMjMxODdkMjJhNGRjZWJkNzQ3OWU5ZWJjIj5Ub0VsZW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTk1YTQ2YTUyYzUyNTk5MmQ2YjRlZTA4YmViMTRjZDY5Ij5Ub1RleHQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzZGRmYmNhYzc4ZmJlYTA0MWZhZDU3ZTVjNmQ2MGEwMyI+VG9UZXh0PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmZDcyMDVjZjMxZDdhMzc2OTI5ZjhhMzY5MzA2MjdhMiI+VG9Vbmtub3duPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDZkZTVhZjg1MjY2OGM3ZTRhZjBkMDljMjA1ZjBiMGQiPlRvVW5rbm93bjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTdiOTlkNWM5N2Q2N2E0MmI5NzUyZjUyMTBhMWJhNWUiPlR5cGU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiMjQyYzAxNTkwMTkxZjY0NDU2OWZhODlhMDgwZDk3YyI+dXNlckRhdGE8L2E+PC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtwcm90ZWN0ZWRdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3Nzk0M2ViOTBkMTJjMjg5MmIxMzM3YTlmNTkxOGI0MSI+VmFsdWU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2ZDllNTA1NjE5ZDM5YmY1MGJmZDk2MDljOTE2OWVhNSI+VmFsdWVTdHI8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMDJlZTU1N2IxYTQ1NDVjMzIxOWVkMzc3YzEwM2VjNzYiPlZlcnNpb248L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotPC90YWJsZT48L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOworPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPkNsYXNzJm5ic3A7TWVtYmVyczwvYT48L2Rpdj4KKzxoMT5UaVhtbERlY2xhcmF0aW9uIE1lbWJlciBMaXN0PC9oMT5UaGlzIGlzIHRoZSBjb21wbGV0ZSBsaXN0IG9mIG1lbWJlcnMgZm9yIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiPlRpWG1sRGVjbGFyYXRpb248L2E+LCBpbmNsdWRpbmcgYWxsIGluaGVyaXRlZCBtZW1iZXJzLjxwPjx0YWJsZT4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1Ij5DbGVhcjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhOSI+Q2xvbmU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT48L3RkPjx0ZD48Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E0Ij5Db2x1bW48L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhNyI+RW5jb2Rpbmc8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgiPkZpcnN0Q2hpbGQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMCI+Rmlyc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMSI+Rmlyc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE2Ij5GaXJzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNyI+Rmlyc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MCI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUyIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NCI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU1Ij5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NyI+R2V0RG9jdW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI5Ij5JbnNlcnRBZnRlckNoaWxkPC9hPihUaVhtbE5vZGUgKmFmdGVyVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjgiPkluc2VydEJlZm9yZUNoaWxkPC9hPihUaVhtbE5vZGUgKmJlZm9yZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI2Ij5JbnNlcnRFbmRDaGlsZDwvYT4oY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNlMSI+SXNXaGl0ZVNwYWNlQ29uZGVuc2VkPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTIwIj5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyMiI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBjaGFyICp2YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI0Ij5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI1Ij5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBUaVhtbE5vZGUgKnByZXZpb3VzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTMiPkxhc3RDaGlsZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTUiPkxhc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE4Ij5MYXN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE5Ij5MYXN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjciPkxpbmtFbmRDaGlsZDwvYT4oVGlYbWxOb2RlICphZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzOCI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM5Ij5OZXh0U2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MCI+TmV4dFNpYmxpbmc8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MiI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ0Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ2Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ4Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ5Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTkiPk5vQ2hpbGRyZW48L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI3c3Ij5Ob2RlVHlwZTwvYT4gZW51bSBuYW1lPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjMiPm9wZXJhdG9yJmx0OyZsdDs8L2E+KHN0ZDo6b3N0cmVhbSAmYW1wO291dCwgY29uc3QgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjQiPm9wZXJhdG9yJmx0OyZsdDs8L2E+KHN0ZDo6c3RyaW5nICZhbXA7b3V0LCBjb25zdCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNuMiI+b3BlcmF0b3ImZ3Q7Jmd0OzwvYT4oc3RkOjppc3RyZWFtICZhbXA7aW4sIFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2Ij5QYXJlbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMyIj5QcmV2aW91c1NpYmxpbmc8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzNCI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzNiI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzNyI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2ExMCI+UHJpbnQ8L2E+KEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiPlRpWG1sRGVjbGFyYXRpb248L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzEiPlJlbW92ZUNoaWxkPC9hPihUaVhtbE5vZGUgKnJlbW92ZVRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMwIj5SZXBsYWNlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqcmVwbGFjZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO3dpdGhUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EzIj5Sb3c8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2UwIj5TZXRDb25kZW5zZVdoaXRlU3BhY2U8L2E+KGJvb2wgY29uZGVuc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMiPlNldFZhbHVlPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0Ij5TZXRWYWx1ZTwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhOCI+U3RhbmRhbG9uZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTAiPlRpWG1sRGVjbGFyYXRpb248L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTEiPlRpWG1sRGVjbGFyYXRpb248L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZlcnNpb24sIGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X2VuY29kaW5nLCBjb25zdCBzdGQ6OnN0cmluZyAmYW1wO19zdGFuZGFsb25lKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiPlRpWG1sRGVjbGFyYXRpb248L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2EyIj5UaVhtbERlY2xhcmF0aW9uPC9hPihjb25zdCBjaGFyICpfdmVyc2lvbiwgY29uc3QgY2hhciAqX2VuY29kaW5nLCBjb25zdCBjaGFyICpfc3RhbmRhbG9uZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MiI+VG9Db21tZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjgiPlRvQ29tbWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjUiPlRvRGVjbGFyYXRpb248L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MSI+VG9EZWNsYXJhdGlvbjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjAiPlRvRG9jdW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NiI+VG9Eb2N1bWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjEiPlRvRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY3Ij5Ub0VsZW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY0Ij5Ub1RleHQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MCI+VG9UZXh0PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MyI+VG9Vbmtub3duPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjkiPlRvVW5rbm93bjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTYiPlR5cGU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI3AxIj51c2VyRGF0YTwvYT48L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW3Byb3RlY3RlZF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEiPlZhbHVlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMiI+VmFsdWVTdHI8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhNiI+VmVyc2lvbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Cis8L3RhYmxlPjxociBzaXplPSIxIj48YWRkcmVzcyBzdHlsZT0iYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBvbiBTYXQgT2N0IDggMTQ6MTU6MzAgMjAwNSBmb3IgVGlueVhtbCBieSZuYnNwOwogPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KKzxpbWcgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIiBhbGlnbj0ibWlkZGxlIiBib3JkZXI9IjAiPjwvYT4gMS40LjQgPC9zbWFsbD48L2FkZHJlc3M+CiA8L2JvZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2NsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIGIvZG9jcy9jbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbAppbmRleCBlOTBjYmNkLi4yYzk3ZTZlIDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sCisrKyBiL2RvY3MvY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwKQEAgLTEsMTMxICsxLDY5IEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIj4KKzxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9aXNvLTg4NTktMSI+CiA8dGl0bGU+VGlueVhtbDogVGlYbWxEZWNsYXJhdGlvbiBDbGFzcyBSZWZlcmVuY2U8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci08aDE+VGlYbWxEZWNsYXJhdGlvbiBDbGFzcyBSZWZlcmVuY2U8L2gxPjwhLS0gZG94eXRhZzogY2xhc3M9IlRpWG1sRGVjbGFyYXRpb24iIC0tPjwhLS0gZG94eXRhZzogaW5oZXJpdHM9IlRpWG1sTm9kZSIgLS0+Ci08cD5JbiBjb3JyZWN0IFhNTCB0aGUgZGVjbGFyYXRpb24gaXMgdGhlIGZpcnN0IGVudHJ5IGluIHRoZSBmaWxlLiAgCi08YSBocmVmPSIjX2RldGFpbHMiPk1vcmUuLi48L2E+PC9wPgotCi08cD48Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT48L3A+Ci08ZGl2IGNsYXNzPSJkeW5oZWFkZXIiPgotSW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxEZWNsYXJhdGlvbjo8L2Rpdj4KLTxkaXYgY2xhc3M9ImR5bnNlY3Rpb24iPgotIDxkaXYgY2xhc3M9ImNlbnRlciI+Ci0gIDxpbWcgc3JjPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24ucG5nIiB1c2VtYXA9IiNUaVhtbERlY2xhcmF0aW9uX21hcCIgYWx0PSIiLz4KLSAgPG1hcCBpZD0iVGlYbWxEZWNsYXJhdGlvbl9tYXAiIG5hbWU9IlRpWG1sRGVjbGFyYXRpb25fbWFwIj4KLTxhcmVhIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIGFsdD0iVGlYbWxOb2RlIiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDU2LDEwOCw4MCIvPgotPGFyZWEgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCIgYWx0PSJUaVhtbEJhc2UiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjAsMCwxMDgsMjQiLz4KKzxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIj4KKzwvaGVhZD48Ym9keT4KKzwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS40LjQgLS0+Cis8ZGl2IGNsYXNzPSJxaW5kZXgiPjxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImluZGV4Lmh0bWwiPk1haW4mbmJzcDtQYWdlPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImhpZXJhcmNoeS5odG1sIj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+Q2xhc3MmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZpbGVzLmh0bWwiPkZpbGUmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj5DbGFzcyZuYnNwO01lbWJlcnM8L2E+PC9kaXY+Cis8aDE+VGlYbWxEZWNsYXJhdGlvbiBDbGFzcyBSZWZlcmVuY2U8L2gxPjwhLS0gZG94eXRhZzogY2xhc3M9IlRpWG1sRGVjbGFyYXRpb24iIC0tPjwhLS0gZG94eXRhZzogaW5oZXJpdHM9IlRpWG1sTm9kZSIgLS0+SW4gY29ycmVjdCBYTUwgdGhlIGRlY2xhcmF0aW9uIGlzIHRoZSBmaXJzdCBlbnRyeSBpbiB0aGUgZmlsZS4gIAorPGEgaHJlZj0iI19kZXRhaWxzIj5Nb3JlLi4uPC9hPgorPHA+Cis8Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoLXNvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT4KKzxwPgorPHA+SW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxEZWNsYXJhdGlvbjoKKzxwPjxjZW50ZXI+PGltZyBzcmM9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5wbmciIHVzZW1hcD0iI1RpWG1sRGVjbGFyYXRpb25fbWFwIiBib3JkZXI9IjAiIGFsdD0iIj48L2NlbnRlcj4KKzxtYXAgbmFtZT0iVGlYbWxEZWNsYXJhdGlvbl9tYXAiPgorPGFyZWEgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgYWx0PSJUaVhtbE5vZGUiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjAsNTYsMTA4LDgwIj4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiIGFsdD0iVGlYbWxCYXNlIiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDAsMTA4LDI0Ij4KIDwvbWFwPgotIDwvZGl2PgotPC9kaXY+Cis8YSBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24tbWVtYmVycy5odG1sIj5MaXN0IG9mIGFsbCBtZW1iZXJzLjwvYT48dGFibGUgYm9yZGVyPSIwIiBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiPgorPHRyPjx0ZD48L3RkPjwvdHI+Cis8dHI+PHRkIGNvbHNwYW49IjIiPjxicj48aDI+UHVibGljIE1lbWJlciBGdW5jdGlvbnM8L2gyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTAiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEZWNsYXJhdGlvbjo6VGlYbWxEZWNsYXJhdGlvbiIgcmVmPSJhMCIgYXJncz0iKCkiIC0tPgorJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTAiPlRpWG1sRGVjbGFyYXRpb248L2E+ICgpPC90ZD48L3RyPgogCi08cD48YSBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24tbWVtYmVycy5odG1sIj5MaXN0IG9mIGFsbCBtZW1iZXJzLjwvYT48L3A+Ci08dGFibGUgYm9yZGVyPSIwIiBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiPgotPHRyPjx0ZCBjb2xzcGFuPSIyIj48aDI+UHVibGljIE1lbWJlciBGdW5jdGlvbnM8L2gyPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWEwNDg0ZDA1OWJlYTBlYTFhY2I0N2M5MDk0MzgyZDc5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRGVjbGFyYXRpb246OlRpWG1sRGVjbGFyYXRpb24iIHJlZj0iYWEwNDg0ZDA1OWJlYTBlYTFhY2I0N2M5MDk0MzgyZDc5IiBhcmdzPSIoKSIgLS0+Ci0mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhYTA0ODRkMDU5YmVhMGVhMWFjYjQ3YzkwOTQzODJkNzkiPlRpWG1sRGVjbGFyYXRpb248L2E+ICgpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29uc3RydWN0IGFuIGVtcHR5IGRlY2xhcmF0aW9uLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWNkNTU1NjAwN2MzYzcyMjA5NDY1MDgxZGUzOWQ5ODM2Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRGVjbGFyYXRpb246OlRpWG1sRGVjbGFyYXRpb24iIHJlZj0iYWNkNTU1NjAwN2MzYzcyMjA5NDY1MDgxZGUzOWQ5ODM2IiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmVyc2lvbiwgY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfZW5jb2RpbmcsIGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3N0YW5kYWxvbmUpIiAtLT4KLSZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2FjZDU1NTYwMDdjM2M3MjIwOTQ2NTA4MWRlMzlkOTgzNiI+VGlYbWxEZWNsYXJhdGlvbjwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZlcnNpb24sIGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X2VuY29kaW5nLCBjb25zdCBzdGQ6OnN0cmluZyAmYW1wO19zdGFuZGFsb25lKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNvbnN0cnVjdG9yLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTNiNjE4ZDFjMzBjMjVlNGI3YTcxZjMxYTU5NWVlMjk4Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRGVjbGFyYXRpb246OlRpWG1sRGVjbGFyYXRpb24iIHJlZj0iYTNiNjE4ZDFjMzBjMjVlNGI3YTcxZjMxYTU5NWVlMjk4IiBhcmdzPSIoY29uc3QgY2hhciAqX3ZlcnNpb24sIGNvbnN0IGNoYXIgKl9lbmNvZGluZywgY29uc3QgY2hhciAqX3N0YW5kYWxvbmUpIiAtLT4KLSZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2EzYjYxOGQxYzMwYzI1ZTRiN2E3MWYzMWE1OTVlZTI5OCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4gKGNvbnN0IGNoYXIgKl92ZXJzaW9uLCBjb25zdCBjaGFyICpfZW5jb2RpbmcsIGNvbnN0IGNoYXIgKl9zdGFuZGFsb25lKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNvbnN0cnVjdC4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEwMmVlNTU3YjFhNDU0NWMzMjE5ZWQzNzdjMTAzZWM3NiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERlY2xhcmF0aW9uOjpWZXJzaW9uIiByZWY9ImEwMmVlNTU3YjFhNDU0NWMzMjE5ZWQzNzdjMTAzZWM3NiIgYXJncz0iKCkgY29uc3QgIiAtLT4KLWNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2EwMmVlNTU3YjFhNDU0NWMzMjE5ZWQzNzdjMTAzZWM3NiI+VmVyc2lvbjwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+VmVyc2lvbi4gV2lsbCByZXR1cm4gYW4gZW1wdHkgc3RyaW5nIGlmIG5vbmUgd2FzIGZvdW5kLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTVkOTc0MjMxZjllOWEyZjA1NDJmMTVmM2E0NmNkYjc2Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRGVjbGFyYXRpb246OkVuY29kaW5nIiByZWY9ImE1ZDk3NDIzMWY5ZTlhMmYwNTQyZjE1ZjNhNDZjZGI3NiIgYXJncz0iKCkgY29uc3QgIiAtLT4KLWNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E1ZDk3NDIzMWY5ZTlhMmYwNTQyZjE1ZjNhNDZjZGI3NiI+RW5jb2Rpbmc8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkVuY29kaW5nLiBXaWxsIHJldHVybiBhbiBlbXB0eSBzdHJpbmcgaWYgbm9uZSB3YXMgZm91bmQuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhOWZmMDZhZmMwMzNkN2VmNzMwZWM3YzY4MjViOTdhZDkiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEZWNsYXJhdGlvbjo6U3RhbmRhbG9uZSIgcmVmPSJhOWZmMDZhZmMwMzNkN2VmNzMwZWM3YzY4MjViOTdhZDkiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci1jb25zdCBjaGFyICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhOWZmMDZhZmMwMzNkN2VmNzMwZWM3YzY4MjViOTdhZDkiPlN0YW5kYWxvbmU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPklzIHRoaXMgYSBzdGFuZGFsb25lIGRvY3VtZW50PyA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTdjZjQ1OTE4NjA0MDE0MWNkYTdhMTgwYTY1ODVjZTJlIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRGVjbGFyYXRpb246OkNsb25lIiByZWY9ImE3Y2Y0NTkxODYwNDAxNDFjZGE3YTE4MGE2NTg1Y2UyZSIgYXJncz0iKCkgY29uc3QgIiAtLT4KLXZpcnR1YWwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhN2NmNDU5MTg2MDQwMTQxY2RhN2ExODBhNjU4NWNlMmUiPkNsb25lPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DcmVhdGVzIGEgY29weSBvZiB0aGlzIERlY2xhcmF0aW9uIGFuZCByZXR1cm5zIGl0LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj52aXJ0dWFsIHZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhYmY2MzAzZGI0YmQwNWI1YmU1NTQwMzY4MTdmZjFjYjQiPlByaW50PC9hPiAoRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QWxsIFRpbnlYbWwgY2xhc3NlcyBjYW4gcHJpbnQgdGhlbXNlbHZlcyB0byBhIGZpbGVzdHJlYW0gb3IgdGhlIHN0cmluZyBjbGFzcyAoVGlYbWxTdHJpbmcgaW4gbm9uLVNUTCBtb2RlLCBzdGQ6OnN0cmluZyBpbiBTVEwgbW9kZS4gIDxhIGhyZWY9IiNhYmY2MzAzZGI0YmQwNWI1YmU1NTQwMzY4MTdmZjFjYjQiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTFlMDg1ZDNmZWZkMWRiZjVjY2RiZmY3Mjk5MzFhOTY3Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRGVjbGFyYXRpb246OlRvRGVjbGFyYXRpb24iIHJlZj0iYTFlMDg1ZDNmZWZkMWRiZjVjY2RiZmY3Mjk5MzFhOTY3IiBhcmdzPSIoKSBjb25zdCAiIC0tPgotdmlydHVhbCBjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTFlMDg1ZDNmZWZkMWRiZjVjY2RiZmY3Mjk5MzFhOTY3Ij5Ub0RlY2xhcmF0aW9uPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE2YmQzZDFkYWRkY2FlYjk1NDNjMjRiZmQwOTA5NjljZSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERlY2xhcmF0aW9uOjpUb0RlY2xhcmF0aW9uIiByZWY9ImE2YmQzZDFkYWRkY2FlYjk1NDNjMjRiZmQwOTA5NjljZSIgYXJncz0iKCkiIC0tPgotdmlydHVhbCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTZiZDNkMWRhZGRjYWViOTU0M2MyNGJmZDA5MDk2OWNlIj5Ub0RlY2xhcmF0aW9uPC9hPiAoKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTIyMzE1YTUzNTk4M2I4NjUzNWNkYmEzNDU4NjY5ZTNlIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRGVjbGFyYXRpb246OkFjY2VwdCIgcmVmPSJhMjIzMTVhNTM1OTgzYjg2NTM1Y2RiYTM0NTg2NjllM2UiIGFyZ3M9IihUaVhtbFZpc2l0b3IgKnZpc2l0b3IpIGNvbnN0ICIgLS0+Ci12aXJ0dWFsIGJvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMjIzMTVhNTM1OTgzYjg2NTM1Y2RiYTM0NTg2NjllM2UiPkFjY2VwdDwvYT4gKDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCI+VGlYbWxWaXNpdG9yPC9hPiAqdmlzaXRvcikgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+V2FsayB0aGUgWE1MIHRyZWUgdmlzaXRpbmcgdGhpcyBub2RlIGFuZCBhbGwgb2YgaXRzIGNoaWxkcmVuLiA8YnIvPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNvbnN0cnVjdCBhbiBlbXB0eSBkZWNsYXJhdGlvbi4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEZWNsYXJhdGlvbjo6VGlYbWxEZWNsYXJhdGlvbiIgcmVmPSJhMSIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZlcnNpb24sIGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X2VuY29kaW5nLCBjb25zdCBzdGQ6OnN0cmluZyAmYW1wO19zdGFuZGFsb25lKSIgLS0+CismbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMSI+VGlYbWxEZWNsYXJhdGlvbjwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZlcnNpb24sIGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X2VuY29kaW5nLCBjb25zdCBzdGQ6OnN0cmluZyAmYW1wO19zdGFuZGFsb25lKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29uc3RydWN0b3IuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEyIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRGVjbGFyYXRpb246OlRpWG1sRGVjbGFyYXRpb24iIHJlZj0iYTIiIGFyZ3M9Iihjb25zdCBjaGFyICpfdmVyc2lvbiwgY29uc3QgY2hhciAqX2VuY29kaW5nLCBjb25zdCBjaGFyICpfc3RhbmRhbG9uZSkiIC0tPgorJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTIiPlRpWG1sRGVjbGFyYXRpb248L2E+IChjb25zdCBjaGFyICpfdmVyc2lvbiwgY29uc3QgY2hhciAqX2VuY29kaW5nLCBjb25zdCBjaGFyICpfc3RhbmRhbG9uZSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNvbnN0cnVjdC4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEZWNsYXJhdGlvbjo6VmVyc2lvbiIgcmVmPSJhNiIgYXJncz0iKCkgY29uc3QgIiAtLT4KK2NvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E2Ij5WZXJzaW9uPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlZlcnNpb24uIFdpbGwgcmV0dXJuIGFuIGVtcHR5IHN0cmluZyBpZiBub25lIHdhcyBmb3VuZC4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTciPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEZWNsYXJhdGlvbjo6RW5jb2RpbmciIHJlZj0iYTciIGFyZ3M9IigpIGNvbnN0ICIgLS0+Citjb25zdCBjaGFyICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhNyI+RW5jb2Rpbmc8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+RW5jb2RpbmcuIFdpbGwgcmV0dXJuIGFuIGVtcHR5IHN0cmluZyBpZiBub25lIHdhcyBmb3VuZC4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTgiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEZWNsYXJhdGlvbjo6U3RhbmRhbG9uZSIgcmVmPSJhOCIgYXJncz0iKCkgY29uc3QgIiAtLT4KK2NvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E4Ij5TdGFuZGFsb25lPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPklzIHRoaXMgYSBzdGFuZGFsb25lIGRvY3VtZW50PyA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhOSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERlY2xhcmF0aW9uOjpDbG9uZSIgcmVmPSJhOSIgYXJncz0iKCkgY29uc3QgIiAtLT4KK3ZpcnR1YWwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhOSI+Q2xvbmU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q3JlYXRlcyBhIGNvcHkgb2YgdGhpcyBEZWNsYXJhdGlvbiBhbmQgcmV0dXJucyBpdC4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTEwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRGVjbGFyYXRpb246OlByaW50IiByZWY9ImExMCIgYXJncz0iKEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0ICIgLS0+Cit2aXJ0dWFsIHZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMTAiPlByaW50PC9hPiAoRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5QcmludCB0aGlzIGRlY2xhcmF0aW9uIHRvIGEgRklMRSBzdHJlYW0uIDxicj48L3RkPjwvdHI+CiA8L3RhYmxlPgotPGhyLz48YSBuYW1lPSJfZGV0YWlscyI+PC9hPjxoMj5EZXRhaWxlZCBEZXNjcmlwdGlvbjwvaDI+Ci08cD5JbiBjb3JyZWN0IFhNTCB0aGUgZGVjbGFyYXRpb24gaXMgdGhlIGZpcnN0IGVudHJ5IGluIHRoZSBmaWxlLiA8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotCQkmbHQ7P3htbCB2ZXJzaW9uPSIxLjAiIHN0YW5kYWxvbmU9InllcyI/Jmd0OwotCTwvcHJlPjwvZGl2PjxwPlRpbnlYbWwgd2lsbCBoYXBwaWx5IHJlYWQgb3Igd3JpdGUgZmlsZXMgd2l0aG91dCBhIGRlY2xhcmF0aW9uLCBob3dldmVyLiBUaGVyZSBhcmUgMyBwb3NzaWJsZSBhdHRyaWJ1dGVzIHRvIHRoZSBkZWNsYXJhdGlvbjogdmVyc2lvbiwgZW5jb2RpbmcsIGFuZCBzdGFuZGFsb25lLjwvcD4KLTxwPk5vdGU6IEluIHRoaXMgdmVyc2lvbiBvZiB0aGUgY29kZSwgdGhlIGF0dHJpYnV0ZXMgYXJlIGhhbmRsZWQgYXMgc3BlY2lhbCBjYXNlcywgbm90IGdlbmVyaWMgYXR0cmlidXRlcywgc2ltcGx5IGJlY2F1c2UgdGhlcmUgY2FuIG9ubHkgYmUgYXQgbW9zdCAzIGFuZCB0aGV5IGFyZSBhbHdheXMgdGhlIHNhbWUuIDwvcD4KLTxoci8+PGgyPk1lbWJlciBGdW5jdGlvbiBEb2N1bWVudGF0aW9uPC9oMj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhYmY2MzAzZGI0YmQwNWI1YmU1NTQwMzY4MTdmZjFjYjQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEZWNsYXJhdGlvbjo6UHJpbnQiIHJlZj0iYWJmNjMwM2RiNGJkMDViNWJlNTU0MDM2ODE3ZmYxY2I0IiBhcmdzPSIoRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+dmlydHVhbCB2b2lkIFRpWG1sRGVjbGFyYXRpb246OlByaW50IDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5GSUxFICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmNmaWxlPC9lbT4sIDwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFta2V5Ij48L3RkPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5pbnQmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmRlcHRoPC9lbT48L3RkPjx0ZD4mbmJzcDs8L3RkPgotICAgICAgICA8L3RyPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkPik8L3RkPgotICAgICAgICAgIDx0ZD48L3RkPjx0ZD48L3RkPjx0ZD4gY29uc3Q8Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+Ci0KLTxwPkFsbCBUaW55WG1sIGNsYXNzZXMgY2FuIHByaW50IHRoZW1zZWx2ZXMgdG8gYSBmaWxlc3RyZWFtIG9yIHRoZSBzdHJpbmcgY2xhc3MgKFRpWG1sU3RyaW5nIGluIG5vbi1TVEwgbW9kZSwgc3RkOjpzdHJpbmcgaW4gU1RMIG1vZGUuIDwvcD4KLTxwPikgRWl0aGVyIG9yIGJvdGggY2ZpbGUgYW5kIHN0ciBjYW4gYmUgbnVsbC48L3A+Ci08cD5UaGlzIGlzIGEgZm9ybWF0dGVkIHByaW50LCBhbmQgd2lsbCBpbnNlcnQgdGFicyBhbmQgbmV3bGluZXMuPC9wPgotPHA+KEZvciBhbiB1bmZvcm1hdHRlZCBzdHJlYW0sIHVzZSB0aGUgJmx0OyZsdDsgb3BlcmF0b3IuKSA8L3A+Ci0KLTxwPkltcGxlbWVudHMgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwZGU1NmIzZjJlZjE0YzY1MDkxYTNiOTE2NDM3YjUxMiI+VGlYbWxCYXNlPC9hPi48L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08aHIvPlRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGlzIGNsYXNzIHdhcyBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIGZpbGU6PHVsPgotPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPjwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKKzxocj48YSBuYW1lPSJfZGV0YWlscyI+PC9hPjxoMj5EZXRhaWxlZCBEZXNjcmlwdGlvbjwvaDI+CitJbiBjb3JyZWN0IFhNTCB0aGUgZGVjbGFyYXRpb24gaXMgdGhlIGZpcnN0IGVudHJ5IGluIHRoZSBmaWxlLiAKKzxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JCSZsdDs/eG1sIHZlcnNpb249IjEuMCIgc3RhbmRhbG9uZT0ieWVzIj8mZ3Q7CisJPC9wcmU+PC9kaXY+PHA+CitUaW55WG1sIHdpbGwgaGFwcGlseSByZWFkIG9yIHdyaXRlIGZpbGVzIHdpdGhvdXQgYSBkZWNsYXJhdGlvbiwgaG93ZXZlci4gVGhlcmUgYXJlIDMgcG9zc2libGUgYXR0cmlidXRlcyB0byB0aGUgZGVjbGFyYXRpb246IHZlcnNpb24sIGVuY29kaW5nLCBhbmQgc3RhbmRhbG9uZS48cD4KK05vdGU6IEluIHRoaXMgdmVyc2lvbiBvZiB0aGUgY29kZSwgdGhlIGF0dHJpYnV0ZXMgYXJlIGhhbmRsZWQgYXMgc3BlY2lhbCBjYXNlcywgbm90IGdlbmVyaWMgYXR0cmlidXRlcywgc2ltcGx5IGJlY2F1c2UgdGhlcmUgY2FuIG9ubHkgYmUgYXQgbW9zdCAzIGFuZCB0aGV5IGFyZSBhbHdheXMgdGhlIHNhbWUuCis8cD4KKzxocj5UaGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhpcyBjbGFzcyB3YXMgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBmaWxlOjx1bD4KKzxsaT48YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGgtc291cmNlLmh0bWwiPnRpbnl4bWwuaDwvYT48L3VsPgorPGhyIHNpemU9IjEiPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFNhdCBPY3QgOCAxNDoxNTozMCAyMDA1IGZvciBUaW55WG1sIGJ5Jm5ic3A7CiA8YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgorPGltZyBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iIGFsaWduPSJtaWRkbGUiIGJvcmRlcj0iMCI+PC9hPiAxLjQuNCA8L3NtYWxsPjwvYWRkcmVzcz4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbERlY2xhcmF0aW9uLnBuZyBiL2RvY3MvY2xhc3NUaVhtbERlY2xhcmF0aW9uLnBuZwppbmRleCBjMTZkNzFiLi5jMTA5MTJiIDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxEZWNsYXJhdGlvbi5wbmcKKysrIGIvZG9jcy9jbGFzc1RpWG1sRGVjbGFyYXRpb24ucG5nCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbERvY3VtZW50LW1lbWJlcnMuaHRtbCBiL2RvY3MvY2xhc3NUaVhtbERvY3VtZW50LW1lbWJlcnMuaHRtbAppbmRleCAwMjcyNTczLi5jOGJmNjc1IDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxEb2N1bWVudC1tZW1iZXJzLmh0bWwKKysrIGIvZG9jcy9jbGFzc1RpWG1sRG9jdW1lbnQtbWVtYmVycy5odG1sCkBAIC0xLDEyOCArMSw5OSBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PWlzby04ODU5LTEiPgogPHRpdGxlPlRpbnlYbWw6IE1lbWJlciBMaXN0PC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotPGgxPlRpWG1sRG9jdW1lbnQgTWVtYmVyIExpc3Q8L2gxPlRoaXMgaXMgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgbWVtYmVycyBmb3IgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT4sIGluY2x1ZGluZyBhbGwgaW5oZXJpdGVkIG1lbWJlcnMuPHRhYmxlPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FhNTQ1YWFlMzI1ZDk3NTJhZDY0MTIwYmM0ZWNmOTM5YSI+QWNjZXB0PC9hPihUaVhtbFZpc2l0b3IgKmNvbnRlbnQpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzA4ZTdmOTUzZGY2MWQ0ZDJkMTJmNzMxNzE1NTBhNGIiPkNsZWFyPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FjNjZiOGMyOGRiODYzNjMzMTU3MTJhMzU3NGU4N2MzNSI+Q2xlYXJFcnJvcjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNDk2ODY2MWNhYjRhMWY0NGEyMzMyOWM2ZjhkYjE5MDciPkNsb25lPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtwcm90ZWN0ZWQsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiNTRiZmI5YjcwZmU2ZGQyNzZlN2IyNzljYWI3ZjAwMyI+Q29sdW1uPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNmJkOGMzMTVjMWFjYjA5ZTM0MTA3Yjg3MzY1MDU5NDgiPkVuY29kZVN0cmluZzwvYT4oY29uc3QgVElYTUxfU1RSSU5HICZhbXA7c3RyLCBUSVhNTF9TVFJJTkcgKm91dCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW3N0YXRpY108L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E2ZGZjMDFhNmU1ZDU4ZTU2YWNkNTM3ZGZkM2JkZWIyOSI+RXJyb3I8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FhOTBiYzYzMGVlNTIwM2M2MTA5Y2E1ZmFkMzMyMzY0OSI+RXJyb3JDb2w8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E5ZDBmNjg5ZjZlMDllYTQ5NGVhNTQ3YmU4ZDc5YzI1ZSI+RXJyb3JEZXNjPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhZjk2ZmMyZjNmOWVjNjQyMjc4MmJmZTkxNmM5ZTc3OGYiPkVycm9ySWQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FmMzBlZmM3NWU4MDRhYTJlOTJmYjhiZTNhOGNiNjc2ZSI+RXJyb3JSb3c8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ0YzhlZWUyNmJiZTJkMWIyNzYyMDM4ZGY5ZGRlMmYwIj5GaXJzdENoaWxkPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMWYwNTgyOGQwMjMxNTA3MDZlZWIxNmQ2ZmIzZjYzNTUiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYmM4YmYzMmJlNjQxOWVjNDUzYTczMTg2OGRlMTk1NTQiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTA3ZjYyMDBhNTk1NmM3MjNjNWI1MmQ3MGYyOWM0NmY2Ij5GaXJzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMGQyNjY5Y2NiNWUyOWUwMmZjYjBlNDQwODY4NWVmNiI+Rmlyc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmNGZiNjUyZjZiZDc5YWUwZDVjZTdkMGY3ZDNjMGZiYSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWNjZGEyYzZiNDVjMjViYjVhNmY5YzM0MDdhNjQ0ZTYxIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3QgY2hhciAqX3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzI3YWQ0YmJkOTAwNzNjNWRmYzkzMWIwNzMxNGY1ZjciPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3ZjFkNzI5MTg4MDUzNGMxZTVjZGViMzkyZDhjMWY0NSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODBlMzk3ZmE5NzNjZjUzMjNlMzNiMDcxNTRiMDI0ZjMiPkdldERvY3VtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E2NTU5YTUzMGNhNjc2M2ZjMzAxYTE0ZDc3ZWQyOGMxNyI+R2V0VXNlckRhdGE8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWQwMTIwMjEwZTQ2ODBlZjIwODg2MDE3NTNjZTBlZGU0Ij5HZXRVc2VyRGF0YTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWQ5Yjc1ZTU0ZWMxOTMwMWM4YjRkNWZmNTgzZDBiM2Q1Ij5JbnNlcnRBZnRlckNoaWxkPC9hPihUaVhtbE5vZGUgKmFmdGVyVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMGMxNDZmYTJmZmYwMTU3YjY4MTU5NDEwMmY0OGNiYzciPkluc2VydEJlZm9yZUNoaWxkPC9hPihUaVhtbE5vZGUgKmJlZm9yZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWQ3ZDQ2MzBlMWEyYTkxNmVkZGExNmJlMjI0NDhhOGJhIj5JbnNlcnRFbmRDaGlsZDwvYT4oY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDRiMTQ3MjUzMWM2NDdhMjViMTg0MGE4N2FlNDI0MzgiPklzV2hpdGVTcGFjZUNvbmRlbnNlZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4NjIxMTk2YmEzNzA1ZmEyMjZiZWY0YTc2MWNjNTFiNiI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZGZhZWYzNWEwNzZiOTM0M2FkYzE0MjA3NTczNzZjMzkiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oY29uc3QgY2hhciAqdmFsdWUsIGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExY2JhYWY4ZTgyYzA5YWQ3NjNkNTI2MTZkNzU3MjRkZiI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNmU5YWQ1M2UyZjU0NDViMTRiZjMyNWM5MGFhODYyYyI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY0MzJkMmIyNDk1ZjZjYWY5Y2I0Mjc4ZGY3MDZhMDMxIj5MYXN0Q2hpbGQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWJhZDViZjEwNTljNDgxMjdiOTU4NzExZWY4OWU4ZTVkIj5MYXN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI1NmQwY2RiZmNmZWNjYWU4M2YzYTFjOTc0N2E4YjYzIj5MYXN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY5NzcyYzkyMDJmNzA1NTNmOTQwYjE1YzA2YjA3YmUzIj5MYXN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNWQyOTQ0MmFlNDZkZTZkMDE2ODQyOTE1NjE5N2JmYzYiPkxpbmtFbmRDaGlsZDwvYT4oVGlYbWxOb2RlICphZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNGM4NTJhODg5YzAyY2YyNTExMTdmZDFkOWZlMTg0NWYiPkxvYWRGaWxlPC9hPihUaVhtbEVuY29kaW5nIGVuY29kaW5nPVRJWE1MX0RFRkFVTFRfRU5DT0RJTkcpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTg3OWNkZjVlOTgxYjhiMmQyZWY4MmYyNTQ2ZGQyOGZiIj5Mb2FkRmlsZTwvYT4oY29uc3QgY2hhciAqZmlsZW5hbWUsIFRpWG1sRW5jb2RpbmcgZW5jb2Rpbmc9VElYTUxfREVGQVVMVF9FTkNPRElORyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNDFmNmZlNzIwMDg2NGQxZGNhNjYzZDIzMGNhZjhkYjYiPkxvYWRGaWxlPC9hPihGSUxFICosIFRpWG1sRW5jb2RpbmcgZW5jb2Rpbmc9VElYTUxfREVGQVVMVF9FTkNPRElORyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMThhZTZlZDM0ZmVkNzk5MWViYzIyMDg2MmRmYWM4ODQiPkxvYWRGaWxlPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO2ZpbGVuYW1lLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nPVRJWE1MX0RFRkFVTFRfRU5DT0RJTkcpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTFiOTRkMmY3ZmE3YWIyNWE1YThlOGQ0MzQwYzQ0OWM5Ij5OZXh0U2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTc1N2MxZjRkMDFlOGM5NTk2ZmZkYmQ1NjFjNzZhZWEiPk5leHRTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWY4NTRiYWViYTM4NGY1ZmU5ODU5ZjVhZWUwM2I1NDhlIj5OZXh0U2libGluZzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTJlNjFjMGI4OWE3N2UzNmEwZThjNjA0OTAwMDNjYjQ2Ij5OZXh0U2libGluZzwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzNhY2Y5MjlkNDlkMTBiZDBlNWZiM2QzMWIwMzcyZDEiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDcxYmE3N2ZkN2FiNzk0MDJmYTg0YjdlOWI4NjA3YjMiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzU3MmQwYWY5ZDFlNjk2ZWUzZjA1ZDhiYjVlYmI0NjMiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTA2OTU4ZTM0NDA2NzI5YTRlNGM1MzI2ZWEzOWQwODEiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FlZWQyMWFkMzA2MzBlZjZlN2ZhZjA5NjEyN2VkYzlmMyI+Tm9DaGlsZHJlbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgzNmVkZWQ0OTIwYWI5ZTllZjI4NDk2ZjQ4Y2Q5NWEyIj5Ob2RlVHlwZTwvYT4gZW51bSBuYW1lPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTg2Y2Q0OWNmYjE3YTg0NGMwMDEwYjMxMzZhYzk2NmM3Ij5vcGVyYXRvciZsdDsmbHQ7PC9hPihzdGQ6Om9zdHJlYW0gJmFtcDtvdXQsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MmVmMTdlNzA4MGRmMjQ5MGNmODdiZGUzODA2ODVhYiI+b3BlcmF0b3ImbHQ7Jmx0OzwvYT4oc3RkOjpzdHJpbmcgJmFtcDtvdXQsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiNTdiZDQyNjU2M2M5MjY4NDRmNjVhNzg0MTJlMThiOSI+b3BlcmF0b3ImZ3Q7Jmd0OzwvYT4oc3RkOjppc3RyZWFtICZhbXA7aW4sIFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiNjQzMDQzMTMyZmZkNzk0Zjg2MDI2ODVkMzRhOTgyZSI+UGFyZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTdlYmFiZTM2OTI2ZWYzOThlNzhkZWMwZDBhZDAzNzgiPlBhcnNlPC9hPihjb25zdCBjaGFyICpwLCBUaVhtbFBhcnNpbmdEYXRhICpkYXRhPTAsIFRpWG1sRW5jb2RpbmcgZW5jb2Rpbmc9VElYTUxfREVGQVVMVF9FTkNPRElORyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWMyY2Q4OTI3Njg3MjYyNzBlNTExYjJhYjMyZGU0ZDEwIj5QcmV2aW91c1NpYmxpbmc8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1YmRkNDkzMjdlZWMxZTYwOWI3ZDIyYWY3MDZiODMxNiI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NTgyNzZmNTdkMzVkNWQ0MjU2ZDFkYzFhMmMzOThhYiI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjYzhhMDQzNGM3ZjQwMWQ0YTNiNmRlZTc3YzFhNTkxMiI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FmMDgzODllYzcwZWU5YjJkZTdmODAwZTIwNmExODUxMCI+UHJpbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E4NzAxZmRhMWZhMzFiMjVhYmJjOWMwZGY0MmRhMTBlOCI+UHJpbnQ8L2E+KEZJTEUgKmNmaWxlLCBpbnQgZGVwdGg9MCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FlMTlkODUxMGVmYzkwNTk2NTUyZjRmZWVhYzlhOGZiZiI+UmVtb3ZlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqcmVtb3ZlVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMGM0OWU3MzlhMTdiOTkzODA1MGMyMmNkODk2MTdmYmQiPlJlcGxhY2VDaGlsZDwvYT4oVGlYbWxOb2RlICpyZXBsYWNlVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7d2l0aFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FkMDlkMTc5MjdmOTA4ZjQwZWZiNDA2YWYyZmI4NzNiZSI+Um9vdEVsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTAyNGJjZWIwNzAxODhkZjkyYzJhOGQ4ODUyZGQwODUzIj5Sb3c8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMjFjMGFlYjBkMGE3MjAxNjlhZDRhYzg5NTIzZWJlOTMiPlNhdmVGaWxlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FlODY5ZjVlYmY3ZmM1NGM0YTFkNzM3ZmI0Njg5ZmQ0NCI+U2F2ZUZpbGU8L2E+KGNvbnN0IGNoYXIgKmZpbGVuYW1lKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhY2YxNjcyYjQ1MzhjNmQxZDQ0MWY5ZjEwOGFlYTJiZjQiPlNhdmVGaWxlPC9hPihGSUxFICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EzZDRmYWUwNDYzZjNmMDM2NzliYTBiN2NmNmYyZGY1MiI+U2F2ZUZpbGU8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7ZmlsZW5hbWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwZjc5OWVjNjQ1YmZiOGQ4YTk2OWU4MzQ3OGYzNzljMSI+U2V0Q29uZGVuc2VXaGl0ZVNwYWNlPC9hPihib29sIGNvbmRlbnNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNTFkYWM1NjMxNmY4OWIzNWJkYjdkMGQ0MzNiYTk4OGUiPlNldFRhYlNpemU8L2E+KGludCBfdGFic2l6ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYzZiM2UwZjc5MDkzMGQ0OTcwZWMzMDc2NGU5MzdiNWQiPlNldFVzZXJEYXRhPC9hPih2b2lkICp1c2VyKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMmEzODMyOWNhNWQzZjI4Zjk4Y2U5MzJiODI5OWFlOTAiPlNldFZhbHVlPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNTk4ZDVmNDQ4MDQyYzFhYmJlYWU0NTAzZGQ0NWZmMiI+U2V0VmFsdWU8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTlmNWU4NDMzNTcwOGZkZTk4NDAwMjMwZjlmMTI2NTljIj5UaVhtbERvY3VtZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWU0NTA4YjQ1MmQwYzMwNjFkYjA4NWYzZGIyN2I4Mzk2Ij5UaVhtbERvY3VtZW50PC9hPihjb25zdCBjaGFyICpkb2N1bWVudE5hbWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTJjNmU1OGZiOTliZmE3NmNjNjEzZjE2ODQwMDIyMjI1Ij5UaVhtbERvY3VtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO2RvY3VtZW50TmFtZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FhMGE1MDg2ZjllYWVlOTEwYmJmZGM3Zjk3NWUyNjU3NCI+VG9Db21tZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzgzZTA2YTA3ODdmNzA2Mzk1MzkzNDg2Nzk5MGY4NDkiPlRvQ29tbWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhOWY0M2U2OTg0ZmM3ZDRhZmQ2ZWIzMjcxNGM2YjdiNzIiPlRvRGVjbGFyYXRpb248L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MDI3MTM2Y2E4MjBmZjRhNjM2YjYwNzIzMWI2YTZkZiI+VG9EZWNsYXJhdGlvbjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTFkYzk3N2JkZTNlNGZlODVhOGViOWQ4OGEzNWVmNWE0Ij5Ub0RvY3VtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTAyNWQ5NDJhMWYzMjhmZDc0MmQ1NDVlMzdlZmRkNDIiPlRvRG9jdW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzJhYmVkOTZkYzk2NjdhYjllMGEyYTI3NTMwMWJiMWMiPlRvRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWE2NWQwMDAyMjMxODdkMjJhNGRjZWJkNzQ3OWU5ZWJjIj5Ub0VsZW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTk1YTQ2YTUyYzUyNTk5MmQ2YjRlZTA4YmViMTRjZDY5Ij5Ub1RleHQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzZGRmYmNhYzc4ZmJlYTA0MWZhZDU3ZTVjNmQ2MGEwMyI+VG9UZXh0PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmZDcyMDVjZjMxZDdhMzc2OTI5ZjhhMzY5MzA2MjdhMiI+VG9Vbmtub3duPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDZkZTVhZjg1MjY2OGM3ZTRhZjBkMDljMjA1ZjBiMGQiPlRvVW5rbm93bjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTdiOTlkNWM5N2Q2N2E0MmI5NzUyZjUyMTBhMWJhNWUiPlR5cGU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiMjQyYzAxNTkwMTkxZjY0NDU2OWZhODlhMDgwZDk3YyI+dXNlckRhdGE8L2E+PC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtwcm90ZWN0ZWRdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3Nzk0M2ViOTBkMTJjMjg5MmIxMzM3YTlmNTkxOGI0MSI+VmFsdWU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2ZDllNTA1NjE5ZDM5YmY1MGJmZDk2MDljOTE2OWVhNSI+VmFsdWVTdHI8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLTwvdGFibGU+PC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKKzxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIj4KKzwvaGVhZD48Ym9keT4KKzwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS40LjQgLS0+Cis8ZGl2IGNsYXNzPSJxaW5kZXgiPjxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImluZGV4Lmh0bWwiPk1haW4mbmJzcDtQYWdlPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImhpZXJhcmNoeS5odG1sIj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+Q2xhc3MmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZpbGVzLmh0bWwiPkZpbGUmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj5DbGFzcyZuYnNwO01lbWJlcnM8L2E+PC9kaXY+Cis8aDE+VGlYbWxEb2N1bWVudCBNZW1iZXIgTGlzdDwvaDE+VGhpcyBpcyB0aGUgY29tcGxldGUgbGlzdCBvZiBtZW1iZXJzIGZvciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPiwgaW5jbHVkaW5nIGFsbCBpbmhlcml0ZWQgbWVtYmVycy48cD48dGFibGU+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNSI+Q2xlYXI8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTIyIj5DbGVhckVycm9yPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2IxIj5DbG9uZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbcHJvdGVjdGVkLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNCI+Q29sdW1uPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE1Ij5FcnJvcjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE5Ij5FcnJvckNvbDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTYiPkVycm9yRGVzYzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE3Ij5FcnJvcklkPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTgiPkVycm9yUm93PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgiPkZpcnN0Q2hpbGQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMCI+Rmlyc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMSI+Rmlyc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE2Ij5GaXJzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNyI+Rmlyc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MCI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUyIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NCI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU1Ij5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NyI+R2V0RG9jdW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI5Ij5JbnNlcnRBZnRlckNoaWxkPC9hPihUaVhtbE5vZGUgKmFmdGVyVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjgiPkluc2VydEJlZm9yZUNoaWxkPC9hPihUaVhtbE5vZGUgKmJlZm9yZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI2Ij5JbnNlcnRFbmRDaGlsZDwvYT4oY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNlMSI+SXNXaGl0ZVNwYWNlQ29uZGVuc2VkPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTIwIj5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyMiI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBjaGFyICp2YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI0Ij5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI1Ij5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBUaVhtbE5vZGUgKnByZXZpb3VzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTMiPkxhc3RDaGlsZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTUiPkxhc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE4Ij5MYXN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE5Ij5MYXN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjciPkxpbmtFbmRDaGlsZDwvYT4oVGlYbWxOb2RlICphZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNiI+TG9hZEZpbGU8L2E+KFRpWG1sRW5jb2RpbmcgZW5jb2Rpbmc9VElYTUxfREVGQVVMVF9FTkNPRElORyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhOCI+TG9hZEZpbGU8L2E+KGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nPVRJWE1MX0RFRkFVTFRfRU5DT0RJTkcpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTEwIj5Mb2FkRmlsZTwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtmaWxlbmFtZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZz1USVhNTF9ERUZBVUxUX0VOQ09ESU5HKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzOCI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM5Ij5OZXh0U2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MCI+TmV4dFNpYmxpbmc8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MiI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ0Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ2Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ4Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ5Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTkiPk5vQ2hpbGRyZW48L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI3c3Ij5Ob2RlVHlwZTwvYT4gZW51bSBuYW1lPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjMiPm9wZXJhdG9yJmx0OyZsdDs8L2E+KHN0ZDo6b3N0cmVhbSAmYW1wO291dCwgY29uc3QgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjQiPm9wZXJhdG9yJmx0OyZsdDs8L2E+KHN0ZDo6c3RyaW5nICZhbXA7b3V0LCBjb25zdCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNuMiI+b3BlcmF0b3ImZ3Q7Jmd0OzwvYT4oc3RkOjppc3RyZWFtICZhbXA7aW4sIFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2Ij5QYXJlbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExMiI+UGFyc2U8L2E+KGNvbnN0IGNoYXIgKnAsIFRpWG1sUGFyc2luZ0RhdGEgKmRhdGE9MCwgVGlYbWxFbmNvZGluZyBlbmNvZGluZz1USVhNTF9ERUZBVUxUX0VOQ09ESU5HKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzIiPlByZXZpb3VzU2libGluZzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM0Ij5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM2Ij5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM3Ij5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTIzIj5QcmludDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTI0Ij5QcmludDwvYT4oRklMRSAqY2ZpbGUsIGludCBkZXB0aD0wKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMxIj5SZW1vdmVDaGlsZDwvYT4oVGlYbWxOb2RlICpyZW1vdmVUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMCI+UmVwbGFjZUNoaWxkPC9hPihUaVhtbE5vZGUgKnJlcGxhY2VUaGlzLCBjb25zdCBUaVhtbE5vZGUgJmFtcDt3aXRoVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTEzIj5Sb290RWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMyI+Um93PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTciPlNhdmVGaWxlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E5Ij5TYXZlRmlsZTwvYT4oY29uc3QgY2hhciAqZmlsZW5hbWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExMSI+U2F2ZUZpbGU8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7ZmlsZW5hbWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2UwIj5TZXRDb25kZW5zZVdoaXRlU3BhY2U8L2E+KGJvb2wgY29uZGVuc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMCI+U2V0VGFiU2l6ZTwvYT4oaW50IF90YWJzaXplKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzIj5TZXRWYWx1ZTwvYT4oY29uc3QgY2hhciAqX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNCI+U2V0VmFsdWU8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTAiPlRpWG1sRG9jdW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMSI+VGlYbWxEb2N1bWVudDwvYT4oY29uc3QgY2hhciAqZG9jdW1lbnROYW1lKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyIj5UaVhtbERvY3VtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO2RvY3VtZW50TmFtZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MiI+VG9Db21tZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjgiPlRvQ29tbWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjUiPlRvRGVjbGFyYXRpb248L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MSI+VG9EZWNsYXJhdGlvbjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjAiPlRvRG9jdW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NiI+VG9Eb2N1bWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjEiPlRvRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY3Ij5Ub0VsZW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY0Ij5Ub1RleHQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MCI+VG9UZXh0PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MyI+VG9Vbmtub3duPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjkiPlRvVW5rbm93bjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTYiPlR5cGU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI3AxIj51c2VyRGF0YTwvYT48L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW3Byb3RlY3RlZF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEiPlZhbHVlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMiI+VmFsdWVTdHI8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKzwvdGFibGU+PGhyIHNpemU9IjEiPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFNhdCBPY3QgOCAxNDoxNTozMCAyMDA1IGZvciBUaW55WG1sIGJ5Jm5ic3A7CiA8YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgorPGltZyBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iIGFsaWduPSJtaWRkbGUiIGJvcmRlcj0iMCI+PC9hPiAxLjQuNCA8L3NtYWxsPjwvYWRkcmVzcz4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwgYi9kb2NzL2NsYXNzVGlYbWxEb2N1bWVudC5odG1sCmluZGV4IGI0NmJiMjcuLjU0MmFlMmIgMTAwNjQ0Ci0tLSBhL2RvY3MvY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwKKysrIGIvZG9jcy9jbGFzc1RpWG1sRG9jdW1lbnQuaHRtbApAQCAtMSw0MzcgKzEsNDQ3IEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIj4KKzxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9aXNvLTg4NTktMSI+CiA8dGl0bGU+VGlueVhtbDogVGlYbWxEb2N1bWVudCBDbGFzcyBSZWZlcmVuY2U8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci08aDE+VGlYbWxEb2N1bWVudCBDbGFzcyBSZWZlcmVuY2U8L2gxPjwhLS0gZG94eXRhZzogY2xhc3M9IlRpWG1sRG9jdW1lbnQiIC0tPjwhLS0gZG94eXRhZzogaW5oZXJpdHM9IlRpWG1sTm9kZSIgLS0+Ci08cD5BbHdheXMgdGhlIHRvcCBsZXZlbCBub2RlLiAgCi08YSBocmVmPSIjX2RldGFpbHMiPk1vcmUuLi48L2E+PC9wPgotCi08cD48Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT48L3A+Ci08ZGl2IGNsYXNzPSJkeW5oZWFkZXIiPgotSW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxEb2N1bWVudDo8L2Rpdj4KLTxkaXYgY2xhc3M9ImR5bnNlY3Rpb24iPgotIDxkaXYgY2xhc3M9ImNlbnRlciI+Ci0gIDxpbWcgc3JjPSJjbGFzc1RpWG1sRG9jdW1lbnQucG5nIiB1c2VtYXA9IiNUaVhtbERvY3VtZW50X21hcCIgYWx0PSIiLz4KLSAgPG1hcCBpZD0iVGlYbWxEb2N1bWVudF9tYXAiIG5hbWU9IlRpWG1sRG9jdW1lbnRfbWFwIj4KLTxhcmVhIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIGFsdD0iVGlYbWxOb2RlIiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDU2LDk5LDgwIi8+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIiBhbHQ9IlRpWG1sQmFzZSIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMCwwLDk5LDI0Ii8+Cis8bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+Cis8L2hlYWQ+PGJvZHk+Cis8IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNC40IC0tPgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJpbmRleC5odG1sIj5NYWluJm5ic3A7UGFnZTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJoaWVyYXJjaHkuaHRtbCI+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPkNsYXNzJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmaWxlcy5odG1sIj5GaWxlJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+Q2xhc3MmbmJzcDtNZW1iZXJzPC9hPjwvZGl2PgorPGgxPlRpWG1sRG9jdW1lbnQgQ2xhc3MgUmVmZXJlbmNlPC9oMT48IS0tIGRveHl0YWc6IGNsYXNzPSJUaVhtbERvY3VtZW50IiAtLT48IS0tIGRveHl0YWc6IGluaGVyaXRzPSJUaVhtbE5vZGUiIC0tPkFsd2F5cyB0aGUgdG9wIGxldmVsIG5vZGUuICAKKzxhIGhyZWY9IiNfZGV0YWlscyI+TW9yZS4uLjwvYT4KKzxwPgorPGNvZGU+I2luY2x1ZGUgJmx0OzxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aC1zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPiZndDs8L2NvZGU+Cis8cD4KKzxwPkluaGVyaXRhbmNlIGRpYWdyYW0gZm9yIFRpWG1sRG9jdW1lbnQ6Cis8cD48Y2VudGVyPjxpbWcgc3JjPSJjbGFzc1RpWG1sRG9jdW1lbnQucG5nIiB1c2VtYXA9IiNUaVhtbERvY3VtZW50X21hcCIgYm9yZGVyPSIwIiBhbHQ9IiI+PC9jZW50ZXI+Cis8bWFwIG5hbWU9IlRpWG1sRG9jdW1lbnRfbWFwIj4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIGFsdD0iVGlYbWxOb2RlIiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDU2LDk5LDgwIj4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiIGFsdD0iVGlYbWxCYXNlIiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDAsOTksMjQiPgogPC9tYXA+Ci0gPC9kaXY+Ci08L2Rpdj4KKzxhIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC1tZW1iZXJzLmh0bWwiPkxpc3Qgb2YgYWxsIG1lbWJlcnMuPC9hPjx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+Cis8dHI+PHRkPjwvdGQ+PC90cj4KKzx0cj48dGQgY29sc3Bhbj0iMiI+PGJyPjxoMj5QdWJsaWMgTWVtYmVyIEZ1bmN0aW9uczwvaDI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpUaVhtbERvY3VtZW50IiByZWY9ImEwIiBhcmdzPSIoKSIgLS0+CismbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMCI+VGlYbWxEb2N1bWVudDwvYT4gKCk8L3RkPjwvdHI+CiAKLTxwPjxhIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC1tZW1iZXJzLmh0bWwiPkxpc3Qgb2YgYWxsIG1lbWJlcnMuPC9hPjwvcD4KLTx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+Ci08dHI+PHRkIGNvbHNwYW49IjIiPjxoMj5QdWJsaWMgTWVtYmVyIEZ1bmN0aW9uczwvaDI+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhOWY1ZTg0MzM1NzA4ZmRlOTg0MDAyMzBmOWYxMjY1OWMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6VGlYbWxEb2N1bWVudCIgcmVmPSJhOWY1ZTg0MzM1NzA4ZmRlOTg0MDAyMzBmOWYxMjY1OWMiIGFyZ3M9IigpIiAtLT4KLSZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E5ZjVlODQzMzU3MDhmZGU5ODQwMDIzMGY5ZjEyNjU5YyI+VGlYbWxEb2N1bWVudDwvYT4gKCk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DcmVhdGUgYW4gZW1wdHkgZG9jdW1lbnQsIHRoYXQgaGFzIG5vIG5hbWUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhZTQ1MDhiNDUyZDBjMzA2MWRiMDg1ZjNkYjI3YjgzOTYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6VGlYbWxEb2N1bWVudCIgcmVmPSJhZTQ1MDhiNDUyZDBjMzA2MWRiMDg1ZjNkYjI3YjgzOTYiIGFyZ3M9Iihjb25zdCBjaGFyICpkb2N1bWVudE5hbWUpIiAtLT4KLSZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FlNDUwOGI0NTJkMGMzMDYxZGIwODVmM2RiMjdiODM5NiI+VGlYbWxEb2N1bWVudDwvYT4gKGNvbnN0IGNoYXIgKmRvY3VtZW50TmFtZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DcmVhdGUgYSBkb2N1bWVudCB3aXRoIGEgbmFtZS4gVGhlIG5hbWUgb2YgdGhlIGRvY3VtZW50IGlzIGFsc28gdGhlIGZpbGVuYW1lIG9mIHRoZSB4bWwuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMmM2ZTU4ZmI5OWJmYTc2Y2M2MTNmMTY4NDAwMjIyMjUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6VGlYbWxEb2N1bWVudCIgcmVmPSJhMmM2ZTU4ZmI5OWJmYTc2Y2M2MTNmMTY4NDAwMjIyMjUiIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO2RvY3VtZW50TmFtZSkiIC0tPgotJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTJjNmU1OGZiOTliZmE3NmNjNjEzZjE2ODQwMDIyMjI1Ij5UaVhtbERvY3VtZW50PC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtkb2N1bWVudE5hbWUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29uc3RydWN0b3IuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmJvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNGM4NTJhODg5YzAyY2YyNTExMTdmZDFkOWZlMTg0NWYiPkxvYWRGaWxlPC9hPiAoVGlYbWxFbmNvZGluZyBlbmNvZGluZz1USVhNTF9ERUZBVUxUX0VOQ09ESU5HKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkxvYWQgYSBmaWxlIHVzaW5nIHRoZSBjdXJyZW50IGRvY3VtZW50IHZhbHVlLiAgPGEgaHJlZj0iI2E0Yzg1MmE4ODljMDJjZjI1MTExN2ZkMWQ5ZmUxODQ1ZiI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMjFjMGFlYjBkMGE3MjAxNjlhZDRhYzg5NTIzZWJlOTMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6U2F2ZUZpbGUiIHJlZj0iYTIxYzBhZWIwZDBhNzIwMTY5YWQ0YWM4OTUyM2ViZTkzIiBhcmdzPSIoKSBjb25zdCAiIC0tPgotYm9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMWMwYWViMGQwYTcyMDE2OWFkNGFjODk1MjNlYmU5MyI+U2F2ZUZpbGU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNhdmUgYSBmaWxlIHVzaW5nIHRoZSBjdXJyZW50IGRvY3VtZW50IHZhbHVlLiBSZXR1cm5zIHRydWUgaWYgc3VjY2Vzc2Z1bC4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE4NzljZGY1ZTk4MWI4YjJkMmVmODJmMjU0NmRkMjhmYiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpMb2FkRmlsZSIgcmVmPSJhODc5Y2RmNWU5ODFiOGIyZDJlZjgyZjI1NDZkZDI4ZmIiIGFyZ3M9Iihjb25zdCBjaGFyICpmaWxlbmFtZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZz1USVhNTF9ERUZBVUxUX0VOQ09ESU5HKSIgLS0+Ci1ib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTg3OWNkZjVlOTgxYjhiMmQyZWY4MmYyNTQ2ZGQyOGZiIj5Mb2FkRmlsZTwvYT4gKGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nPVRJWE1MX0RFRkFVTFRfRU5DT0RJTkcpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+TG9hZCBhIGZpbGUgdXNpbmcgdGhlIGdpdmVuIGZpbGVuYW1lLiBSZXR1cm5zIHRydWUgaWYgc3VjY2Vzc2Z1bC4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFlODY5ZjVlYmY3ZmM1NGM0YTFkNzM3ZmI0Njg5ZmQ0NCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpTYXZlRmlsZSIgcmVmPSJhZTg2OWY1ZWJmN2ZjNTRjNGExZDczN2ZiNDY4OWZkNDQiIGFyZ3M9Iihjb25zdCBjaGFyICpmaWxlbmFtZSkgY29uc3QgIiAtLT4KLWJvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhZTg2OWY1ZWJmN2ZjNTRjNGExZDczN2ZiNDY4OWZkNDQiPlNhdmVGaWxlPC9hPiAoY29uc3QgY2hhciAqZmlsZW5hbWUpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNhdmUgYSBmaWxlIHVzaW5nIHRoZSBnaXZlbiBmaWxlbmFtZS4gUmV0dXJucyB0cnVlIGlmIHN1Y2Nlc3NmdWwuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmJvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNDFmNmZlNzIwMDg2NGQxZGNhNjYzZDIzMGNhZjhkYjYiPkxvYWRGaWxlPC9hPiAoRklMRSAqLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nPVRJWE1MX0RFRkFVTFRfRU5DT0RJTkcpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+TG9hZCBhIGZpbGUgdXNpbmcgdGhlIGdpdmVuIEZJTEUqLiAgPGEgaHJlZj0iI2E0MWY2ZmU3MjAwODY0ZDFkY2E2NjNkMjMwY2FmOGRiNiI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhY2YxNjcyYjQ1MzhjNmQxZDQ0MWY5ZjEwOGFlYTJiZjQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6U2F2ZUZpbGUiIHJlZj0iYWNmMTY3MmI0NTM4YzZkMWQ0NDFmOWYxMDhhZWEyYmY0IiBhcmdzPSIoRklMRSAqKSBjb25zdCAiIC0tPgotYm9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FjZjE2NzJiNDUzOGM2ZDFkNDQxZjlmMTA4YWVhMmJmNCI+U2F2ZUZpbGU8L2E+IChGSUxFICopIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNhdmUgYSBmaWxlIHVzaW5nIHRoZSBnaXZlbiBGSUxFKi4gUmV0dXJucyB0cnVlIGlmIHN1Y2Nlc3NmdWwuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmJvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMThhZTZlZDM0ZmVkNzk5MWViYzIyMDg2MmRmYWM4ODQiPkxvYWRGaWxlPC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtmaWxlbmFtZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZz1USVhNTF9ERUZBVUxUX0VOQ09ESU5HKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTNkNGZhZTA0NjNmM2YwMzY3OWJhMGI3Y2Y2ZjJkZjUyIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OlNhdmVGaWxlIiByZWY9ImEzZDRmYWUwNDYzZjNmMDM2NzliYTBiN2NmNmYyZGY1MiIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7ZmlsZW5hbWUpIGNvbnN0ICIgLS0+Ci1ib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTNkNGZhZTA0NjNmM2YwMzY3OWJhMGI3Y2Y2ZjJkZjUyIj5TYXZlRmlsZTwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7ZmlsZW5hbWUpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPiZsdDsgU1RMIHN0ZDo6c3RyaW5nIHZlcnNpb24uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZpcnR1YWwgY29uc3QgY2hhciAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE3ZWJhYmUzNjkyNmVmMzk4ZTc4ZGVjMGQwYWQwMzc4Ij5QYXJzZTwvYT4gKGNvbnN0IGNoYXIgKnAsIFRpWG1sUGFyc2luZ0RhdGEgKmRhdGE9MCwgVGlYbWxFbmNvZGluZyBlbmNvZGluZz1USVhNTF9ERUZBVUxUX0VOQ09ESU5HKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlBhcnNlIHRoZSBnaXZlbiBudWxsIHRlcm1pbmF0ZWQgYmxvY2sgb2YgeG1sIGRhdGEuICA8YSBocmVmPSIjYTE3ZWJhYmUzNjkyNmVmMzk4ZTc4ZGVjMGQwYWQwMzc4Ij48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhZDA5ZDE3OTI3ZjkwOGY0MGVmYjQwNmFmMmZiODczYmUiPlJvb3RFbGVtZW50PC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5HZXQgdGhlIHJvb3QgZWxlbWVudCAtLSB0aGUgb25seSB0b3AgbGV2ZWwgZWxlbWVudCAtLSBvZiB0aGUgZG9jdW1lbnQuICA8YSBocmVmPSIjYWQwOWQxNzkyN2Y5MDhmNDBlZmI0MDZhZjJmYjg3M2JlIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+Ym9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E2ZGZjMDFhNmU1ZDU4ZTU2YWNkNTM3ZGZkM2JkZWIyOSI+RXJyb3I8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPklmIGFuIGVycm9yIG9jY3VycywgRXJyb3Igd2lsbCBiZSBzZXQgdG8gdHJ1ZS4gIDxhIGhyZWY9IiNhNmRmYzAxYTZlNWQ1OGU1NmFjZDUzN2RmZDNiZGViMjkiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTlkMGY2ODlmNmUwOWVhNDk0ZWE1NDdiZThkNzljMjVlIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OkVycm9yRGVzYyIgcmVmPSJhOWQwZjY4OWY2ZTA5ZWE0OTRlYTU0N2JlOGQ3OWMyNWUiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci1jb25zdCBjaGFyICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhOWQwZjY4OWY2ZTA5ZWE0OTRlYTU0N2JlOGQ3OWMyNWUiPkVycm9yRGVzYzwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29udGFpbnMgYSB0ZXh0dWFsIChlbmdsaXNoKSBkZXNjcmlwdGlvbiBvZiB0aGUgZXJyb3IgaWYgb25lIG9jY3Vycy4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+aW50Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWY5NmZjMmYzZjllYzY0MjI3ODJiZmU5MTZjOWU3NzhmIj5FcnJvcklkPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5HZW5lcmFsbHksIHlvdSBwcm9iYWJseSB3YW50IHRoZSBlcnJvciBzdHJpbmcgKCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E5ZDBmNjg5ZjZlMDllYTQ5NGVhNTQ3YmU4ZDc5YzI1ZSIgdGl0bGU9IkNvbnRhaW5zIGEgdGV4dHVhbCAoZW5nbGlzaCkgZGVzY3JpcHRpb24gb2YgdGhlIGVycm9yIGlmIG9uZSBvY2N1cnMuIj5FcnJvckRlc2MoKTwvYT4gKS4gIDxhIGhyZWY9IiNhZjk2ZmMyZjNmOWVjNjQyMjc4MmJmZTkxNmM5ZTc3OGYiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5pbnQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhZjMwZWZjNzVlODA0YWEyZTkyZmI4YmUzYThjYjY3NmUiPkVycm9yUm93PC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm5zIHRoZSBsb2NhdGlvbiAoaWYga25vd24pIG9mIHRoZSBlcnJvci4gIDxhIGhyZWY9IiNhZjMwZWZjNzVlODA0YWEyZTkyZmI4YmUzYThjYjY3NmUiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWE5MGJjNjMwZWU1MjAzYzYxMDljYTVmYWQzMzIzNjQ5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OkVycm9yQ29sIiByZWY9ImFhOTBiYzYzMGVlNTIwM2M2MTA5Y2E1ZmFkMzMyMzY0OSIgYXJncz0iKCkgY29uc3QgIiAtLT4KLWludCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FhOTBiYzYzMGVlNTIwM2M2MTA5Y2E1ZmFkMzMyMzY0OSI+RXJyb3JDb2w8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlRoZSBjb2x1bW4gd2hlcmUgdGhlIGVycm9yIG9jY3VyZWQuIFNlZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FmMzBlZmM3NWU4MDRhYTJlOTJmYjhiZTNhOGNiNjc2ZSIgdGl0bGU9IlJldHVybnMgdGhlIGxvY2F0aW9uIChpZiBrbm93bikgb2YgdGhlIGVycm9yLiI+RXJyb3JSb3coKTwvYT4uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNTFkYWM1NjMxNmY4OWIzNWJkYjdkMGQ0MzNiYTk4OGUiPlNldFRhYlNpemU8L2E+IChpbnQgX3RhYnNpemUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNTFkYWM1NjMxNmY4OWIzNWJkYjdkMGQ0MzNiYTk4OGUiIHRpdGxlPSJTZXRUYWJTaXplKCkgYWxsb3dzIHRoZSBlcnJvciByZXBvcnRpbmcgZnVuY3Rpb25zIChFcnJvclJvdygpIGFuZCBFcnJvckNvbCgpKSB0by4uLiI+U2V0VGFiU2l6ZSgpPC9hPiBhbGxvd3MgdGhlIGVycm9yIHJlcG9ydGluZyBmdW5jdGlvbnMgKDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWYzMGVmYzc1ZTgwNGFhMmU5MmZiOGJlM2E4Y2I2NzZlIiB0aXRsZT0iUmV0dXJucyB0aGUgbG9jYXRpb24gKGlmIGtub3duKSBvZiB0aGUgZXJyb3IuIj5FcnJvclJvdygpPC9hPiBhbmQgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhYTkwYmM2MzBlZTUyMDNjNjEwOWNhNWZhZDMzMjM2NDkiIHRpdGxlPSJUaGUgY29sdW1uIHdoZXJlIHRoZSBlcnJvciBvY2N1cmVkLiBTZWUgRXJyb3JSb3coKS4iPkVycm9yQ29sKCk8L2E+KSB0byByZXBvcnQgdGhlIGNvcnJlY3QgdmFsdWVzIGZvciByb3cgYW5kIGNvbHVtbi4gIDxhIGhyZWY9IiNhNTFkYWM1NjMxNmY4OWIzNWJkYjdkMGQ0MzNiYTk4OGUiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj52b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWM2NmI4YzI4ZGI4NjM2MzMxNTcxMmEzNTc0ZTg3YzM1Ij5DbGVhckVycm9yPC9hPiAoKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPklmIHlvdSBoYXZlIGhhbmRsZWQgdGhlIGVycm9yLCBpdCBjYW4gYmUgcmVzZXQgd2l0aCB0aGlzIGNhbGwuICA8YSBocmVmPSIjYWM2NmI4YzI4ZGI4NjM2MzMxNTcxMmEzNTc0ZTg3YzM1Ij48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+dm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FmMDgzODllYzcwZWU5YjJkZTdmODAwZTIwNmExODUxMCI+UHJpbnQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPldyaXRlIHRoZSBkb2N1bWVudCB0byBzdGFuZGFyZCBvdXQgdXNpbmcgZm9ybWF0dGVkIHByaW50aW5nICgicHJldHR5IHByaW50IikuICA8YSBocmVmPSIjYWYwODM4OWVjNzBlZTliMmRlN2Y4MDBlMjA2YTE4NTEwIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE4NzAxZmRhMWZhMzFiMjVhYmJjOWMwZGY0MmRhMTBlOCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpQcmludCIgcmVmPSJhODcwMWZkYTFmYTMxYjI1YWJiYzljMGRmNDJkYTEwZTgiIGFyZ3M9IihGSUxFICpjZmlsZSwgaW50IGRlcHRoPTApIGNvbnN0ICIgLS0+Ci12aXJ0dWFsIHZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhODcwMWZkYTFmYTMxYjI1YWJiYzljMGRmNDJkYTEwZTgiPlByaW50PC9hPiAoRklMRSAqY2ZpbGUsIGludCBkZXB0aD0wKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5QcmludCB0aGlzIERvY3VtZW50IHRvIGEgRklMRSBzdHJlYW0uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMWRjOTc3YmRlM2U0ZmU4NWE4ZWI5ZDg4YTM1ZWY1YTQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6VG9Eb2N1bWVudCIgcmVmPSJhMWRjOTc3YmRlM2U0ZmU4NWE4ZWI5ZDg4YTM1ZWY1YTQiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci12aXJ0dWFsIGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMWRjOTc3YmRlM2U0ZmU4NWE4ZWI5ZDg4YTM1ZWY1YTQiPlRvRG9jdW1lbnQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTEwMjVkOTQyYTFmMzI4ZmQ3NDJkNTQ1ZTM3ZWZkZDQyIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OlRvRG9jdW1lbnQiIHJlZj0iYTEwMjVkOTQyYTFmMzI4ZmQ3NDJkNTQ1ZTM3ZWZkZDQyIiBhcmdzPSIoKSIgLS0+Ci12aXJ0dWFsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTAyNWQ5NDJhMWYzMjhmZDc0MmQ1NDVlMzdlZmRkNDIiPlRvRG9jdW1lbnQ8L2E+ICgpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhYTU0NWFhZTMyNWQ5NzUyYWQ2NDEyMGJjNGVjZjkzOWEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6QWNjZXB0IiByZWY9ImFhNTQ1YWFlMzI1ZDk3NTJhZDY0MTIwYmM0ZWNmOTM5YSIgYXJncz0iKFRpWG1sVmlzaXRvciAqY29udGVudCkgY29uc3QgIiAtLT4KLXZpcnR1YWwgYm9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FhNTQ1YWFlMzI1ZDk3NTJhZDY0MTIwYmM0ZWNmOTM5YSI+QWNjZXB0PC9hPiAoPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIj5UaVhtbFZpc2l0b3I8L2E+ICpjb250ZW50KSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5XYWxrIHRoZSBYTUwgdHJlZSB2aXNpdGluZyB0aGlzIG5vZGUgYW5kIGFsbCBvZiBpdHMgY2hpbGRyZW4uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjb2xzcGFuPSIyIj48aDI+UHJvdGVjdGVkIE1lbWJlciBGdW5jdGlvbnM8L2gyPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj52aXJ0dWFsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTQ5Njg2NjFjYWI0YTFmNDRhMjMzMjljNmY4ZGIxOTA3Ij5DbG9uZTwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q3JlYXRlIGFuIGV4YWN0IGR1cGxpY2F0ZSBvZiB0aGlzIG5vZGUgYW5kIHJldHVybiBpdC4gIDxhIGhyZWY9IiNhNDk2ODY2MWNhYjRhMWY0NGEyMzMyOWM2ZjhkYjE5MDciPjwvYT48YnIvPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNyZWF0ZSBhbiBlbXB0eSBkb2N1bWVudCwgdGhhdCBoYXMgbm8gbmFtZS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6VGlYbWxEb2N1bWVudCIgcmVmPSJhMSIgYXJncz0iKGNvbnN0IGNoYXIgKmRvY3VtZW50TmFtZSkiIC0tPgorJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTEiPlRpWG1sRG9jdW1lbnQ8L2E+IChjb25zdCBjaGFyICpkb2N1bWVudE5hbWUpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DcmVhdGUgYSBkb2N1bWVudCB3aXRoIGEgbmFtZS4gVGhlIG5hbWUgb2YgdGhlIGRvY3VtZW50IGlzIGFsc28gdGhlIGZpbGVuYW1lIG9mIHRoZSB4bWwuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEyIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OlRpWG1sRG9jdW1lbnQiIHJlZj0iYTIiIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO2RvY3VtZW50TmFtZSkiIC0tPgorJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTIiPlRpWG1sRG9jdW1lbnQ8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO2RvY3VtZW50TmFtZSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNvbnN0cnVjdG9yLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5ib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTYiPkxvYWRGaWxlPC9hPiAoVGlYbWxFbmNvZGluZyBlbmNvZGluZz1USVhNTF9ERUZBVUxUX0VOQ09ESU5HKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+TG9hZCBhIGZpbGUgdXNpbmcgdGhlIGN1cnJlbnQgZG9jdW1lbnQgdmFsdWUuICA8YSBocmVmPSIjYTYiPjwvYT48YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhNyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpTYXZlRmlsZSIgcmVmPSJhNyIgYXJncz0iKCkgY29uc3QgIiAtLT4KK2Jvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNyI+U2F2ZUZpbGU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U2F2ZSBhIGZpbGUgdXNpbmcgdGhlIGN1cnJlbnQgZG9jdW1lbnQgdmFsdWUuIFJldHVybnMgdHJ1ZSBpZiBzdWNjZXNzZnVsLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhOCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpMb2FkRmlsZSIgcmVmPSJhOCIgYXJncz0iKGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nPVRJWE1MX0RFRkFVTFRfRU5DT0RJTkcpIiAtLT4KK2Jvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhOCI+TG9hZEZpbGU8L2E+IChjb25zdCBjaGFyICpmaWxlbmFtZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZz1USVhNTF9ERUZBVUxUX0VOQ09ESU5HKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+TG9hZCBhIGZpbGUgdXNpbmcgdGhlIGdpdmVuIGZpbGVuYW1lLiBSZXR1cm5zIHRydWUgaWYgc3VjY2Vzc2Z1bC4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTkiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6U2F2ZUZpbGUiIHJlZj0iYTkiIGFyZ3M9Iihjb25zdCBjaGFyICpmaWxlbmFtZSkgY29uc3QgIiAtLT4KK2Jvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhOSI+U2F2ZUZpbGU8L2E+IChjb25zdCBjaGFyICpmaWxlbmFtZSkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TYXZlIGEgZmlsZSB1c2luZyB0aGUgZ2l2ZW4gZmlsZW5hbWUuIFJldHVybnMgdHJ1ZSBpZiBzdWNjZXNzZnVsLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5ib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTEwIj5Mb2FkRmlsZTwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7ZmlsZW5hbWUsIFRpWG1sRW5jb2RpbmcgZW5jb2Rpbmc9VElYTUxfREVGQVVMVF9FTkNPRElORyk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTExIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OlNhdmVGaWxlIiByZWY9ImExMSIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7ZmlsZW5hbWUpIGNvbnN0ICIgLS0+Citib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTExIj5TYXZlRmlsZTwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7ZmlsZW5hbWUpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Jmx0OyBTVEwgc3RkOjpzdHJpbmcgdmVyc2lvbi4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+dmlydHVhbCBjb25zdCBjaGFyICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTIiPlBhcnNlPC9hPiAoY29uc3QgY2hhciAqcCwgVGlYbWxQYXJzaW5nRGF0YSAqZGF0YT0wLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nPVRJWE1MX0RFRkFVTFRfRU5DT0RJTkcpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5QYXJzZSB0aGUgZ2l2ZW4gbnVsbCB0ZXJtaW5hdGVkIGJsb2NrIG9mIHhtbCBkYXRhLiAgPGEgaHJlZj0iI2ExMiI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTEzIj5Sb290RWxlbWVudDwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5HZXQgdGhlIHJvb3QgZWxlbWVudCAtLSB0aGUgb25seSB0b3AgbGV2ZWwgZWxlbWVudCAtLSBvZiB0aGUgZG9jdW1lbnQuICA8YSBocmVmPSIjYTEzIj48L2E+PGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+Ym9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExNSI+RXJyb3I8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+SWYgYW4gZXJyb3Igb2NjdXJzLCBFcnJvciB3aWxsIGJlIHNldCB0byB0cnVlLiAgPGEgaHJlZj0iI2ExNSI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImExNiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpFcnJvckRlc2MiIHJlZj0iYTE2IiBhcmdzPSIoKSBjb25zdCAiIC0tPgorY29uc3QgY2hhciAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE2Ij5FcnJvckRlc2M8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29udGFpbnMgYSB0ZXh0dWFsIChlbmdsaXNoKSBkZXNjcmlwdGlvbiBvZiB0aGUgZXJyb3IgaWYgb25lIG9jY3Vycy4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+aW50Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE3Ij5FcnJvcklkPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkdlbmVyYWxseSwgeW91IHByb2JhYmx5IHdhbnQgdGhlIGVycm9yIHN0cmluZyAoIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE2Ij5FcnJvckRlc2MoKTwvYT4gKS4gIDxhIGhyZWY9IiNhMTciPjwvYT48YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5pbnQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTgiPkVycm9yUm93PC9hPiAoKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJucyB0aGUgbG9jYXRpb24gKGlmIGtub3duKSBvZiB0aGUgZXJyb3IuICA8YSBocmVmPSIjYTE4Ij48L2E+PGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTE5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OkVycm9yQ29sIiByZWY9ImExOSIgYXJncz0iKCkiIC0tPgoraW50Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE5Ij5FcnJvckNvbDwvYT4gKCk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlRoZSBjb2x1bW4gd2hlcmUgdGhlIGVycm9yIG9jY3VyZWQuIFNlZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExOCI+RXJyb3JSb3coKTwvYT4uIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMjAiPlNldFRhYlNpemU8L2E+IChpbnQgX3RhYnNpemUpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMCI+U2V0VGFiU2l6ZSgpPC9hPiBhbGxvd3MgdGhlIGVycm9yIHJlcG9ydGluZyBmdW5jdGlvbnMgKDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE4Ij5FcnJvclJvdygpPC9hPiBhbmQgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTkiPkVycm9yQ29sKCk8L2E+KSB0byByZXBvcnQgdGhlIGNvcnJlY3QgdmFsdWVzIGZvciByb3cgYW5kIGNvbHVtbi4gIDxhIGhyZWY9IiNhMjAiPjwvYT48YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj52b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTIyIj5DbGVhckVycm9yPC9hPiAoKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+SWYgeW91IGhhdmUgaGFuZGxlZCB0aGUgZXJyb3IsIGl0IGNhbiBiZSByZXNldCB3aXRoIHRoaXMgY2FsbC4gIDxhIGhyZWY9IiNhMjIiPjwvYT48YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMjMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6UHJpbnQiIHJlZj0iYTIzIiBhcmdzPSIoKSBjb25zdCAiIC0tPgordm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMyI+UHJpbnQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+RHVtcCB0aGUgZG9jdW1lbnQgdG8gc3RhbmRhcmQgb3V0LiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMjQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6UHJpbnQiIHJlZj0iYTI0IiBhcmdzPSIoRklMRSAqY2ZpbGUsIGludCBkZXB0aD0wKSBjb25zdCAiIC0tPgordmlydHVhbCB2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTI0Ij5QcmludDwvYT4gKEZJTEUgKmNmaWxlLCBpbnQgZGVwdGg9MCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5QcmludCB0aGlzIERvY3VtZW50IHRvIGEgRklMRSBzdHJlYW0uIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNvbHNwYW49IjIiPjxicj48aDI+UHJvdGVjdGVkIE1lbWJlciBGdW5jdGlvbnM8L2gyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+dmlydHVhbCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2IxIj5DbG9uZTwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DcmVhdGUgYW4gZXhhY3QgZHVwbGljYXRlIG9mIHRoaXMgbm9kZSBhbmQgcmV0dXJuIGl0LiAgPGEgaHJlZj0iI2IxIj48L2E+PGJyPjwvdGQ+PC90cj4KIDwvdGFibGU+Ci08aHIvPjxhIG5hbWU9Il9kZXRhaWxzIj48L2E+PGgyPkRldGFpbGVkIERlc2NyaXB0aW9uPC9oMj4KLTxwPkFsd2F5cyB0aGUgdG9wIGxldmVsIG5vZGUuIDwvcD4KLTxwPkEgZG9jdW1lbnQgYmluZHMgdG9nZXRoZXIgYWxsIHRoZSBYTUwgcGllY2VzLiBJdCBjYW4gYmUgc2F2ZWQsIGxvYWRlZCwgYW5kIHByaW50ZWQgdG8gdGhlIHNjcmVlbi4gVGhlICd2YWx1ZScgb2YgYSBkb2N1bWVudCBub2RlIGlzIHRoZSB4bWwgZmlsZSBuYW1lLiA8L3A+Ci08aHIvPjxoMj5NZW1iZXIgRnVuY3Rpb24gRG9jdW1lbnRhdGlvbjwvaDI+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWM2NmI4YzI4ZGI4NjM2MzMxNTcxMmEzNTc0ZTg3YzM1Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OkNsZWFyRXJyb3IiIHJlZj0iYWM2NmI4YzI4ZGI4NjM2MzMxNTcxMmEzNTc0ZTg3YzM1IiBhcmdzPSIoKSIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8aHI+PGEgbmFtZT0iX2RldGFpbHMiPjwvYT48aDI+RGV0YWlsZWQgRGVzY3JpcHRpb248L2gyPgorQWx3YXlzIHRoZSB0b3AgbGV2ZWwgbm9kZS4gCis8cD4KK0EgZG9jdW1lbnQgYmluZHMgdG9nZXRoZXIgYWxsIHRoZSBYTUwgcGllY2VzLiBJdCBjYW4gYmUgc2F2ZWQsIGxvYWRlZCwgYW5kIHByaW50ZWQgdG8gdGhlIHNjcmVlbi4gVGhlICd2YWx1ZScgb2YgYSBkb2N1bWVudCBub2RlIGlzIHRoZSB4bWwgZmlsZSBuYW1lLgorPHA+Cis8aHI+PGgyPk1lbWJlciBGdW5jdGlvbiBEb2N1bWVudGF0aW9uPC9oMj4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEyMiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpDbGVhckVycm9yIiByZWY9ImEyMiIgYXJncz0iKCkiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj52b2lkIFRpWG1sRG9jdW1lbnQ6OkNsZWFyRXJyb3IgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPnZvaWQgVGlYbWxEb2N1bWVudDo6Q2xlYXJFcnJvciAgICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+KCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUxIiB2YWxpZ249InRvcCIgbm93cmFwPiAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4mbmJzcDspJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5JZiB5b3UgaGF2ZSBoYW5kbGVkIHRoZSBlcnJvciwgaXQgY2FuIGJlIHJlc2V0IHdpdGggdGhpcyBjYWxsLiA8L3A+Ci08cD5UaGUgZXJyb3Igc3RhdGUgaXMgYXV0b21hdGljYWxseSBjbGVhcmVkIGlmIHlvdSBQYXJzZSBhIG5ldyBYTUwgYmxvY2suIDwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNDk2ODY2MWNhYjRhMWY0NGEyMzMyOWM2ZjhkYjE5MDciPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6Q2xvbmUiIHJlZj0iYTQ5Njg2NjFjYWI0YTFmNDRhMjMzMjljNmY4ZGIxOTA3IiBhcmdzPSIoKSBjb25zdCAiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgorPHA+CitJZiB5b3UgaGF2ZSBoYW5kbGVkIHRoZSBlcnJvciwgaXQgY2FuIGJlIHJlc2V0IHdpdGggdGhpcyBjYWxsLiAKKzxwPgorVGhlIGVycm9yIHN0YXRlIGlzIGF1dG9tYXRpY2FsbHkgY2xlYXJlZCBpZiB5b3UgUGFyc2UgYSBuZXcgWE1MIGJsb2NrLiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImIxIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OkNsb25lIiByZWY9ImIxIiBhcmdzPSIoKSBjb25zdCAiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj52aXJ0dWFsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogVGlYbWxEb2N1bWVudDo6Q2xvbmUgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD4gY29uc3Q8Y29kZT4gW3Byb3RlY3RlZCwgdmlydHVhbF08L2NvZGU+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPnZpcnR1YWwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBUaVhtbERvY3VtZW50OjpDbG9uZSAgICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+KCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUxIiB2YWxpZ249InRvcCIgbm93cmFwPiAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4mbmJzcDspJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+IGNvbnN0PGNvZGU+IFtwcm90ZWN0ZWQsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5DcmVhdGUgYW4gZXhhY3QgZHVwbGljYXRlIG9mIHRoaXMgbm9kZSBhbmQgcmV0dXJuIGl0LiA8L3A+Ci08cD5UaGUgbWVtb3J5IG11c3QgYmUgZGVsZXRlZCBieSB0aGUgY2FsbGVyLiA8L3A+Ci0KLTxwPkltcGxlbWVudHMgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NTA4Y2MzYTJkN2E5OGU5NmE1NGNjMDljMzdhNzhhNCI+VGlYbWxOb2RlPC9hPi48L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTZkZmMwMWE2ZTVkNThlNTZhY2Q1MzdkZmQzYmRlYjI5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OkVycm9yIiByZWY9ImE2ZGZjMDFhNmU1ZDU4ZTU2YWNkNTM3ZGZkM2JkZWIyOSIgYXJncz0iKCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorQ3JlYXRlIGFuIGV4YWN0IGR1cGxpY2F0ZSBvZiB0aGlzIG5vZGUgYW5kIHJldHVybiBpdC4gCis8cD4KK1RoZSBtZW1vcnkgbXVzdCBiZSBkZWxldGVkIGJ5IHRoZSBjYWxsZXIuCis8cD4KK0ltcGxlbWVudHMgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MiI+VGlYbWxOb2RlPC9hPi4gICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMTUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6RXJyb3IiIHJlZj0iYTE1IiBhcmdzPSIoKSBjb25zdCAiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj5ib29sIFRpWG1sRG9jdW1lbnQ6OkVycm9yIDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj48L3RkPgotICAgICAgICAgIDx0ZD4mbmJzcDspJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQ+IGNvbnN0PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5ib29sIFRpWG1sRG9jdW1lbnQ6OkVycm9yICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZTEiIHZhbGlnbj0idG9wIiBub3dyYXA+ICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPiZuYnNwOykmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcD4gY29uc3Q8Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPklmIGFuIGVycm9yIG9jY3VycywgRXJyb3Igd2lsbCBiZSBzZXQgdG8gdHJ1ZS4gPC9wPgotPHA+QWxzbyw8L3A+Ci08dWw+Ci08bGk+VGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWY5NmZjMmYzZjllYzY0MjI3ODJiZmU5MTZjOWU3NzhmIiB0aXRsZT0iR2VuZXJhbGx5LCB5b3UgcHJvYmFibHkgd2FudCB0aGUgZXJyb3Igc3RyaW5nICggRXJyb3JEZXNjKCkgKS4iPkVycm9ySWQoKTwvYT4gd2lsbCBjb250YWluIHRoZSBpbnRlZ2VyIGlkZW50aWZpZXIgb2YgdGhlIGVycm9yIChub3QgZ2VuZXJhbGx5IHVzZWZ1bCk8L2xpPgotPGxpPlRoZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E5ZDBmNjg5ZjZlMDllYTQ5NGVhNTQ3YmU4ZDc5YzI1ZSIgdGl0bGU9IkNvbnRhaW5zIGEgdGV4dHVhbCAoZW5nbGlzaCkgZGVzY3JpcHRpb24gb2YgdGhlIGVycm9yIGlmIG9uZSBvY2N1cnMuIj5FcnJvckRlc2MoKTwvYT4gbWV0aG9kIHdpbGwgcmV0dXJuIHRoZSBuYW1lIG9mIHRoZSBlcnJvci4gKHZlcnkgdXNlZnVsKTwvbGk+Ci08bGk+VGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWYzMGVmYzc1ZTgwNGFhMmU5MmZiOGJlM2E4Y2I2NzZlIiB0aXRsZT0iUmV0dXJucyB0aGUgbG9jYXRpb24gKGlmIGtub3duKSBvZiB0aGUgZXJyb3IuIj5FcnJvclJvdygpPC9hPiBhbmQgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhYTkwYmM2MzBlZTUyMDNjNjEwOWNhNWZhZDMzMjM2NDkiIHRpdGxlPSJUaGUgY29sdW1uIHdoZXJlIHRoZSBlcnJvciBvY2N1cmVkLiBTZWUgRXJyb3JSb3coKS4iPkVycm9yQ29sKCk8L2E+IHdpbGwgcmV0dXJuIHRoZSBsb2NhdGlvbiBvZiB0aGUgZXJyb3IgKGlmIGtub3duKSA8L2xpPgotPC91bD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhZjk2ZmMyZjNmOWVjNjQyMjc4MmJmZTkxNmM5ZTc3OGYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6RXJyb3JJZCIgcmVmPSJhZjk2ZmMyZjNmOWVjNjQyMjc4MmJmZTkxNmM5ZTc3OGYiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8cD4KK0lmIGFuIGVycm9yIG9jY3VycywgRXJyb3Igd2lsbCBiZSBzZXQgdG8gdHJ1ZS4gCis8cD4KK0Fsc28sPHVsPgorPGxpPlRoZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExNyI+RXJyb3JJZCgpPC9hPiB3aWxsIGNvbnRhaW4gdGhlIGludGVnZXIgaWRlbnRpZmllciBvZiB0aGUgZXJyb3IgKG5vdCBnZW5lcmFsbHkgdXNlZnVsKTwvbGk+PGxpPlRoZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExNiI+RXJyb3JEZXNjKCk8L2E+IG1ldGhvZCB3aWxsIHJldHVybiB0aGUgbmFtZSBvZiB0aGUgZXJyb3IuICh2ZXJ5IHVzZWZ1bCk8L2xpPjxsaT5UaGUgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTgiPkVycm9yUm93KCk8L2E+IGFuZCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExOSI+RXJyb3JDb2woKTwvYT4gd2lsbCByZXR1cm4gdGhlIGxvY2F0aW9uIG9mIHRoZSBlcnJvciAoaWYga25vd24pPC9saT48L3VsPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTE3Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OkVycm9ySWQiIHJlZj0iYTE3IiBhcmdzPSIoKSBjb25zdCAiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj5pbnQgVGlYbWxEb2N1bWVudDo6RXJyb3JJZCA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+PC90ZD4KLSAgICAgICAgICA8dGQ+Jm5ic3A7KSZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkPiBjb25zdDxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+aW50IFRpWG1sRG9jdW1lbnQ6OkVycm9ySWQgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lMSIgdmFsaWduPSJ0b3AiIG5vd3JhcD4gICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+Jm5ic3A7KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPiBjb25zdDxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+R2VuZXJhbGx5LCB5b3UgcHJvYmFibHkgd2FudCB0aGUgZXJyb3Igc3RyaW5nICggPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhOWQwZjY4OWY2ZTA5ZWE0OTRlYTU0N2JlOGQ3OWMyNWUiIHRpdGxlPSJDb250YWlucyBhIHRleHR1YWwgKGVuZ2xpc2gpIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciBpZiBvbmUgb2NjdXJzLiI+RXJyb3JEZXNjKCk8L2E+ICkuIDwvcD4KLTxwPkJ1dCBpZiB5b3UgcHJlZmVyIHRoZSBFcnJvcklkLCB0aGlzIGZ1bmN0aW9uIHdpbGwgZmV0Y2ggaXQuIDwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhZjMwZWZjNzVlODA0YWEyZTkyZmI4YmUzYThjYjY3NmUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6RXJyb3JSb3ciIHJlZj0iYWYzMGVmYzc1ZTgwNGFhMmU5MmZiOGJlM2E4Y2I2NzZlIiBhcmdzPSIoKSBjb25zdCAiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgorPHA+CitHZW5lcmFsbHksIHlvdSBwcm9iYWJseSB3YW50IHRoZSBlcnJvciBzdHJpbmcgKCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExNiI+RXJyb3JEZXNjKCk8L2E+ICkuIAorPHA+CitCdXQgaWYgeW91IHByZWZlciB0aGUgRXJyb3JJZCwgdGhpcyBmdW5jdGlvbiB3aWxsIGZldGNoIGl0LiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImExOCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpFcnJvclJvdyIgcmVmPSJhMTgiIGFyZ3M9IigpIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+aW50IFRpWG1sRG9jdW1lbnQ6OkVycm9yUm93IDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj48L3RkPgotICAgICAgICAgIDx0ZD4mbmJzcDspJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQ+IGNvbnN0PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5pbnQgVGlYbWxEb2N1bWVudDo6RXJyb3JSb3cgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lMSIgdmFsaWduPSJ0b3AiIG5vd3JhcD4gICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+Jm5ic3A7KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+UmV0dXJucyB0aGUgbG9jYXRpb24gKGlmIGtub3duKSBvZiB0aGUgZXJyb3IuIDwvcD4KLTxwPlRoZSBmaXJzdCBjb2x1bW4gaXMgY29sdW1uIDEsIGFuZCB0aGUgZmlyc3Qgcm93IGlzIHJvdyAxLiBBIHZhbHVlIG9mIDAgbWVhbnMgdGhlIHJvdyBhbmQgY29sdW1uIHdhc24ndCBhcHBsaWNhYmxlIChtZW1vcnkgZXJyb3JzLCBmb3IgZXhhbXBsZSwgaGF2ZSBubyByb3cvY29sdW1uKSBvciB0aGUgcGFyc2VyIGxvc3QgdGhlIGVycm9yLiAoQW4gZXJyb3IgaW4gdGhlIGVycm9yIHJlcG9ydGluZywgaW4gdGhhdCBjYXNlLik8L3A+Ci08ZGwgY2xhc3M9InNlZSI+PGR0PjxiPlNlZSBhbHNvOjwvYj48L2R0PjxkZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E1MWRhYzU2MzE2Zjg5YjM1YmRiN2QwZDQzM2JhOTg4ZSIgdGl0bGU9IlNldFRhYlNpemUoKSBhbGxvd3MgdGhlIGVycm9yIHJlcG9ydGluZyBmdW5jdGlvbnMgKEVycm9yUm93KCkgYW5kIEVycm9yQ29sKCkpIHRvLi4uIj5TZXRUYWJTaXplPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwMjRiY2ViMDcwMTg4ZGY5MmMyYThkODg1MmRkMDg1MyIgdGl0bGU9IlJldHVybiB0aGUgcG9zaXRpb24sIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSwgb2YgdGhpcyBub2RlIG9yIGF0dHJpYnV0ZS4iPlJvdzwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjU0YmZiOWI3MGZlNmRkMjc2ZTdiMjc5Y2FiN2YwMDMiIHRpdGxlPSJTZWUgUm93KCkuIj5Db2x1bW48L2E+IDwvZGQ+PC9kbD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMThhZTZlZDM0ZmVkNzk5MWViYzIyMDg2MmRmYWM4ODQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6TG9hZEZpbGUiIHJlZj0iYTE4YWU2ZWQzNGZlZDc5OTFlYmMyMjA4NjJkZmFjODg0IiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtmaWxlbmFtZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZz1USVhNTF9ERUZBVUxUX0VOQ09ESU5HKSIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8cD4KK1JldHVybnMgdGhlIGxvY2F0aW9uIChpZiBrbm93bikgb2YgdGhlIGVycm9yLiAKKzxwPgorVGhlIGZpcnN0IGNvbHVtbiBpcyBjb2x1bW4gMSwgYW5kIHRoZSBmaXJzdCByb3cgaXMgcm93IDEuIEEgdmFsdWUgb2YgMCBtZWFucyB0aGUgcm93IGFuZCBjb2x1bW4gd2Fzbid0IGFwcGxpY2FibGUgKG1lbW9yeSBlcnJvcnMsIGZvciBleGFtcGxlLCBoYXZlIG5vIHJvdy9jb2x1bW4pIG9yIHRoZSBwYXJzZXIgbG9zdCB0aGUgZXJyb3IuIChBbiBlcnJvciBpbiB0aGUgZXJyb3IgcmVwb3J0aW5nLCBpbiB0aGF0IGNhc2UuKTxwPgorPGRsIGNvbXBhY3Q+PGR0PjxiPlNlZSBhbHNvOjwvYj48L2R0PjxkZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMCI+U2V0VGFiU2l6ZTwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMyI+Um93PC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E0Ij5Db2x1bW48L2E+PC9kZD48L2RsPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTEwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OkxvYWRGaWxlIiByZWY9ImExMCIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7ZmlsZW5hbWUsIFRpWG1sRW5jb2RpbmcgZW5jb2Rpbmc9VElYTUxfREVGQVVMVF9FTkNPRElORykiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj5ib29sIFRpWG1sRG9jdW1lbnQ6OkxvYWRGaWxlIDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5jb25zdCBzdGQ6OnN0cmluZyAmYW1wOyZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+ZmlsZW5hbWU8L2VtPiwgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmJvb2wgVGlYbWxEb2N1bWVudDo6TG9hZEZpbGUgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+Y29uc3Qgc3RkOjpzdHJpbmcgJmFtcDsmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lIiBub3dyYXA+IDxlbT5maWxlbmFtZTwvZW0+LCA8L3RkPgogICAgICAgICA8L3RyPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbWtleSI+PC90ZD4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+VGlYbWxFbmNvZGluZyZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+ZW5jb2Rpbmc8L2VtPiA9IDxjb2RlPlRJWE1MX0RFRkFVTFRfRU5DT0RJTkc8L2NvZGU+PC90ZD48dGQ+Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgYWxpZ249InJpZ2h0Ij48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPlRpWG1sRW5jb2RpbmcmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lIiBub3dyYXA+IDxlbT5lbmNvZGluZzwvZW0+ID0gPGNvZGU+VElYTUxfREVGQVVMVF9FTkNPRElORzwvY29kZT48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkPik8L3RkPgotICAgICAgICAgIDx0ZD48L3RkPjx0ZD48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPikmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIGNvbHNwYW49IjIiPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KLTxkbD48ZHQ+PGI+UGFyYW1ldGVyczo8L2I+PC9kdD48ZGQ+Ci0gIDx0YWJsZSBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIyIiBjZWxscGFkZGluZz0iMCI+Ci0gICAgPHRyPjx0ZCB2YWxpZ249InRvcCI+PC90ZD48dGQgdmFsaWduPSJ0b3AiPjxlbT5lbmNvZGluZzwvZW0+Jm5ic3A7PC90ZD48dGQ+U1RMIHN0ZDo6c3RyaW5nIHZlcnNpb24uIDwvdGQ+PC90cj4KLSAgPC90YWJsZT4KLSAgPC9kZD4KLTwvZGw+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPlJlZmVyZW5jZXMgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNGM4NTJhODg5YzAyY2YyNTExMTdmZDFkOWZlMTg0NWYiPkxvYWRGaWxlKCk8L2E+LjwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNDFmNmZlNzIwMDg2NGQxZGNhNjYzZDIzMGNhZjhkYjYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6TG9hZEZpbGUiIHJlZj0iYTQxZjZmZTcyMDA4NjRkMWRjYTY2M2QyMzBjYWY4ZGI2IiBhcmdzPSIoRklMRSAqLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nPVRJWE1MX0RFRkFVTFRfRU5DT0RJTkcpIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorPGRsIGNvbXBhY3Q+PGR0PjxiPlBhcmFtZXRlcnM6IDwvYj48L2R0PjxkZD4KKzx0YWJsZSBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIyIiBjZWxscGFkZGluZz0iMCI+Cis8dHI+PHRkIHZhbGlnbj0idG9wIj48ZW0+ZW5jb2Rpbmc8L2VtPiZuYnNwOzwvdGQ+PHRkPgorU1RMIHN0ZDo6c3RyaW5nIHZlcnNpb24uIDwvdGQ+PC90cj4KKzwvdGFibGU+Cis8L2RsPiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE2Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OkxvYWRGaWxlIiByZWY9ImE2IiBhcmdzPSIoVGlYbWxFbmNvZGluZyBlbmNvZGluZz1USVhNTF9ERUZBVUxUX0VOQ09ESU5HKSIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPmJvb2wgVGlYbWxEb2N1bWVudDo6TG9hZEZpbGUgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPkZJTEUgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiwgPC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1rZXkiPjwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPlRpWG1sRW5jb2RpbmcmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmVuY29kaW5nPC9lbT4gPSA8Y29kZT5USVhNTF9ERUZBVUxUX0VOQ09ESU5HPC9jb2RlPjwvdGQ+PHRkPiZuYnNwOzwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQ+KTwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5ib29sIFRpWG1sRG9jdW1lbnQ6OkxvYWRGaWxlICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPlRpWG1sRW5jb2RpbmcmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lMSIgdmFsaWduPSJ0b3AiIG5vd3JhcD4gPGVtPmVuY29kaW5nPC9lbT4gPSA8Y29kZT5USVhNTF9ERUZBVUxUX0VOQ09ESU5HPC9jb2RlPiAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4mbmJzcDspJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPkxvYWQgYSBmaWxlIHVzaW5nIHRoZSBnaXZlbiBGSUxFKi4gPC9wPgotPHA+UmV0dXJucyB0cnVlIGlmIHN1Y2Nlc3NmdWwuIE5vdGUgdGhhdCB0aGlzIG1ldGhvZCBkb2Vzbid0IHN0cmVhbSAtIHRoZSBlbnRpcmUgb2JqZWN0IHBvaW50ZWQgYXQgYnkgdGhlIEZJTEUqIHdpbGwgYmUgaW50ZXJwcmV0ZWQgYXMgYW4gWE1MIGZpbGUuIFRpbnlYTUwgZG9lc24ndCBzdHJlYW0gaW4gWE1MIGZyb20gdGhlIGN1cnJlbnQgZmlsZSBsb2NhdGlvbi4gU3RyZWFtaW5nIG1heSBiZSBhZGRlZCBpbiB0aGUgZnV0dXJlLiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTRjODUyYTg4OWMwMmNmMjUxMTE3ZmQxZDlmZTE4NDVmIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRG9jdW1lbnQ6OkxvYWRGaWxlIiByZWY9ImE0Yzg1MmE4ODljMDJjZjI1MTExN2ZkMWQ5ZmUxODQ1ZiIgYXJncz0iKFRpWG1sRW5jb2RpbmcgZW5jb2Rpbmc9VElYTUxfREVGQVVMVF9FTkNPRElORykiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgorPHA+CitMb2FkIGEgZmlsZSB1c2luZyB0aGUgY3VycmVudCBkb2N1bWVudCB2YWx1ZS4gCis8cD4KK1JldHVybnMgdHJ1ZSBpZiBzdWNjZXNzZnVsLiBXaWxsIGRlbGV0ZSBhbnkgZXhpc3RpbmcgZG9jdW1lbnQgZGF0YSBiZWZvcmUgbG9hZGluZy4gICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMTIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6UGFyc2UiIHJlZj0iYTEyIiBhcmdzPSIoY29uc3QgY2hhciAqcCwgVGlYbWxQYXJzaW5nRGF0YSAqZGF0YT0wLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nPVRJWE1MX0RFRkFVTFRfRU5DT0RJTkcpIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+Ym9vbCBUaVhtbERvY3VtZW50OjpMb2FkRmlsZSA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+VGlYbWxFbmNvZGluZyZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+ZW5jb2Rpbmc8L2VtPiA9IDxjb2RlPlRJWE1MX0RFRkFVTFRfRU5DT0RJTkc8L2NvZGU+PC90ZD4KLSAgICAgICAgICA8dGQ+Jm5ic3A7KSZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj52aXJ0dWFsIGNvbnN0IGNoYXIqIFRpWG1sRG9jdW1lbnQ6OlBhcnNlICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPnA8L2VtPiwgPC90ZD4KKyAgICAgICAgPC90cj4KKyAgICAgICAgPHRyPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCBhbGlnbj0icmlnaHQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+VGlYbWxQYXJzaW5nRGF0YSAqJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZSIgbm93cmFwPiA8ZW0+ZGF0YTwvZW0+ID0gPGNvZGU+MDwvY29kZT4sIDwvdGQ+CisgICAgICAgIDwvdHI+CisgICAgICAgIDx0cj4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgYWxpZ249InJpZ2h0Ij48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPlRpWG1sRW5jb2RpbmcmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lIiBub3dyYXA+IDxlbT5lbmNvZGluZzwvZW0+ID0gPGNvZGU+VElYTUxfREVGQVVMVF9FTkNPRElORzwvY29kZT48L3RkPgorICAgICAgICA8L3RyPgorICAgICAgICA8dHI+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj4pJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBjb2xzcGFuPSIyIj48Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5Mb2FkIGEgZmlsZSB1c2luZyB0aGUgY3VycmVudCBkb2N1bWVudCB2YWx1ZS4gPC9wPgotPHA+UmV0dXJucyB0cnVlIGlmIHN1Y2Nlc3NmdWwuIFdpbGwgZGVsZXRlIGFueSBleGlzdGluZyBkb2N1bWVudCBkYXRhIGJlZm9yZSBsb2FkaW5nLiA8L3A+Ci0KLTxwPlJlZmVyZW5jZWQgYnkgPGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sI2wwMTQzMiI+TG9hZEZpbGUoKTwvYT4uPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImExN2ViYWJlMzY5MjZlZjM5OGU3OGRlYzBkMGFkMDM3OCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpQYXJzZSIgcmVmPSJhMTdlYmFiZTM2OTI2ZWYzOThlNzhkZWMwZDBhZDAzNzgiIGFyZ3M9Iihjb25zdCBjaGFyICpwLCBUaVhtbFBhcnNpbmdEYXRhICpkYXRhPTAsIFRpWG1sRW5jb2RpbmcgZW5jb2Rpbmc9VElYTUxfREVGQVVMVF9FTkNPRElORykiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgorPHA+CitQYXJzZSB0aGUgZ2l2ZW4gbnVsbCB0ZXJtaW5hdGVkIGJsb2NrIG9mIHhtbCBkYXRhLiAKKzxwPgorUGFzc2luZyBpbiBhbiBlbmNvZGluZyB0byB0aGlzIG1ldGhvZCAoZWl0aGVyIFRJWE1MX0VOQ09ESU5HX0xFR0FDWSBvciBUSVhNTF9FTkNPRElOR19VVEY4IHdpbGwgZm9yY2UgVGlueVhtbCB0byB1c2UgdGhhdCBlbmNvZGluZywgcmVnYXJkbGVzcyBvZiB3aGF0IFRpbnlYbWwgbWlnaHQgb3RoZXJ3aXNlIHRyeSB0byBkZXRlY3QuCis8cD4KK0ltcGxlbWVudHMgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+LiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImExMyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpSb290RWxlbWVudCIgcmVmPSJhMTMiIGFyZ3M9IigpIGNvbnN0ICIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPnZpcnR1YWwgY29uc3QgY2hhciogVGlYbWxEb2N1bWVudDo6UGFyc2UgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+cDwvZW0+LCA8L3RkPgotICAgICAgICA8L3RyPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbWtleSI+PC90ZD4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+VGlYbWxQYXJzaW5nRGF0YSAqJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5kYXRhPC9lbT4gPSA8Y29kZT4wPC9jb2RlPiwgPC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1rZXkiPjwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPlRpWG1sRW5jb2RpbmcmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmVuY29kaW5nPC9lbT4gPSA8Y29kZT5USVhNTF9ERUZBVUxUX0VOQ09ESU5HPC9jb2RlPjwvdGQ+PHRkPiZuYnNwOzwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQ+KTwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPjxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiogVGlYbWxEb2N1bWVudDo6Um9vdEVsZW1lbnQgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lMSIgdmFsaWduPSJ0b3AiIG5vd3JhcD4gICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+Jm5ic3A7KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPiBjb25zdDxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+UGFyc2UgdGhlIGdpdmVuIG51bGwgdGVybWluYXRlZCBibG9jayBvZiB4bWwgZGF0YS4gPC9wPgotPHA+UGFzc2luZyBpbiBhbiBlbmNvZGluZyB0byB0aGlzIG1ldGhvZCAoZWl0aGVyIFRJWE1MX0VOQ09ESU5HX0xFR0FDWSBvciBUSVhNTF9FTkNPRElOR19VVEY4IHdpbGwgZm9yY2UgVGlueVhtbCB0byB1c2UgdGhhdCBlbmNvZGluZywgcmVnYXJkbGVzcyBvZiB3aGF0IFRpbnlYbWwgbWlnaHQgb3RoZXJ3aXNlIHRyeSB0byBkZXRlY3QuIDwvcD4KLQotPHA+SW1wbGVtZW50cyA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT4uPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFmMDgzODllYzcwZWU5YjJkZTdmODAwZTIwNmExODUxMCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpQcmludCIgcmVmPSJhZjA4Mzg5ZWM3MGVlOWIyZGU3ZjgwMGUyMDZhMTg1MTAiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8cD4KK0dldCB0aGUgcm9vdCBlbGVtZW50IC0tIHRoZSBvbmx5IHRvcCBsZXZlbCBlbGVtZW50IC0tIG9mIHRoZSBkb2N1bWVudC4gCis8cD4KK0luIHdlbGwgZm9ybWVkIFhNTCwgdGhlcmUgc2hvdWxkIG9ubHkgYmUgb25lLiBUaW55WG1sIGlzIHRvbGVyYW50IG9mIG11bHRpcGxlIGVsZW1lbnRzIGF0IHRoZSBkb2N1bWVudCBsZXZlbC4gICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMjAiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6U2V0VGFiU2l6ZSIgcmVmPSJhMjAiIGFyZ3M9IihpbnQgX3RhYnNpemUpIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+dm9pZCBUaVhtbERvY3VtZW50OjpQcmludCA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+PC90ZD4KLSAgICAgICAgICA8dGQ+Jm5ic3A7KSZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkPiBjb25zdDxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+dm9pZCBUaVhtbERvY3VtZW50OjpTZXRUYWJTaXplICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmludCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUxIiB2YWxpZ249InRvcCIgbm93cmFwPiA8ZW0+X3RhYnNpemU8L2VtPiAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4mbmJzcDspJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5Xcml0ZSB0aGUgZG9jdW1lbnQgdG8gc3RhbmRhcmQgb3V0IHVzaW5nIGZvcm1hdHRlZCBwcmludGluZyAoInByZXR0eSBwcmludCIpLiA8L3A+Ci0KLTxwPlJlZmVyZW5jZXMgPGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sI2wwMTUxOSI+UHJpbnQoKTwvYT4uPC9wPgotCi08cD5SZWZlcmVuY2VkIGJ5IDxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCNsMDE1MTkiPlByaW50KCk8L2E+LjwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhZDA5ZDE3OTI3ZjkwOGY0MGVmYjQwNmFmMmZiODczYmUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxEb2N1bWVudDo6Um9vdEVsZW1lbnQiIHJlZj0iYWQwOWQxNzkyN2Y5MDhmNDBlZmI0MDZhZjJmYjg3M2JlIiBhcmdzPSIoKSBjb25zdCAiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj5jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4qIFRpWG1sRG9jdW1lbnQ6OlJvb3RFbGVtZW50IDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj48L3RkPgotICAgICAgICAgIDx0ZD4mbmJzcDspJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQ+IGNvbnN0PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgotCi08cD5HZXQgdGhlIHJvb3QgZWxlbWVudCAtLSB0aGUgb25seSB0b3AgbGV2ZWwgZWxlbWVudCAtLSBvZiB0aGUgZG9jdW1lbnQuIDwvcD4KLTxwPkluIHdlbGwgZm9ybWVkIFhNTCwgdGhlcmUgc2hvdWxkIG9ubHkgYmUgb25lLiBUaW55WG1sIGlzIHRvbGVyYW50IG9mIG11bHRpcGxlIGVsZW1lbnRzIGF0IHRoZSBkb2N1bWVudCBsZXZlbC4gPC9wPgotCi08cD5SZWZlcmVuY2VzIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjRmYjY1MmY2YmQ3OWFlMGQ1Y2U3ZDBmN2QzYzBmYmEiPlRpWG1sTm9kZTo6Rmlyc3RDaGlsZEVsZW1lbnQoKTwvYT4uPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE1MWRhYzU2MzE2Zjg5YjM1YmRiN2QwZDQzM2JhOTg4ZSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbERvY3VtZW50OjpTZXRUYWJTaXplIiByZWY9ImE1MWRhYzU2MzE2Zjg5YjM1YmRiN2QwZDQzM2JhOTg4ZSIgYXJncz0iKGludCBfdGFic2l6ZSkiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj52b2lkIFRpWG1sRG9jdW1lbnQ6OlNldFRhYlNpemUgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmludCZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+X3RhYnNpemU8L2VtPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+Ci0KLTxwPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTUxZGFjNTYzMTZmODliMzViZGI3ZDBkNDMzYmE5ODhlIiB0aXRsZT0iU2V0VGFiU2l6ZSgpIGFsbG93cyB0aGUgZXJyb3IgcmVwb3J0aW5nIGZ1bmN0aW9ucyAoRXJyb3JSb3coKSBhbmQgRXJyb3JDb2woKSkgdG8uLi4iPlNldFRhYlNpemUoKTwvYT4gYWxsb3dzIHRoZSBlcnJvciByZXBvcnRpbmcgZnVuY3Rpb25zICg8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FmMzBlZmM3NWU4MDRhYTJlOTJmYjhiZTNhOGNiNjc2ZSIgdGl0bGU9IlJldHVybnMgdGhlIGxvY2F0aW9uIChpZiBrbm93bikgb2YgdGhlIGVycm9yLiI+RXJyb3JSb3coKTwvYT4gYW5kIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWE5MGJjNjMwZWU1MjAzYzYxMDljYTVmYWQzMzIzNjQ5IiB0aXRsZT0iVGhlIGNvbHVtbiB3aGVyZSB0aGUgZXJyb3Igb2NjdXJlZC4gU2VlIEVycm9yUm93KCkuIj5FcnJvckNvbCgpPC9hPikgdG8gcmVwb3J0IHRoZSBjb3JyZWN0IHZhbHVlcyBmb3Igcm93IGFuZCBjb2x1bW4uIDwvcD4KLTxwPkl0IGRvZXMgbm90IGNoYW5nZSB0aGUgb3V0cHV0IG9yIGlucHV0IGluIGFueSB3YXkuPC9wPgotPHA+QnkgY2FsbGluZyB0aGlzIG1ldGhvZCwgd2l0aCBhIHRhYiBzaXplIGdyZWF0ZXIgdGhhbiAwLCB0aGUgcm93IGFuZCBjb2x1bW4gb2YgZWFjaCBub2RlIGFuZCBhdHRyaWJ1dGUgaXMgc3RvcmVkIHdoZW4gdGhlIGZpbGUgaXMgbG9hZGVkLiBWZXJ5IHVzZWZ1bCBmb3IgdHJhY2tpbmcgdGhlIERPTSBiYWNrIGluIHRvIHRoZSBzb3VyY2UgZmlsZS48L3A+Ci08cD5UaGUgdGFiIHNpemUgaXMgcmVxdWlyZWQgZm9yIGNhbGN1bGF0aW5nIHRoZSBsb2NhdGlvbiBvZiBub2Rlcy4gSWYgbm90IHNldCwgdGhlIGRlZmF1bHQgb2YgNCBpcyB1c2VkLiBUaGUgdGFic2l6ZSBpcyBzZXQgcGVyIGRvY3VtZW50LiBTZXR0aW5nIHRoZSB0YWJzaXplIHRvIDAgZGlzYWJsZXMgcm93L2NvbHVtbiB0cmFja2luZy48L3A+Ci08cD5Ob3RlIHRoYXQgcm93IGFuZCBjb2x1bW4gdHJhY2tpbmcgaXMgbm90IHN1cHBvcnRlZCB3aGVuIHVzaW5nIG9wZXJhdG9yJmd0OyZndDsuPC9wPgotPHA+VGhlIHRhYiBzaXplIG5lZWRzIHRvIGJlIGVuYWJsZWQgYmVmb3JlIHRoZSBwYXJzZSBvciBsb2FkLiBDb3JyZWN0IHVzYWdlOiA8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotCQlUaVhtbERvY3VtZW50IGRvYzsKKzxwPgorPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMjAiPlNldFRhYlNpemUoKTwvYT4gYWxsb3dzIHRoZSBlcnJvciByZXBvcnRpbmcgZnVuY3Rpb25zICg8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExOCI+RXJyb3JSb3coKTwvYT4gYW5kIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE5Ij5FcnJvckNvbCgpPC9hPikgdG8gcmVwb3J0IHRoZSBjb3JyZWN0IHZhbHVlcyBmb3Igcm93IGFuZCBjb2x1bW4uIAorPHA+CitJdCBkb2VzIG5vdCBjaGFuZ2UgdGhlIG91dHB1dCBvciBpbnB1dCBpbiBhbnkgd2F5LjxwPgorQnkgY2FsbGluZyB0aGlzIG1ldGhvZCwgd2l0aCBhIHRhYiBzaXplIGdyZWF0ZXIgdGhhbiAwLCB0aGUgcm93IGFuZCBjb2x1bW4gb2YgZWFjaCBub2RlIGFuZCBhdHRyaWJ1dGUgaXMgc3RvcmVkIHdoZW4gdGhlIGZpbGUgaXMgbG9hZGVkLiBWZXJ5IHVzZWZ1bCBmb3IgdHJhY2tpbmcgdGhlIERPTSBiYWNrIGluIHRvIHRoZSBzb3VyY2UgZmlsZS48cD4KK1RoZSB0YWIgc2l6ZSBpcyByZXF1aXJlZCBmb3IgY2FsY3VsYXRpbmcgdGhlIGxvY2F0aW9uIG9mIG5vZGVzLiBJZiBub3Qgc2V0LCB0aGUgZGVmYXVsdCBvZiA0IGlzIHVzZWQuIFRoZSB0YWJzaXplIGlzIHNldCBwZXIgZG9jdW1lbnQuIFNldHRpbmcgdGhlIHRhYnNpemUgdG8gMCBkaXNhYmxlcyByb3cvY29sdW1uIHRyYWNraW5nLjxwPgorTm90ZSB0aGF0IHJvdyBhbmQgY29sdW1uIHRyYWNraW5nIGlzIG5vdCBzdXBwb3J0ZWQgd2hlbiB1c2luZyBvcGVyYXRvciZndDsmZ3Q7LjxwPgorVGhlIHRhYiBzaXplIG5lZWRzIHRvIGJlIGVuYWJsZWQgYmVmb3JlIHRoZSBwYXJzZSBvciBsb2FkLiBDb3JyZWN0IHVzYWdlOiA8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgkJVGlYbWxEb2N1bWVudCBkb2M7CiAJCWRvYy5TZXRUYWJTaXplKCA4ICk7CiAJCWRvYy5Mb2FkKCAibXlmaWxlLnhtbCIgKTsKLQkJPC9wcmU+PC9kaXY+PGRsIGNsYXNzPSJzZWUiPjxkdD48Yj5TZWUgYWxzbzo8L2I+PC9kdD48ZGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwMjRiY2ViMDcwMTg4ZGY5MmMyYThkODg1MmRkMDg1MyIgdGl0bGU9IlJldHVybiB0aGUgcG9zaXRpb24sIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgZmlsZSwgb2YgdGhpcyBub2RlIG9yIGF0dHJpYnV0ZS4iPlJvdzwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjU0YmZiOWI3MGZlNmRkMjc2ZTdiMjc5Y2FiN2YwMDMiIHRpdGxlPSJTZWUgUm93KCkuIj5Db2x1bW48L2E+IDwvZGQ+PC9kbD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxoci8+VGhlIGRvY3VtZW50YXRpb24gZm9yIHRoaXMgY2xhc3Mgd2FzIGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgZmlsZTo8dWw+Ci08bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+PC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOworCQk8L3ByZT48L2Rpdj48cD4KKzxkbCBjb21wYWN0PjxkdD48Yj5TZWUgYWxzbzo8L2I+PC9kdD48ZGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EzIj5Sb3c8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTQiPkNvbHVtbjwvYT48L2RkPjwvZGw+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8aHI+VGhlIGRvY3VtZW50YXRpb24gZm9yIHRoaXMgY2xhc3Mgd2FzIGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgZmlsZTo8dWw+Cis8bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoLXNvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+PC91bD4KKzxociBzaXplPSIxIj48YWRkcmVzcyBzdHlsZT0iYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBvbiBTYXQgT2N0IDggMTQ6MTU6MzAgMjAwNSBmb3IgVGlueVhtbCBieSZuYnNwOwogPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KKzxpbWcgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIiBhbGlnbj0ibWlkZGxlIiBib3JkZXI9IjAiPjwvYT4gMS40LjQgPC9zbWFsbD48L2FkZHJlc3M+CiA8L2JvZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2NsYXNzVGlYbWxEb2N1bWVudC5wbmcgYi9kb2NzL2NsYXNzVGlYbWxEb2N1bWVudC5wbmcKaW5kZXggZDI3YWNhMi4uMzJmZDI2NyAxMDA2NDQKLS0tIGEvZG9jcy9jbGFzc1RpWG1sRG9jdW1lbnQucG5nCisrKyBiL2RvY3MvY2xhc3NUaVhtbERvY3VtZW50LnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kb2NzL2NsYXNzVGlYbWxFbGVtZW50LW1lbWJlcnMuaHRtbCBiL2RvY3MvY2xhc3NUaVhtbEVsZW1lbnQtbWVtYmVycy5odG1sCmluZGV4IGRjOGEzM2IuLmRmYmYxZDkgMTAwNjQ0Ci0tLSBhL2RvY3MvY2xhc3NUaVhtbEVsZW1lbnQtbWVtYmVycy5odG1sCisrKyBiL2RvY3MvY2xhc3NUaVhtbEVsZW1lbnQtbWVtYmVycy5odG1sCkBAIC0xLDEyOSArMSw5NyBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PWlzby04ODU5LTEiPgogPHRpdGxlPlRpbnlYbWw6IE1lbWJlciBMaXN0PC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotPGgxPlRpWG1sRWxlbWVudCBNZW1iZXIgTGlzdDwvaDE+VGhpcyBpcyB0aGUgY29tcGxldGUgbGlzdCBvZiBtZW1iZXJzIGZvciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4sIGluY2x1ZGluZyBhbGwgaW5oZXJpdGVkIG1lbWJlcnMuPHRhYmxlPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTcxYTgxYjJhZmIwZDQyYmUxNTQzZDFjNDA0ZGVlNmY1Ij5BY2NlcHQ8L2E+KFRpWG1sVmlzaXRvciAqdmlzaXRvcikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZTQxOWE0NDJhOTcwMWE2MmIwYzNkOGZkMWNiZGQxMmQiPkF0dHJpYnV0ZTwvYT4oY29uc3QgY2hhciAqbmFtZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTBlZDgzNDhmZGM1NmI3MmE2YjQ5MDBjZTViYWMxODQ5Ij5BdHRyaWJ1dGU8L2E+KGNvbnN0IGNoYXIgKm5hbWUsIGludCAqaSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWVhZmY5OWQ0ZjBlYTViMzRmN2FlZTIwMmFhZDQ1N2JhIj5BdHRyaWJ1dGU8L2E+KGNvbnN0IGNoYXIgKm5hbWUsIGRvdWJsZSAqZCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcwOGU3Zjk1M2RmNjFkNGQyZDEyZjczMTcxNTUwYTRiIj5DbGVhcjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FhNDY0NTM1ZWExOTk0ZGIzMzdjYjZhOGNlNGI1ODhiNSI+Q2xvbmU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjU0YmZiOWI3MGZlNmRkMjc2ZTdiMjc5Y2FiN2YwMDMiPkNvbHVtbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTZiZDhjMzE1YzFhY2IwOWUzNDEwN2I4NzM2NTA1OTQ4Ij5FbmNvZGVTdHJpbmc8L2E+KGNvbnN0IFRJWE1MX1NUUklORyAmYW1wO3N0ciwgVElYTUxfU1RSSU5HICpvdXQpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E1MTYwNTRjOTA3MzY0N2Q2Y2IyOWI2YWJlOWZhMDU5MiI+Rmlyc3RBdHRyaWJ1dGU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NGM4ZWVlMjZiYmUyZDFiMjc2MjAzOGRmOWRkZTJmMCI+Rmlyc3RDaGlsZDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTFmMDU4MjhkMDIzMTUwNzA2ZWViMTZkNmZiM2Y2MzU1Ij5GaXJzdENoaWxkPC9hPihjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWJjOGJmMzJiZTY0MTllYzQ1M2E3MzE4NjhkZTE5NTU0Ij5GaXJzdENoaWxkPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwN2Y2MjAwYTU5NTZjNzIzYzViNTJkNzBmMjljNDZmNiI+Rmlyc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTBkMjY2OWNjYjVlMjllMDJmY2IwZTQ0MDg2ODVlZjYiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjRmYjY1MmY2YmQ3OWFlMGQ1Y2U3ZDBmN2QzYzBmYmEiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjY2RhMmM2YjQ1YzI1YmI1YTZmOWMzNDA3YTY0NGU2MSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKl92YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMyN2FkNGJiZDkwMDczYzVkZmM5MzFiMDczMTRmNWY3Ij5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhN2YxZDcyOTE4ODA1MzRjMWU1Y2RlYjM5MmQ4YzFmNDUiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgwZTM5N2ZhOTczY2Y1MzIzZTMzYjA3MTU0YjAyNGYzIj5HZXREb2N1bWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZjMyODIyOTQ5ODZjZGIyMTY2NDZlYTFmNjdhZjJjODciPkdldFRleHQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTY1NTlhNTMwY2E2NzYzZmMzMDFhMTRkNzdlZDI4YzE3Ij5HZXRVc2VyRGF0YTwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDAxMjAyMTBlNDY4MGVmMjA4ODYwMTc1M2NlMGVkZTQiPkdldFVzZXJEYXRhPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZDliNzVlNTRlYzE5MzAxYzhiNGQ1ZmY1ODNkMGIzZDUiPkluc2VydEFmdGVyQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqYWZ0ZXJUaGlzLCBjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwYzE0NmZhMmZmZjAxNTdiNjgxNTk0MTAyZjQ4Y2JjNyI+SW5zZXJ0QmVmb3JlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqYmVmb3JlVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZDdkNDYzMGUxYTJhOTE2ZWRkYTE2YmUyMjQ0OGE4YmEiPkluc2VydEVuZENoaWxkPC9hPihjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FkNGIxNDcyNTMxYzY0N2EyNWIxODQwYTg3YWU0MjQzOCI+SXNXaGl0ZVNwYWNlQ29uZGVuc2VkPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTg2MjExOTZiYTM3MDVmYTIyNmJlZjRhNzYxY2M1MWI2Ij5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FkZmFlZjM1YTA3NmI5MzQzYWRjMTQyMDc1NzM3NmMzOSI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBjaGFyICp2YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTFjYmFhZjhlODJjMDlhZDc2M2Q1MjYxNmQ3NTcyNGRmIj5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE2ZTlhZDUzZTJmNTQ0NWIxNGJmMzI1YzkwYWE4NjJjIj5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhODYxOTFiNDlmOTE3N2JlMTMyYjg1YjE0NjU1ZjEzODEiPkxhc3RBdHRyaWJ1dGU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NDMyZDJiMjQ5NWY2Y2FmOWNiNDI3OGRmNzA2YTAzMSI+TGFzdENoaWxkPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiYWQ1YmYxMDU5YzQ4MTI3Yjk1ODcxMWVmODllOGU1ZCI+TGFzdENoaWxkPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNTZkMGNkYmZjZmVjY2FlODNmM2ExYzk3NDdhOGI2MyI+TGFzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2OTc3MmM5MjAyZjcwNTUzZjk0MGIxNWMwNmIwN2JlMyI+TGFzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTVkMjk0NDJhZTQ2ZGU2ZDAxNjg0MjkxNTYxOTdiZmM2Ij5MaW5rRW5kQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqYWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMWI5NGQyZjdmYTdhYjI1YTVhOGU4ZDQzNDBjNDQ5YzkiPk5leHRTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNzU3YzFmNGQwMWU4Yzk1OTZmZmRiZDU2MWM3NmFlYSI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjg1NGJhZWJhMzg0ZjVmZTk4NTlmNWFlZTAzYjU0OGUiPk5leHRTaWJsaW5nPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMmU2MWMwYjg5YTc3ZTM2YTBlOGM2MDQ5MDAwM2NiNDYiPk5leHRTaWJsaW5nPC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3M2FjZjkyOWQ0OWQxMGJkMGU1ZmIzZDMxYjAzNzJkMSI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwNzFiYTc3ZmQ3YWI3OTQwMmZhODRiN2U5Yjg2MDdiMyI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3NTcyZDBhZjlkMWU2OTZlZTNmMDVkOGJiNWViYjQ2MyI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MDY5NThlMzQ0MDY3MjlhNGU0YzUzMjZlYTM5ZDA4MSI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWVlZDIxYWQzMDYzMGVmNmU3ZmFmMDk2MTI3ZWRjOWYzIj5Ob0NoaWxkcmVuPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODM2ZWRlZDQ5MjBhYjllOWVmMjg0OTZmNDhjZDk1YTIiPk5vZGVUeXBlPC9hPiBlbnVtIG5hbWU8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODZjZDQ5Y2ZiMTdhODQ0YzAwMTBiMzEzNmFjOTY2YzciPm9wZXJhdG9yJmx0OyZsdDs8L2E+KHN0ZDo6b3N0cmVhbSAmYW1wO291dCwgY29uc3QgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUyZWYxN2U3MDgwZGYyNDkwY2Y4N2JkZTM4MDY4NWFiIj5vcGVyYXRvciZsdDsmbHQ7PC9hPihzdGQ6OnN0cmluZyAmYW1wO291dCwgY29uc3QgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWI1N2JkNDI2NTYzYzkyNjg0NGY2NWE3ODQxMmUxOGI5Ij5vcGVyYXRvciZndDsmZ3Q7PC9hPihzdGQ6OmlzdHJlYW0gJmFtcDtpbiwgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWI2NDMwNDMxMzJmZmQ3OTRmODYwMjY4NWQzNGE5ODJlIj5QYXJlbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWMyY2Q4OTI3Njg3MjYyNzBlNTExYjJhYjMyZGU0ZDEwIj5QcmV2aW91c1NpYmxpbmc8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1YmRkNDkzMjdlZWMxZTYwOWI3ZDIyYWY3MDZiODMxNiI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NTgyNzZmNTdkMzVkNWQ0MjU2ZDFkYzFhMmMzOThhYiI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjYzhhMDQzNGM3ZjQwMWQ0YTNiNmRlZTc3YzFhNTkxMiI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWZiZjUyNzM2ZTcwZmM5MWVjOWQ3NjA3MjFkNmY0ZmQyIj5QcmludDwvYT4oRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZjRhMWQzZjg4YzI4ZWIwZjMxMTVkYzM5ZWJkODNmZmYiPlF1ZXJ5Qm9vbEF0dHJpYnV0ZTwvYT4oY29uc3QgY2hhciAqbmFtZSwgYm9vbCAqX3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhODk4ZDc3MzBlY2MzNDFmMGJmZmM3YTlkYWRiZjFjZTciPlF1ZXJ5RG91YmxlQXR0cmlidXRlPC9hPihjb25zdCBjaGFyICpuYW1lLCBkb3VibGUgKl92YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWEwNGQzYWYxMTYwMWVmNWE1Zjg4Mjk1MjAzYTg0M2JlIj5RdWVyeUZsb2F0QXR0cmlidXRlPC9hPihjb25zdCBjaGFyICpuYW1lLCBmbG9hdCAqX3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWVhMGJmZTQ3MTM4MGYyODFjNTk0NTc3MGRkYmY1MmI5Ij5RdWVyeUludEF0dHJpYnV0ZTwvYT4oY29uc3QgY2hhciAqbmFtZSwgaW50ICpfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExNDMyMWFjMzYwZWZlOTA2ZWQ0NDlkOWRiM2ZkOTk2MSI+UXVlcnlTdHJpbmdBdHRyaWJ1dGU8L2E+KGNvbnN0IGNoYXIgKm5hbWUsIHN0ZDo6c3RyaW5nICpfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZTQ4ZGY2NDRmODkwYWI4NmZhMTk4MzlhYzQwMWYwMGQiPlF1ZXJ5VW5zaWduZWRBdHRyaWJ1dGU8L2E+KGNvbnN0IGNoYXIgKm5hbWUsIHVuc2lnbmVkICpfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlM2I5YTAzYjBhNTY2NjNhNDA4MDFjNzI1NjY4MzU3NiI+UXVlcnlWYWx1ZUF0dHJpYnV0ZTwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtuYW1lLCBUICpvdXRWYWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E1Njk3OTc2N2RlY2E3OTQzNzZiMWRmYTY5YTUyNWIyYSI+UmVtb3ZlQXR0cmlidXRlPC9hPihjb25zdCBjaGFyICpuYW1lKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExYWZhNmFlYTcxNjUxMTMyNmE2MDhlNGMwNWRmNGYzYSI+UmVtb3ZlQXR0cmlidXRlPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO25hbWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FlMTlkODUxMGVmYzkwNTk2NTUyZjRmZWVhYzlhOGZiZiI+UmVtb3ZlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqcmVtb3ZlVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMGM0OWU3MzlhMTdiOTkzODA1MGMyMmNkODk2MTdmYmQiPlJlcGxhY2VDaGlsZDwvYT4oVGlYbWxOb2RlICpyZXBsYWNlVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7d2l0aFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTAyNGJjZWIwNzAxODhkZjkyYzJhOGQ4ODUyZGQwODUzIj5Sb3c8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FiZjBiM2JkN2YwZTRjNzQ2YTg5ZWM2ZTdmMTAxZmMzMiI+U2V0QXR0cmlidXRlPC9hPihjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTgwZWQ2NWIxZDE5NGM3MWM2Yzk5ODZhZTQyMzM3ZDdkIj5TZXRBdHRyaWJ1dGU8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7bmFtZSwgY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTZmMThkNTRmYmUyNWJiYzUyNzkzNmVlNjUzNjNiM2M1Ij5TZXRBdHRyaWJ1dGU8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7bmFtZSwgaW50IF92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhY2U2ZjRiZTc1ZTM3MzcyNmQ0Nzc0MDczZDY2NmQxYTciPlNldEF0dHJpYnV0ZTwvYT4oY29uc3QgY2hhciAqbmFtZSwgaW50IHZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwZjc5OWVjNjQ1YmZiOGQ4YTk2OWU4MzQ3OGYzNzljMSI+U2V0Q29uZGVuc2VXaGl0ZVNwYWNlPC9hPihib29sIGNvbmRlbnNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EwZDFkZDk3NWQ3NTQ5Njc3ODE3N2UzNWFiZmUwZWMwYiI+U2V0RG91YmxlQXR0cmlidXRlPC9hPihjb25zdCBjaGFyICpuYW1lLCBkb3VibGUgdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWM2YjNlMGY3OTA5MzBkNDk3MGVjMzA3NjRlOTM3YjVkIj5TZXRVc2VyRGF0YTwvYT4odm9pZCAqdXNlcik8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTJhMzgzMjljYTVkM2YyOGY5OGNlOTMyYjgyOTlhZTkwIj5TZXRWYWx1ZTwvYT4oY29uc3QgY2hhciAqX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjU5OGQ1ZjQ0ODA0MmMxYWJiZWFlNDUwM2RkNDVmZjIiPlNldFZhbHVlPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTAxYmMzYWIzNzJkMzVkYTA4ZWZjYmJlNjVhZDkwYzYwIj5UaVhtbEVsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKmluX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E0MGZjMmUzYzFhOTU1ZTJmNzhlMWEzMjM1MGQxODBlNyI+VGlYbWxFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYTBhNTA4NmY5ZWFlZTkxMGJiZmRjN2Y5NzVlMjY1NzQiPlRvQ29tbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM4M2UwNmEwNzg3ZjcwNjM5NTM5MzQ4Njc5OTBmODQ5Ij5Ub0NvbW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTlmNDNlNjk4NGZjN2Q0YWZkNmViMzI3MTRjNmI3YjcyIj5Ub0RlY2xhcmF0aW9uPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDAyNzEzNmNhODIwZmY0YTYzNmI2MDcyMzFiNmE2ZGYiPlRvRGVjbGFyYXRpb248L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYThhNGNkYTRiMTVjMjlmNjRjZmY0MTkzMDlhZWJlZDA4Ij5Ub0RvY3VtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNmE0YzhhYzI4ZWU3YTc0NWQwNTlkYjY2OTFlMDNiYWUiPlRvRG9jdW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWM1YjhkMGUyNWZhMjNmZDlhY2JiNmQxNDYwODI5MDFjIj5Ub0VsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E5ZGVmODYzMzdlYTdhNzU1ZWI0MWNhYzk4MGY2MGM3YSI+VG9FbGVtZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E5NWE0NmE1MmM1MjU5OTJkNmI0ZWUwOGJlYjE0Y2Q2OSI+VG9UZXh0PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhM2RkZmJjYWM3OGZiZWEwNDFmYWQ1N2U1YzZkNjBhMDMiPlRvVGV4dDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZmQ3MjA1Y2YzMWQ3YTM3NjkyOWY4YTM2OTMwNjI3YTIiPlRvVW5rbm93bjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTA2ZGU1YWY4NTI2NjhjN2U0YWYwZDA5YzIwNWYwYjBkIj5Ub1Vua25vd248L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU3Yjk5ZDVjOTdkNjdhNDJiOTc1MmY1MjEwYTFiYTVlIj5UeXBlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjI0MmMwMTU5MDE5MWY2NDQ1NjlmYTg5YTA4MGQ5N2MiPnVzZXJEYXRhPC9hPjwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbcHJvdGVjdGVkXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzc5NDNlYjkwZDEyYzI4OTJiMTMzN2E5ZjU5MThiNDEiPlZhbHVlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNmQ5ZTUwNTYxOWQzOWJmNTBiZmQ5NjA5YzkxNjllYTUiPlZhbHVlU3RyPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci08L3RhYmxlPjwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Cis8bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+Cis8L2hlYWQ+PGJvZHk+Cis8IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNC40IC0tPgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJpbmRleC5odG1sIj5NYWluJm5ic3A7UGFnZTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJoaWVyYXJjaHkuaHRtbCI+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPkNsYXNzJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmaWxlcy5odG1sIj5GaWxlJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+Q2xhc3MmbmJzcDtNZW1iZXJzPC9hPjwvZGl2PgorPGgxPlRpWG1sRWxlbWVudCBNZW1iZXIgTGlzdDwvaDE+VGhpcyBpcyB0aGUgY29tcGxldGUgbGlzdCBvZiBtZW1iZXJzIGZvciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4sIGluY2x1ZGluZyBhbGwgaW5oZXJpdGVkIG1lbWJlcnMuPHA+PHRhYmxlPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTUiPkF0dHJpYnV0ZTwvYT4oY29uc3QgY2hhciAqbmFtZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTYiPkF0dHJpYnV0ZTwvYT4oY29uc3QgY2hhciAqbmFtZSwgaW50ICppKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNyI+QXR0cmlidXRlPC9hPihjb25zdCBjaGFyICpuYW1lLCBkb3VibGUgKmQpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1Ij5DbGVhcjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyOCI+Q2xvbmU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNCI+Q29sdW1uPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjMiPkZpcnN0QXR0cmlidXRlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhOCI+Rmlyc3RDaGlsZDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEwIj5GaXJzdENoaWxkPC9hPihjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTExIj5GaXJzdENoaWxkPC9hPihjb25zdCBjaGFyICp2YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTYiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE3Ij5GaXJzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUwIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTIiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU0Ij5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTUiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU3Ij5HZXREb2N1bWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjciPkdldFRleHQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI5Ij5JbnNlcnRBZnRlckNoaWxkPC9hPihUaVhtbE5vZGUgKmFmdGVyVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjgiPkluc2VydEJlZm9yZUNoaWxkPC9hPihUaVhtbE5vZGUgKmJlZm9yZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI2Ij5JbnNlcnRFbmRDaGlsZDwvYT4oY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNlMSI+SXNXaGl0ZVNwYWNlQ29uZGVuc2VkPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTIwIj5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyMiI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBjaGFyICp2YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI0Ij5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI1Ij5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBUaVhtbE5vZGUgKnByZXZpb3VzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjUiPkxhc3RBdHRyaWJ1dGU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMyI+TGFzdENoaWxkPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNSI+TGFzdENoaWxkPC9hPihjb25zdCBjaGFyICp2YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTgiPkxhc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTkiPkxhc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNyI+TGlua0VuZENoaWxkPC9hPihUaVhtbE5vZGUgKmFkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM4Ij5OZXh0U2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzkiPk5leHRTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQwIj5OZXh0U2libGluZzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQyIj5OZXh0U2libGluZzwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDQiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDYiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDgiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDkiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1OSI+Tm9DaGlsZHJlbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjdzciPk5vZGVUeXBlPC9hPiBlbnVtIG5hbWU8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNuMyI+b3BlcmF0b3ImbHQ7Jmx0OzwvYT4oc3RkOjpvc3RyZWFtICZhbXA7b3V0LCBjb25zdCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNuNCI+b3BlcmF0b3ImbHQ7Jmx0OzwvYT4oc3RkOjpzdHJpbmcgJmFtcDtvdXQsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI24yIj5vcGVyYXRvciZndDsmZ3Q7PC9hPihzdGQ6OmlzdHJlYW0gJmFtcDtpbiwgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYiPlBhcmVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzIiPlByZXZpb3VzU2libGluZzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM0Ij5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM2Ij5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM3Ij5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjkiPlByaW50PC9hPihGSUxFICpjZmlsZSwgaW50IGRlcHRoKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E5Ij5RdWVyeURvdWJsZUF0dHJpYnV0ZTwvYT4oY29uc3QgY2hhciAqbmFtZSwgZG91YmxlICpfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExMCI+UXVlcnlGbG9hdEF0dHJpYnV0ZTwvYT4oY29uc3QgY2hhciAqbmFtZSwgZmxvYXQgKl92YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E4Ij5RdWVyeUludEF0dHJpYnV0ZTwvYT4oY29uc3QgY2hhciAqbmFtZSwgaW50ICpfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyMSI+UmVtb3ZlQXR0cmlidXRlPC9hPihjb25zdCBjaGFyICpuYW1lKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyMiI+UmVtb3ZlQXR0cmlidXRlPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO25hbWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMSI+UmVtb3ZlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqcmVtb3ZlVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzAiPlJlcGxhY2VDaGlsZDwvYT4oVGlYbWxOb2RlICpyZXBsYWNlVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7d2l0aFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTMiPlJvdzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTExIj5TZXRBdHRyaWJ1dGU8L2E+KGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMTciPlNldEF0dHJpYnV0ZTwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtuYW1lLCBjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTE5Ij5TZXRBdHRyaWJ1dGU8L2E+KGNvbnN0IGNoYXIgKm5hbWUsIGludCB2YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNlMCI+U2V0Q29uZGVuc2VXaGl0ZVNwYWNlPC9hPihib29sIGNvbmRlbnNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyMCI+U2V0RG91YmxlQXR0cmlidXRlPC9hPihjb25zdCBjaGFyICpuYW1lLCBkb3VibGUgdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMiPlNldFZhbHVlPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0Ij5TZXRWYWx1ZTwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EwIj5UaVhtbEVsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKmluX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExIj5UaVhtbEVsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MiI+VG9Db21tZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjgiPlRvQ29tbWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjUiPlRvRGVjbGFyYXRpb248L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MSI+VG9EZWNsYXJhdGlvbjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjAiPlRvRG9jdW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NiI+VG9Eb2N1bWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjEiPlRvRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY3Ij5Ub0VsZW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY0Ij5Ub1RleHQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MCI+VG9UZXh0PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MyI+VG9Vbmtub3duPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjkiPlRvVW5rbm93bjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTYiPlR5cGU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI3AxIj51c2VyRGF0YTwvYT48L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW3Byb3RlY3RlZF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEiPlZhbHVlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMiI+VmFsdWVTdHI8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKzwvdGFibGU+PGhyIHNpemU9IjEiPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFNhdCBPY3QgOCAxNDoxNTozMCAyMDA1IGZvciBUaW55WG1sIGJ5Jm5ic3A7CiA8YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgorPGltZyBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iIGFsaWduPSJtaWRkbGUiIGJvcmRlcj0iMCI+PC9hPiAxLjQuNCA8L3NtYWxsPjwvYWRkcmVzcz4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCBiL2RvY3MvY2xhc3NUaVhtbEVsZW1lbnQuaHRtbAppbmRleCA0ZDZhNWU5Li4yN2I0YmQ5IDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxFbGVtZW50Lmh0bWwKKysrIGIvZG9jcy9jbGFzc1RpWG1sRWxlbWVudC5odG1sCkBAIC0xLDQ3NCArMSw0MTggQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iPgorPGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1pc28tODg1OS0xIj4KIDx0aXRsZT5UaW55WG1sOiBUaVhtbEVsZW1lbnQgQ2xhc3MgUmVmZXJlbmNlPC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotPGgxPlRpWG1sRWxlbWVudCBDbGFzcyBSZWZlcmVuY2U8L2gxPjwhLS0gZG94eXRhZzogY2xhc3M9IlRpWG1sRWxlbWVudCIgLS0+PCEtLSBkb3h5dGFnOiBpbmhlcml0cz0iVGlYbWxOb2RlIiAtLT4KLTxwPlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiAgCi08YSBocmVmPSIjX2RldGFpbHMiPk1vcmUuLi48L2E+PC9wPgotCi08cD48Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT48L3A+Ci08ZGl2IGNsYXNzPSJkeW5oZWFkZXIiPgotSW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxFbGVtZW50OjwvZGl2PgotPGRpdiBjbGFzcz0iZHluc2VjdGlvbiI+Ci0gPGRpdiBjbGFzcz0iY2VudGVyIj4KLSAgPGltZyBzcmM9ImNsYXNzVGlYbWxFbGVtZW50LnBuZyIgdXNlbWFwPSIjVGlYbWxFbGVtZW50X21hcCIgYWx0PSIiLz4KLSAgPG1hcCBpZD0iVGlYbWxFbGVtZW50X21hcCIgbmFtZT0iVGlYbWxFbGVtZW50X21hcCI+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiBhbHQ9IlRpWG1sTm9kZSIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMCw1Niw4Nyw4MCIvPgotPGFyZWEgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCIgYWx0PSJUaVhtbEJhc2UiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjAsMCw4NywyNCIvPgorPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPkNsYXNzJm5ic3A7TWVtYmVyczwvYT48L2Rpdj4KKzxoMT5UaVhtbEVsZW1lbnQgQ2xhc3MgUmVmZXJlbmNlPC9oMT48IS0tIGRveHl0YWc6IGNsYXNzPSJUaVhtbEVsZW1lbnQiIC0tPjwhLS0gZG94eXRhZzogaW5oZXJpdHM9IlRpWG1sTm9kZSIgLS0+VGhlIGVsZW1lbnQgaXMgYSBjb250YWluZXIgY2xhc3MuICAKKzxhIGhyZWY9IiNfZGV0YWlscyI+TW9yZS4uLjwvYT4KKzxwPgorPGNvZGU+I2luY2x1ZGUgJmx0OzxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aC1zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPiZndDs8L2NvZGU+Cis8cD4KKzxwPkluaGVyaXRhbmNlIGRpYWdyYW0gZm9yIFRpWG1sRWxlbWVudDoKKzxwPjxjZW50ZXI+PGltZyBzcmM9ImNsYXNzVGlYbWxFbGVtZW50LnBuZyIgdXNlbWFwPSIjVGlYbWxFbGVtZW50X21hcCIgYm9yZGVyPSIwIiBhbHQ9IiI+PC9jZW50ZXI+Cis8bWFwIG5hbWU9IlRpWG1sRWxlbWVudF9tYXAiPgorPGFyZWEgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgYWx0PSJUaVhtbE5vZGUiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjAsNTYsODcsODAiPgorPGFyZWEgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCIgYWx0PSJUaVhtbEJhc2UiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjAsMCw4NywyNCI+CiA8L21hcD4KLSA8L2Rpdj4KLTwvZGl2PgorPGEgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQtbWVtYmVycy5odG1sIj5MaXN0IG9mIGFsbCBtZW1iZXJzLjwvYT48dGFibGUgYm9yZGVyPSIwIiBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiPgorPHRyPjx0ZD48L3RkPjwvdHI+Cis8dHI+PHRkIGNvbHNwYW49IjIiPjxicj48aDI+UHVibGljIE1lbWJlciBGdW5jdGlvbnM8L2gyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTAiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpUaVhtbEVsZW1lbnQiIHJlZj0iYTAiIGFyZ3M9Iihjb25zdCBjaGFyICppbl92YWx1ZSkiIC0tPgorJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMCI+VGlYbWxFbGVtZW50PC9hPiAoY29uc3QgY2hhciAqaW5fdmFsdWUpPC90ZD48L3RyPgogCi08cD48YSBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC1tZW1iZXJzLmh0bWwiPkxpc3Qgb2YgYWxsIG1lbWJlcnMuPC9hPjwvcD4KLTx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+Ci08dHI+PHRkIGNvbHNwYW49IjIiPjxoMj5QdWJsaWMgTWVtYmVyIEZ1bmN0aW9uczwvaDI+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMDFiYzNhYjM3MmQzNWRhMDhlZmNiYmU2NWFkOTBjNjAiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpUaVhtbEVsZW1lbnQiIHJlZj0iYTAxYmMzYWIzNzJkMzVkYTA4ZWZjYmJlNjVhZDkwYzYwIiBhcmdzPSIoY29uc3QgY2hhciAqaW5fdmFsdWUpIiAtLT4KLSZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTAxYmMzYWIzNzJkMzVkYTA4ZWZjYmJlNjVhZDkwYzYwIj5UaVhtbEVsZW1lbnQ8L2E+IChjb25zdCBjaGFyICppbl92YWx1ZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5Db25zdHJ1Y3QgYW4gZWxlbWVudC4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE0MGZjMmUzYzFhOTU1ZTJmNzhlMWEzMjM1MGQxODBlNyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEVsZW1lbnQ6OlRpWG1sRWxlbWVudCIgcmVmPSJhNDBmYzJlM2MxYTk1NWUyZjc4ZTFhMzIzNTBkMTgwZTciIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkiIC0tPgotJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNDBmYzJlM2MxYTk1NWUyZjc4ZTFhMzIzNTBkMTgwZTciPlRpWG1sRWxlbWVudDwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPnN0ZDo6c3RyaW5nIGNvbnN0cnVjdG9yLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWU0MTlhNDQyYTk3MDFhNjJiMGMzZDhmZDFjYmRkMTJkIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6QXR0cmlidXRlIiByZWY9ImFlNDE5YTQ0MmE5NzAxYTYyYjBjM2Q4ZmQxY2JkZDEyZCIgYXJncz0iKGNvbnN0IGNoYXIgKm5hbWUpIGNvbnN0ICIgLS0+Ci1jb25zdCBjaGFyICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlNDE5YTQ0MmE5NzAxYTYyYjBjM2Q4ZmQxY2JkZDEyZCI+QXR0cmlidXRlPC9hPiAoY29uc3QgY2hhciAqbmFtZSkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+R2l2ZW4gYW4gYXR0cmlidXRlIG5hbWUsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZTQxOWE0NDJhOTcwMWE2MmIwYzNkOGZkMWNiZGQxMmQiIHRpdGxlPSJHaXZlbiBhbiBhdHRyaWJ1dGUgbmFtZSwgQXR0cmlidXRlKCkgcmV0dXJucyB0aGUgdmFsdWUgZm9yIHRoZSBhdHRyaWJ1dGUgb2YgdGhhdC4uLiI+QXR0cmlidXRlKCk8L2E+IHJldHVybnMgdGhlIHZhbHVlIGZvciB0aGUgYXR0cmlidXRlIG9mIHRoYXQgbmFtZSwgb3IgbnVsbCBpZiBub25lIGV4aXN0cy4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+Y29uc3QgY2hhciAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMGVkODM0OGZkYzU2YjcyYTZiNDkwMGNlNWJhYzE4NDkiPkF0dHJpYnV0ZTwvYT4gKGNvbnN0IGNoYXIgKm5hbWUsIGludCAqaSkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+R2l2ZW4gYW4gYXR0cmlidXRlIG5hbWUsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZTQxOWE0NDJhOTcwMWE2MmIwYzNkOGZkMWNiZGQxMmQiIHRpdGxlPSJHaXZlbiBhbiBhdHRyaWJ1dGUgbmFtZSwgQXR0cmlidXRlKCkgcmV0dXJucyB0aGUgdmFsdWUgZm9yIHRoZSBhdHRyaWJ1dGUgb2YgdGhhdC4uLiI+QXR0cmlidXRlKCk8L2E+IHJldHVybnMgdGhlIHZhbHVlIGZvciB0aGUgYXR0cmlidXRlIG9mIHRoYXQgbmFtZSwgb3IgbnVsbCBpZiBub25lIGV4aXN0cy4gIDxhIGhyZWY9IiNhMGVkODM0OGZkYzU2YjcyYTZiNDkwMGNlNWJhYzE4NDkiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5jb25zdCBjaGFyICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlYWZmOTlkNGYwZWE1YjM0ZjdhZWUyMDJhYWQ0NTdiYSI+QXR0cmlidXRlPC9hPiAoY29uc3QgY2hhciAqbmFtZSwgZG91YmxlICpkKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5HaXZlbiBhbiBhdHRyaWJ1dGUgbmFtZSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlNDE5YTQ0MmE5NzAxYTYyYjBjM2Q4ZmQxY2JkZDEyZCIgdGl0bGU9IkdpdmVuIGFuIGF0dHJpYnV0ZSBuYW1lLCBBdHRyaWJ1dGUoKSByZXR1cm5zIHRoZSB2YWx1ZSBmb3IgdGhlIGF0dHJpYnV0ZSBvZiB0aGF0Li4uIj5BdHRyaWJ1dGUoKTwvYT4gcmV0dXJucyB0aGUgdmFsdWUgZm9yIHRoZSBhdHRyaWJ1dGUgb2YgdGhhdCBuYW1lLCBvciBudWxsIGlmIG5vbmUgZXhpc3RzLiAgPGEgaHJlZj0iI2FlYWZmOTlkNGYwZWE1YjM0ZjdhZWUyMDJhYWQ0NTdiYSI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmludCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWVhMGJmZTQ3MTM4MGYyODFjNTk0NTc3MGRkYmY1MmI5Ij5RdWVyeUludEF0dHJpYnV0ZTwvYT4gKGNvbnN0IGNoYXIgKm5hbWUsIGludCAqX3ZhbHVlKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5RdWVyeUludEF0dHJpYnV0ZSBleGFtaW5lcyB0aGUgYXR0cmlidXRlIC0gaXQgaXMgYW4gYWx0ZXJuYXRpdmUgdG8gdGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZTQxOWE0NDJhOTcwMWE2MmIwYzNkOGZkMWNiZGQxMmQiIHRpdGxlPSJHaXZlbiBhbiBhdHRyaWJ1dGUgbmFtZSwgQXR0cmlidXRlKCkgcmV0dXJucyB0aGUgdmFsdWUgZm9yIHRoZSBhdHRyaWJ1dGUgb2YgdGhhdC4uLiI+QXR0cmlidXRlKCk8L2E+IG1ldGhvZCB3aXRoIHJpY2hlciBlcnJvciBjaGVja2luZy4gIDxhIGhyZWY9IiNhZWEwYmZlNDcxMzgwZjI4MWM1OTQ1NzcwZGRiZjUyYjkiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWU0OGRmNjQ0Zjg5MGFiODZmYTE5ODM5YWM0MDFmMDBkIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6UXVlcnlVbnNpZ25lZEF0dHJpYnV0ZSIgcmVmPSJhZTQ4ZGY2NDRmODkwYWI4NmZhMTk4MzlhYzQwMWYwMGQiIGFyZ3M9Iihjb25zdCBjaGFyICpuYW1lLCB1bnNpZ25lZCAqX3ZhbHVlKSBjb25zdCAiIC0tPgotaW50Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZTQ4ZGY2NDRmODkwYWI4NmZhMTk4MzlhYzQwMWYwMGQiPlF1ZXJ5VW5zaWduZWRBdHRyaWJ1dGU8L2E+IChjb25zdCBjaGFyICpuYW1lLCB1bnNpZ25lZCAqX3ZhbHVlKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5RdWVyeVVuc2lnbmVkQXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBzZWUgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlYTBiZmU0NzEzODBmMjgxYzU5NDU3NzBkZGJmNTJiOSIgdGl0bGU9IlF1ZXJ5SW50QXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBpdCBpcyBhbiBhbHRlcm5hdGl2ZSB0byB0aGUgQXR0cmlidXRlKCkuLi4iPlF1ZXJ5SW50QXR0cmlidXRlKCk8L2E+LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5pbnQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FmNGExZDNmODhjMjhlYjBmMzExNWRjMzllYmQ4M2ZmZiI+UXVlcnlCb29sQXR0cmlidXRlPC9hPiAoY29uc3QgY2hhciAqbmFtZSwgYm9vbCAqX3ZhbHVlKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5RdWVyeUJvb2xBdHRyaWJ1dGUgZXhhbWluZXMgdGhlIGF0dHJpYnV0ZSAtIHNlZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWVhMGJmZTQ3MTM4MGYyODFjNTk0NTc3MGRkYmY1MmI5IiB0aXRsZT0iUXVlcnlJbnRBdHRyaWJ1dGUgZXhhbWluZXMgdGhlIGF0dHJpYnV0ZSAtIGl0IGlzIGFuIGFsdGVybmF0aXZlIHRvIHRoZSBBdHRyaWJ1dGUoKS4uLiI+UXVlcnlJbnRBdHRyaWJ1dGUoKTwvYT4uICA8YSBocmVmPSIjYWY0YTFkM2Y4OGMyOGViMGYzMTE1ZGMzOWViZDgzZmZmIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE4OThkNzczMGVjYzM0MWYwYmZmYzdhOWRhZGJmMWNlNyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEVsZW1lbnQ6OlF1ZXJ5RG91YmxlQXR0cmlidXRlIiByZWY9ImE4OThkNzczMGVjYzM0MWYwYmZmYzdhOWRhZGJmMWNlNyIgYXJncz0iKGNvbnN0IGNoYXIgKm5hbWUsIGRvdWJsZSAqX3ZhbHVlKSBjb25zdCAiIC0tPgotaW50Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhODk4ZDc3MzBlY2MzNDFmMGJmZmM3YTlkYWRiZjFjZTciPlF1ZXJ5RG91YmxlQXR0cmlidXRlPC9hPiAoY29uc3QgY2hhciAqbmFtZSwgZG91YmxlICpfdmFsdWUpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlF1ZXJ5RG91YmxlQXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBzZWUgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlYTBiZmU0NzEzODBmMjgxYzU5NDU3NzBkZGJmNTJiOSIgdGl0bGU9IlF1ZXJ5SW50QXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBpdCBpcyBhbiBhbHRlcm5hdGl2ZSB0byB0aGUgQXR0cmlidXRlKCkuLi4iPlF1ZXJ5SW50QXR0cmlidXRlKCk8L2E+LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWEwNGQzYWYxMTYwMWVmNWE1Zjg4Mjk1MjAzYTg0M2JlIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6UXVlcnlGbG9hdEF0dHJpYnV0ZSIgcmVmPSJhYTA0ZDNhZjExNjAxZWY1YTVmODgyOTUyMDNhODQzYmUiIGFyZ3M9Iihjb25zdCBjaGFyICpuYW1lLCBmbG9hdCAqX3ZhbHVlKSBjb25zdCAiIC0tPgotaW50Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhYTA0ZDNhZjExNjAxZWY1YTVmODgyOTUyMDNhODQzYmUiPlF1ZXJ5RmxvYXRBdHRyaWJ1dGU8L2E+IChjb25zdCBjaGFyICpuYW1lLCBmbG9hdCAqX3ZhbHVlKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5RdWVyeUZsb2F0QXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBzZWUgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlYTBiZmU0NzEzODBmMjgxYzU5NDU3NzBkZGJmNTJiOSIgdGl0bGU9IlF1ZXJ5SW50QXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBpdCBpcyBhbiBhbHRlcm5hdGl2ZSB0byB0aGUgQXR0cmlidXRlKCkuLi4iPlF1ZXJ5SW50QXR0cmlidXRlKCk8L2E+LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTE0MzIxYWMzNjBlZmU5MDZlZDQ0OWQ5ZGIzZmQ5OTYxIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6UXVlcnlTdHJpbmdBdHRyaWJ1dGUiIHJlZj0iYTE0MzIxYWMzNjBlZmU5MDZlZDQ0OWQ5ZGIzZmQ5OTYxIiBhcmdzPSIoY29uc3QgY2hhciAqbmFtZSwgc3RkOjpzdHJpbmcgKl92YWx1ZSkgY29uc3QgIiAtLT4KLWludCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTE0MzIxYWMzNjBlZmU5MDZlZDQ0OWQ5ZGIzZmQ5OTYxIj5RdWVyeVN0cmluZ0F0dHJpYnV0ZTwvYT4gKGNvbnN0IGNoYXIgKm5hbWUsIHN0ZDo6c3RyaW5nICpfdmFsdWUpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlF1ZXJ5U3RyaW5nQXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBzZWUgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlYTBiZmU0NzEzODBmMjgxYzU5NDU3NzBkZGJmNTJiOSIgdGl0bGU9IlF1ZXJ5SW50QXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBpdCBpcyBhbiBhbHRlcm5hdGl2ZSB0byB0aGUgQXR0cmlidXRlKCkuLi4iPlF1ZXJ5SW50QXR0cmlidXRlKCk8L2E+LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbVRlbXBsUGFyYW1zIiBjb2xzcGFuPSIyIj50ZW1wbGF0ZSZsdDt0eXBlbmFtZSBUICZndDsgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtVGVtcGxJdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+aW50Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbVRlbXBsSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlM2I5YTAzYjBhNTY2NjNhNDA4MDFjNzI1NjY4MzU3NiI+UXVlcnlWYWx1ZUF0dHJpYnV0ZTwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7bmFtZSwgVCAqb3V0VmFsdWUpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlRlbXBsYXRlIGZvcm0gb2YgdGhlIGF0dHJpYnV0ZSBxdWVyeSB3aGljaCB3aWxsIHRyeSB0byByZWFkIHRoZSBhdHRyaWJ1dGUgaW50byB0aGUgc3BlY2lmaWVkIHR5cGUuICA8YSBocmVmPSIjYWUzYjlhMDNiMGE1NjY2M2E0MDgwMWM3MjU2NjgzNTc2Ij48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+dm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWJmMGIzYmQ3ZjBlNGM3NDZhODllYzZlN2YxMDFmYzMyIj5TZXRBdHRyaWJ1dGU8L2E+IChjb25zdCBjaGFyICpuYW1lLCBjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U2V0cyBhbiBhdHRyaWJ1dGUgb2YgbmFtZSB0byBhIGdpdmVuIHZhbHVlLiAgPGEgaHJlZj0iI2FiZjBiM2JkN2YwZTRjNzQ2YTg5ZWM2ZTdmMTAxZmMzMiI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E4MGVkNjViMWQxOTRjNzFjNmM5OTg2YWU0MjMzN2Q3ZCI+U2V0QXR0cmlidXRlPC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtuYW1lLCBjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE2ZjE4ZDU0ZmJlMjViYmM1Mjc5MzZlZTY1MzYzYjNjNSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEVsZW1lbnQ6OlNldEF0dHJpYnV0ZSIgcmVmPSJhNmYxOGQ1NGZiZTI1YmJjNTI3OTM2ZWU2NTM2M2IzYzUiIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO25hbWUsIGludCBfdmFsdWUpIiAtLT4KLXZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E2ZjE4ZDU0ZmJlMjViYmM1Mjc5MzZlZTY1MzYzYjNjNSI+U2V0QXR0cmlidXRlPC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtuYW1lLCBpbnQgX3ZhbHVlKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj52b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhY2U2ZjRiZTc1ZTM3MzcyNmQ0Nzc0MDczZDY2NmQxYTciPlNldEF0dHJpYnV0ZTwvYT4gKGNvbnN0IGNoYXIgKm5hbWUsIGludCB2YWx1ZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TZXRzIGFuIGF0dHJpYnV0ZSBvZiBuYW1lIHRvIGEgZ2l2ZW4gdmFsdWUuICA8YSBocmVmPSIjYWNlNmY0YmU3NWUzNzM3MjZkNDc3NDA3M2Q2NjZkMWE3Ij48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+dm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTBkMWRkOTc1ZDc1NDk2Nzc4MTc3ZTM1YWJmZTBlYzBiIj5TZXREb3VibGVBdHRyaWJ1dGU8L2E+IChjb25zdCBjaGFyICpuYW1lLCBkb3VibGUgdmFsdWUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U2V0cyBhbiBhdHRyaWJ1dGUgb2YgbmFtZSB0byBhIGdpdmVuIHZhbHVlLiAgPGEgaHJlZj0iI2EwZDFkZDk3NWQ3NTQ5Njc3ODE3N2UzNWFiZmUwZWMwYiI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNTY5Nzk3NjdkZWNhNzk0Mzc2YjFkZmE2OWE1MjViMmEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpSZW1vdmVBdHRyaWJ1dGUiIHJlZj0iYTU2OTc5NzY3ZGVjYTc5NDM3NmIxZGZhNjlhNTI1YjJhIiBhcmdzPSIoY29uc3QgY2hhciAqbmFtZSkiIC0tPgotdm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTU2OTc5NzY3ZGVjYTc5NDM3NmIxZGZhNjlhNTI1YjJhIj5SZW1vdmVBdHRyaWJ1dGU8L2E+IChjb25zdCBjaGFyICpuYW1lKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkRlbGV0ZXMgYW4gYXR0cmlidXRlIHdpdGggdGhlIGdpdmVuIG5hbWUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMWFmYTZhZWE3MTY1MTEzMjZhNjA4ZTRjMDVkZjRmM2EiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpSZW1vdmVBdHRyaWJ1dGUiIHJlZj0iYTFhZmE2YWVhNzE2NTExMzI2YTYwOGU0YzA1ZGY0ZjNhIiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtuYW1lKSIgLS0+Ci12b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMWFmYTZhZWE3MTY1MTEzMjZhNjA4ZTRjMDVkZjRmM2EiPlJlbW92ZUF0dHJpYnV0ZTwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7bmFtZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE1MTYwNTRjOTA3MzY0N2Q2Y2IyOWI2YWJlOWZhMDU5MiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEVsZW1lbnQ6OkZpcnN0QXR0cmlidXRlIiByZWY9ImE1MTYwNTRjOTA3MzY0N2Q2Y2IyOWI2YWJlOWZhMDU5MiIgYXJncz0iKCkgY29uc3QgIiAtLT4KLWNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTUxNjA1NGM5MDczNjQ3ZDZjYjI5YjZhYmU5ZmEwNTkyIj5GaXJzdEF0dHJpYnV0ZTwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QWNjZXNzIHRoZSBmaXJzdCBhdHRyaWJ1dGUgaW4gdGhpcyBlbGVtZW50LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTg2MTkxYjQ5ZjkxNzdiZTEzMmI4NWIxNDY1NWYxMzgxIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6TGFzdEF0dHJpYnV0ZSIgcmVmPSJhODYxOTFiNDlmOTE3N2JlMTMyYjg1YjE0NjU1ZjEzODEiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci1jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E4NjE5MWI0OWY5MTc3YmUxMzJiODViMTQ2NTVmMTM4MSI+TGFzdEF0dHJpYnV0ZTwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QWNjZXNzIHRoZSBsYXN0IGF0dHJpYnV0ZSBpbiB0aGlzIGVsZW1lbnQuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWYzMjgyMjk0OTg2Y2RiMjE2NjQ2ZWExZjY3YWYyYzg3Ij5HZXRUZXh0PC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5Db252ZW5pZW5jZSBmdW5jdGlvbiBmb3IgZWFzeSBhY2Nlc3MgdG8gdGhlIHRleHQgaW5zaWRlIGFuIGVsZW1lbnQuICA8YSBocmVmPSIjYWYzMjgyMjk0OTg2Y2RiMjE2NjQ2ZWExZjY3YWYyYzg3Ij48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFhNDY0NTM1ZWExOTk0ZGIzMzdjYjZhOGNlNGI1ODhiNSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEVsZW1lbnQ6OkNsb25lIiByZWY9ImFhNDY0NTM1ZWExOTk0ZGIzMzdjYjZhOGNlNGI1ODhiNSIgYXJncz0iKCkgY29uc3QgIiAtLT4KLXZpcnR1YWwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FhNDY0NTM1ZWExOTk0ZGIzMzdjYjZhOGNlNGI1ODhiNSI+Q2xvbmU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNyZWF0ZXMgYSBuZXcgRWxlbWVudCBhbmQgcmV0dXJucyBpdCAtIHRoZSByZXR1cm5lZCBlbGVtZW50IGlzIGEgY29weS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+dmlydHVhbCB2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZmJmNTI3MzZlNzBmYzkxZWM5ZDc2MDcyMWQ2ZjRmZDIiPlByaW50PC9hPiAoRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QWxsIFRpbnlYbWwgY2xhc3NlcyBjYW4gcHJpbnQgdGhlbXNlbHZlcyB0byBhIGZpbGVzdHJlYW0gb3IgdGhlIHN0cmluZyBjbGFzcyAoVGlYbWxTdHJpbmcgaW4gbm9uLVNUTCBtb2RlLCBzdGQ6OnN0cmluZyBpbiBTVEwgbW9kZS4gIDxhIGhyZWY9IiNhZmJmNTI3MzZlNzBmYzkxZWM5ZDc2MDcyMWQ2ZjRmZDIiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWM1YjhkMGUyNWZhMjNmZDlhY2JiNmQxNDYwODI5MDFjIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6VG9FbGVtZW50IiByZWY9ImFjNWI4ZDBlMjVmYTIzZmQ5YWNiYjZkMTQ2MDgyOTAxYyIgYXJncz0iKCkgY29uc3QgIiAtLT4KLXZpcnR1YWwgY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FjNWI4ZDBlMjVmYTIzZmQ5YWNiYjZkMTQ2MDgyOTAxYyI+VG9FbGVtZW50PC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE5ZGVmODYzMzdlYTdhNzU1ZWI0MWNhYzk4MGY2MGM3YSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEVsZW1lbnQ6OlRvRWxlbWVudCIgcmVmPSJhOWRlZjg2MzM3ZWE3YTc1NWViNDFjYWM5ODBmNjBjN2EiIGFyZ3M9IigpIiAtLT4KLXZpcnR1YWwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E5ZGVmODYzMzdlYTdhNzU1ZWI0MWNhYzk4MGY2MGM3YSI+VG9FbGVtZW50PC9hPiAoKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTcxYTgxYjJhZmIwZDQyYmUxNTQzZDFjNDA0ZGVlNmY1Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6QWNjZXB0IiByZWY9ImE3MWE4MWIyYWZiMGQ0MmJlMTU0M2QxYzQwNGRlZTZmNSIgYXJncz0iKFRpWG1sVmlzaXRvciAqdmlzaXRvcikgY29uc3QgIiAtLT4KLXZpcnR1YWwgYm9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTcxYTgxYjJhZmIwZDQyYmUxNTQzZDFjNDA0ZGVlNmY1Ij5BY2NlcHQ8L2E+ICg8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwiPlRpWG1sVmlzaXRvcjwvYT4gKnZpc2l0b3IpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPldhbGsgdGhlIFhNTCB0cmVlIHZpc2l0aW5nIHRoaXMgbm9kZSBhbmQgYWxsIG9mIGl0cyBjaGlsZHJlbi4gPGJyLz48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5Db25zdHJ1Y3QgYW4gZWxlbWVudC4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpUaVhtbEVsZW1lbnQiIHJlZj0iYTEiIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkiIC0tPgorJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMSI+VGlYbWxFbGVtZW50PC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5zdGQ6OnN0cmluZyBjb25zdHJ1Y3Rvci4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpBdHRyaWJ1dGUiIHJlZj0iYTUiIGFyZ3M9Iihjb25zdCBjaGFyICpuYW1lKSBjb25zdCAiIC0tPgorY29uc3QgY2hhciAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNSI+QXR0cmlidXRlPC9hPiAoY29uc3QgY2hhciAqbmFtZSkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5HaXZlbiBhbiBhdHRyaWJ1dGUgbmFtZSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E1Ij5BdHRyaWJ1dGUoKTwvYT4gcmV0dXJucyB0aGUgdmFsdWUgZm9yIHRoZSBhdHRyaWJ1dGUgb2YgdGhhdCBuYW1lLCBvciBudWxsIGlmIG5vbmUgZXhpc3RzLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5jb25zdCBjaGFyICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E2Ij5BdHRyaWJ1dGU8L2E+IChjb25zdCBjaGFyICpuYW1lLCBpbnQgKmkpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+R2l2ZW4gYW4gYXR0cmlidXRlIG5hbWUsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNSI+QXR0cmlidXRlKCk8L2E+IHJldHVybnMgdGhlIHZhbHVlIGZvciB0aGUgYXR0cmlidXRlIG9mIHRoYXQgbmFtZSwgb3IgbnVsbCBpZiBub25lIGV4aXN0cy4gIDxhIGhyZWY9IiNhNiI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTciPkF0dHJpYnV0ZTwvYT4gKGNvbnN0IGNoYXIgKm5hbWUsIGRvdWJsZSAqZCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5HaXZlbiBhbiBhdHRyaWJ1dGUgbmFtZSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E1Ij5BdHRyaWJ1dGUoKTwvYT4gcmV0dXJucyB0aGUgdmFsdWUgZm9yIHRoZSBhdHRyaWJ1dGUgb2YgdGhhdCBuYW1lLCBvciBudWxsIGlmIG5vbmUgZXhpc3RzLiAgPGEgaHJlZj0iI2E3Ij48L2E+PGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+aW50Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhOCI+UXVlcnlJbnRBdHRyaWJ1dGU8L2E+IChjb25zdCBjaGFyICpuYW1lLCBpbnQgKl92YWx1ZSkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5RdWVyeUludEF0dHJpYnV0ZSBleGFtaW5lcyB0aGUgYXR0cmlidXRlIC0gaXQgaXMgYW4gYWx0ZXJuYXRpdmUgdG8gdGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNSI+QXR0cmlidXRlKCk8L2E+IG1ldGhvZCB3aXRoIHJpY2hlciBlcnJvciBjaGVja2luZy4gIDxhIGhyZWY9IiNhOCI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6UXVlcnlEb3VibGVBdHRyaWJ1dGUiIHJlZj0iYTkiIGFyZ3M9Iihjb25zdCBjaGFyICpuYW1lLCBkb3VibGUgKl92YWx1ZSkgY29uc3QgIiAtLT4KK2ludCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTkiPlF1ZXJ5RG91YmxlQXR0cmlidXRlPC9hPiAoY29uc3QgY2hhciAqbmFtZSwgZG91YmxlICpfdmFsdWUpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UXVlcnlEb3VibGVBdHRyaWJ1dGUgZXhhbWluZXMgdGhlIGF0dHJpYnV0ZSAtIHNlZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTgiPlF1ZXJ5SW50QXR0cmlidXRlKCk8L2E+LiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMTAiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpRdWVyeUZsb2F0QXR0cmlidXRlIiByZWY9ImExMCIgYXJncz0iKGNvbnN0IGNoYXIgKm5hbWUsIGZsb2F0ICpfdmFsdWUpIGNvbnN0ICIgLS0+CitpbnQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExMCI+UXVlcnlGbG9hdEF0dHJpYnV0ZTwvYT4gKGNvbnN0IGNoYXIgKm5hbWUsIGZsb2F0ICpfdmFsdWUpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UXVlcnlGbG9hdEF0dHJpYnV0ZSBleGFtaW5lcyB0aGUgYXR0cmlidXRlIC0gc2VlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhOCI+UXVlcnlJbnRBdHRyaWJ1dGUoKTwvYT4uIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExMSI+U2V0QXR0cmlidXRlPC9hPiAoY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqX3ZhbHVlKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U2V0cyBhbiBhdHRyaWJ1dGUgb2YgbmFtZSB0byBhIGdpdmVuIHZhbHVlLiAgPGEgaHJlZj0iI2ExMSI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImExNyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEVsZW1lbnQ6OlNldEF0dHJpYnV0ZSIgcmVmPSJhMTciIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO25hbWUsIGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSIgLS0+Cit2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMTciPlNldEF0dHJpYnV0ZTwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7bmFtZSwgY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gU1RMIHN0ZDo6c3RyaW5nIGZvcm0uIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExOSI+U2V0QXR0cmlidXRlPC9hPiAoY29uc3QgY2hhciAqbmFtZSwgaW50IHZhbHVlKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U2V0cyBhbiBhdHRyaWJ1dGUgb2YgbmFtZSB0byBhIGdpdmVuIHZhbHVlLiAgPGEgaHJlZj0iI2ExOSI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyMCI+U2V0RG91YmxlQXR0cmlidXRlPC9hPiAoY29uc3QgY2hhciAqbmFtZSwgZG91YmxlIHZhbHVlKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U2V0cyBhbiBhdHRyaWJ1dGUgb2YgbmFtZSB0byBhIGdpdmVuIHZhbHVlLiAgPGEgaHJlZj0iI2EyMCI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEyMSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEVsZW1lbnQ6OlJlbW92ZUF0dHJpYnV0ZSIgcmVmPSJhMjEiIGFyZ3M9Iihjb25zdCBjaGFyICpuYW1lKSIgLS0+Cit2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjEiPlJlbW92ZUF0dHJpYnV0ZTwvYT4gKGNvbnN0IGNoYXIgKm5hbWUpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5EZWxldGVzIGFuIGF0dHJpYnV0ZSB3aXRoIHRoZSBnaXZlbiBuYW1lLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMjIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpSZW1vdmVBdHRyaWJ1dGUiIHJlZj0iYTIyIiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtuYW1lKSIgLS0+Cit2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjIiPlJlbW92ZUF0dHJpYnV0ZTwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7bmFtZSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMjMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpGaXJzdEF0dHJpYnV0ZSIgcmVmPSJhMjMiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Citjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyMyI+Rmlyc3RBdHRyaWJ1dGU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QWNjZXNzIHRoZSBmaXJzdCBhdHRyaWJ1dGUgaW4gdGhpcyBlbGVtZW50LiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMjUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpMYXN0QXR0cmlidXRlIiByZWY9ImEyNSIgYXJncz0iKCkgY29uc3QgIiAtLT4KK2NvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTI1Ij5MYXN0QXR0cmlidXRlPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkFjY2VzcyB0aGUgbGFzdCBhdHRyaWJ1dGUgaW4gdGhpcyBlbGVtZW50LiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5jb25zdCBjaGFyICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyNyI+R2V0VGV4dDwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5Db252ZW5pZW5jZSBmdW5jdGlvbiBmb3IgZWFzeSBhY2Nlc3MgdG8gdGhlIHRleHQgaW5zaWRlIGFuIGVsZW1lbnQuICA8YSBocmVmPSIjYTI3Ij48L2E+PGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTI4Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6Q2xvbmUiIHJlZj0iYTI4IiBhcmdzPSIoKSBjb25zdCAiIC0tPgordmlydHVhbCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTI4Ij5DbG9uZTwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DcmVhdGVzIGEgbmV3IEVsZW1lbnQgYW5kIHJldHVybnMgaXQgLSB0aGUgcmV0dXJuZWQgZWxlbWVudCBpcyBhIGNvcHkuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZpcnR1YWwgdm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTI5Ij5QcmludDwvYT4gKEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QWxsIFRpbnlYbWwgY2xhc3NlcyBjYW4gcHJpbnQgdGhlbXNlbHZlcyB0byBhIGZpbGVzdHJlYW0uICA8YSBocmVmPSIjYTI5Ij48L2E+PGJyPjwvdGQ+PC90cj4KIDwvdGFibGU+Ci08aHIvPjxhIG5hbWU9Il9kZXRhaWxzIj48L2E+PGgyPkRldGFpbGVkIERlc2NyaXB0aW9uPC9oMj4KLTxwPlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiA8L3A+Ci08cD5JdCBoYXMgYSB2YWx1ZSwgdGhlIGVsZW1lbnQgbmFtZSwgYW5kIGNhbiBjb250YWluIG90aGVyIGVsZW1lbnRzLCB0ZXh0LCBjb21tZW50cywgYW5kIHVua25vd25zLiBFbGVtZW50cyBhbHNvIGNvbnRhaW4gYW4gYXJiaXRyYXJ5IG51bWJlciBvZiBhdHRyaWJ1dGVzLiA8L3A+Ci08aHIvPjxoMj5NZW1iZXIgRnVuY3Rpb24gRG9jdW1lbnRhdGlvbjwvaDI+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWVhZmY5OWQ0ZjBlYTViMzRmN2FlZTIwMmFhZDQ1N2JhIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6QXR0cmlidXRlIiByZWY9ImFlYWZmOTlkNGYwZWE1YjM0ZjdhZWUyMDJhYWQ0NTdiYSIgYXJncz0iKGNvbnN0IGNoYXIgKm5hbWUsIGRvdWJsZSAqZCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxocj48YSBuYW1lPSJfZGV0YWlscyI+PC9hPjxoMj5EZXRhaWxlZCBEZXNjcmlwdGlvbjwvaDI+CitUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4gCis8cD4KK0l0IGhhcyBhIHZhbHVlLCB0aGUgZWxlbWVudCBuYW1lLCBhbmQgY2FuIGNvbnRhaW4gb3RoZXIgZWxlbWVudHMsIHRleHQsIGNvbW1lbnRzLCBhbmQgdW5rbm93bnMuIEVsZW1lbnRzIGFsc28gY29udGFpbiBhbiBhcmJpdHJhcnkgbnVtYmVyIG9mIGF0dHJpYnV0ZXMuCis8cD4KKzxocj48aDI+TWVtYmVyIEZ1bmN0aW9uIERvY3VtZW50YXRpb248L2gyPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTciPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpBdHRyaWJ1dGUiIHJlZj0iYTciIGFyZ3M9Iihjb25zdCBjaGFyICpuYW1lLCBkb3VibGUgKmQpIGNvbnN0ICIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPmNvbnN0IGNoYXIqIFRpWG1sRWxlbWVudDo6QXR0cmlidXRlIDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5jb25zdCBjaGFyICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPm5hbWU8L2VtPiwgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmNvbnN0IGNoYXIqIFRpWG1sRWxlbWVudDo6QXR0cmlidXRlICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPm5hbWU8L2VtPiwgPC90ZD4KICAgICAgICAgPC90cj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1rZXkiPjwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmRvdWJsZSAqJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5kPC9lbT48L3RkPjx0ZD4mbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCBhbGlnbj0icmlnaHQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+ZG91YmxlICombmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lIiBub3dyYXA+IDxlbT5kPC9lbT48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkPik8L3RkPgotICAgICAgICAgIDx0ZD48L3RkPjx0ZD48L3RkPjx0ZD4gY29uc3Q8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgY29sc3Bhbj0iMiI+IGNvbnN0PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPkdpdmVuIGFuIGF0dHJpYnV0ZSBuYW1lLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWU0MTlhNDQyYTk3MDFhNjJiMGMzZDhmZDFjYmRkMTJkIiB0aXRsZT0iR2l2ZW4gYW4gYXR0cmlidXRlIG5hbWUsIEF0dHJpYnV0ZSgpIHJldHVybnMgdGhlIHZhbHVlIGZvciB0aGUgYXR0cmlidXRlIG9mIHRoYXQuLi4iPkF0dHJpYnV0ZSgpPC9hPiByZXR1cm5zIHRoZSB2YWx1ZSBmb3IgdGhlIGF0dHJpYnV0ZSBvZiB0aGF0IG5hbWUsIG9yIG51bGwgaWYgbm9uZSBleGlzdHMuIDwvcD4KLTxwPklmIHRoZSBhdHRyaWJ1dGUgZXhpc3RzIGFuZCBjYW4gYmUgY29udmVydGVkIHRvIGFuIGRvdWJsZSwgdGhlIGRvdWJsZSB2YWx1ZSB3aWxsIGJlIHB1dCBpbiB0aGUgcmV0dXJuICdkJywgaWYgJ2QnIGlzIG5vbi1udWxsLiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTBlZDgzNDhmZGM1NmI3MmE2YjQ5MDBjZTViYWMxODQ5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6QXR0cmlidXRlIiByZWY9ImEwZWQ4MzQ4ZmRjNTZiNzJhNmI0OTAwY2U1YmFjMTg0OSIgYXJncz0iKGNvbnN0IGNoYXIgKm5hbWUsIGludCAqaSkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorR2l2ZW4gYW4gYXR0cmlidXRlIG5hbWUsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNSI+QXR0cmlidXRlKCk8L2E+IHJldHVybnMgdGhlIHZhbHVlIGZvciB0aGUgYXR0cmlidXRlIG9mIHRoYXQgbmFtZSwgb3IgbnVsbCBpZiBub25lIGV4aXN0cy4gCis8cD4KK0lmIHRoZSBhdHRyaWJ1dGUgZXhpc3RzIGFuZCBjYW4gYmUgY29udmVydGVkIHRvIGFuIGRvdWJsZSwgdGhlIGRvdWJsZSB2YWx1ZSB3aWxsIGJlIHB1dCBpbiB0aGUgcmV0dXJuICdkJywgaWYgJ2QnIGlzIG5vbi1udWxsLiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE2Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6QXR0cmlidXRlIiByZWY9ImE2IiBhcmdzPSIoY29uc3QgY2hhciAqbmFtZSwgaW50ICppKSBjb25zdCAiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj5jb25zdCBjaGFyKiBUaVhtbEVsZW1lbnQ6OkF0dHJpYnV0ZSA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+Y29uc3QgY2hhciAqJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5uYW1lPC9lbT4sIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5jb25zdCBjaGFyKiBUaVhtbEVsZW1lbnQ6OkF0dHJpYnV0ZSAgICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+KCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5jb25zdCBjaGFyICombmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lIiBub3dyYXA+IDxlbT5uYW1lPC9lbT4sIDwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFta2V5Ij48L3RkPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5pbnQgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+aTwvZW0+PC90ZD48dGQ+Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgYWxpZ249InJpZ2h0Ij48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPmludCAqJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZSIgbm93cmFwPiA8ZW0+aTwvZW0+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZD4pPC90ZD4KLSAgICAgICAgICA8dGQ+PC90ZD48dGQ+PC90ZD48dGQ+IGNvbnN0PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPikmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIGNvbHNwYW49IjIiPiBjb25zdDwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5HaXZlbiBhbiBhdHRyaWJ1dGUgbmFtZSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlNDE5YTQ0MmE5NzAxYTYyYjBjM2Q4ZmQxY2JkZDEyZCIgdGl0bGU9IkdpdmVuIGFuIGF0dHJpYnV0ZSBuYW1lLCBBdHRyaWJ1dGUoKSByZXR1cm5zIHRoZSB2YWx1ZSBmb3IgdGhlIGF0dHJpYnV0ZSBvZiB0aGF0Li4uIj5BdHRyaWJ1dGUoKTwvYT4gcmV0dXJucyB0aGUgdmFsdWUgZm9yIHRoZSBhdHRyaWJ1dGUgb2YgdGhhdCBuYW1lLCBvciBudWxsIGlmIG5vbmUgZXhpc3RzLiA8L3A+Ci08cD5JZiB0aGUgYXR0cmlidXRlIGV4aXN0cyBhbmQgY2FuIGJlIGNvbnZlcnRlZCB0byBhbiBpbnRlZ2VyLCB0aGUgaW50ZWdlciB2YWx1ZSB3aWxsIGJlIHB1dCBpbiB0aGUgcmV0dXJuICdpJywgaWYgJ2knIGlzIG5vbi1udWxsLiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWYzMjgyMjk0OTg2Y2RiMjE2NjQ2ZWExZjY3YWYyYzg3Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6R2V0VGV4dCIgcmVmPSJhZjMyODIyOTQ5ODZjZGIyMTY2NDZlYTFmNjdhZjJjODciIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8cD4KK0dpdmVuIGFuIGF0dHJpYnV0ZSBuYW1lLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTUiPkF0dHJpYnV0ZSgpPC9hPiByZXR1cm5zIHRoZSB2YWx1ZSBmb3IgdGhlIGF0dHJpYnV0ZSBvZiB0aGF0IG5hbWUsIG9yIG51bGwgaWYgbm9uZSBleGlzdHMuIAorPHA+CitJZiB0aGUgYXR0cmlidXRlIGV4aXN0cyBhbmQgY2FuIGJlIGNvbnZlcnRlZCB0byBhbiBpbnRlZ2VyLCB0aGUgaW50ZWdlciB2YWx1ZSB3aWxsIGJlIHB1dCBpbiB0aGUgcmV0dXJuICdpJywgaWYgJ2knIGlzIG5vbi1udWxsLiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEyNyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEVsZW1lbnQ6OkdldFRleHQiIHJlZj0iYTI3IiBhcmdzPSIoKSBjb25zdCAiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj5jb25zdCBjaGFyKiBUaVhtbEVsZW1lbnQ6OkdldFRleHQgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD4gY29uc3Q8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+Y29uc3QgY2hhciogVGlYbWxFbGVtZW50OjpHZXRUZXh0ICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZTEiIHZhbGlnbj0idG9wIiBub3dyYXA+ICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPiZuYnNwOykmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcD4gY29uc3Q8L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+Q29udmVuaWVuY2UgZnVuY3Rpb24gZm9yIGVhc3kgYWNjZXNzIHRvIHRoZSB0ZXh0IGluc2lkZSBhbiBlbGVtZW50LiA8L3A+Ci08cD5BbHRob3VnaCBlYXN5IGFuZCBjb25jaXNlLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWYzMjgyMjk0OTg2Y2RiMjE2NjQ2ZWExZjY3YWYyYzg3IiB0aXRsZT0iQ29udmVuaWVuY2UgZnVuY3Rpb24gZm9yIGVhc3kgYWNjZXNzIHRvIHRoZSB0ZXh0IGluc2lkZSBhbiBlbGVtZW50LiI+R2V0VGV4dCgpPC9hPiBpcyBsaW1pdGVkIGNvbXBhcmVkIHRvIGdldHRpbmcgdGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCIgdGl0bGU9IlhNTCB0ZXh0LiI+VGlYbWxUZXh0PC9hPiBjaGlsZCBhbmQgYWNjZXNzaW5nIGl0IGRpcmVjdGx5LjwvcD4KLTxwPklmIHRoZSBmaXJzdCBjaGlsZCBvZiAndGhpcycgaXMgYSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIHRpdGxlPSJYTUwgdGV4dC4iPlRpWG1sVGV4dDwvYT4sIHRoZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWYzMjgyMjk0OTg2Y2RiMjE2NjQ2ZWExZjY3YWYyYzg3IiB0aXRsZT0iQ29udmVuaWVuY2UgZnVuY3Rpb24gZm9yIGVhc3kgYWNjZXNzIHRvIHRoZSB0ZXh0IGluc2lkZSBhbiBlbGVtZW50LiI+R2V0VGV4dCgpPC9hPiByZXR1cm5zIHRoZSBjaGFyYWN0ZXIgc3RyaW5nIG9mIHRoZSBUZXh0IG5vZGUsIGVsc2UgbnVsbCBpcyByZXR1cm5lZC48L3A+Ci08cD5UaGlzIGlzIGEgY29udmVuaWVudCBtZXRob2QgZm9yIGdldHRpbmcgdGhlIHRleHQgb2Ygc2ltcGxlIGNvbnRhaW5lZCB0ZXh0OiA8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotCQkmbHQ7Zm9vJmd0O1RoaXMgaXMgdGV4dCZsdDsvZm9vJmd0OworPHA+CitDb252ZW5pZW5jZSBmdW5jdGlvbiBmb3IgZWFzeSBhY2Nlc3MgdG8gdGhlIHRleHQgaW5zaWRlIGFuIGVsZW1lbnQuIAorPHA+CitBbHRob3VnaCBlYXN5IGFuZCBjb25jaXNlLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTI3Ij5HZXRUZXh0KCk8L2E+IGlzIGxpbWl0ZWQgY29tcGFyZWQgdG8gZ2V0dGluZyB0aGUgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+IGNoaWxkIGFuZCBhY2Nlc3NpbmcgaXQgZGlyZWN0bHkuPHA+CitJZiB0aGUgZmlyc3QgY2hpbGQgb2YgJ3RoaXMnIGlzIGEgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+LCB0aGUgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyNyI+R2V0VGV4dCgpPC9hPiByZXR1cnMgdGhlIGNoYXJhY3RlciBzdHJpbmcgb2YgdGhlIFRleHQgbm9kZSwgZWxzZSBudWxsIGlzIHJldHVybmVkLjxwPgorVGhpcyBpcyBhIGNvbnZlbmllbnQgbWV0aG9kIGZvciBnZXR0aW5nIHRoZSB0ZXh0IG9mIHNpbXBsZSBjb250YWluZWQgdGV4dDogPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JCSZsdDtmb28mZ3Q7VGhpcyBpcyB0ZXh0Jmx0Oy9mb28mZ3Q7CiAJCWNvbnN0IGNoYXIqIHN0ciA9IGZvb0VsZW1lbnQtJmd0O0dldFRleHQoKTsKLQkJPC9wcmU+PC9kaXY+PHA+J3N0cicgd2lsbCBiZSBhIHBvaW50ZXIgdG8gIlRoaXMgaXMgdGV4dCIuPC9wPgotPHA+Tm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gY2FuIGJlIG1pc2xlYWRpbmcuIElmIHRoZSBlbGVtZW50IGZvbyB3YXMgY3JlYXRlZCBmcm9tIHRoaXMgWE1MOiA8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotCQkmbHQ7Zm9vJmd0OyZsdDtiJmd0O1RoaXMgaXMgdGV4dCZsdDsvYiZndDsmbHQ7L2ZvbyZndDsgCi0JCTwvcHJlPjwvZGl2PjxwPnRoZW4gdGhlIHZhbHVlIG9mIHN0ciB3b3VsZCBiZSBudWxsLiBUaGUgZmlyc3QgY2hpbGQgbm9kZSBpc24ndCBhIHRleHQgbm9kZSwgaXQgaXMgYW5vdGhlciBlbGVtZW50LiBGcm9tIHRoaXMgWE1MOiA8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotCQkmbHQ7Zm9vJmd0O1RoaXMgaXMgJmx0O2ImZ3Q7dGV4dCZsdDsvYiZndDsmbHQ7L2ZvbyZndDsgCi0JCTwvcHJlPjwvZGl2PjxwPiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWYzMjgyMjk0OTg2Y2RiMjE2NjQ2ZWExZjY3YWYyYzg3IiB0aXRsZT0iQ29udmVuaWVuY2UgZnVuY3Rpb24gZm9yIGVhc3kgYWNjZXNzIHRvIHRoZSB0ZXh0IGluc2lkZSBhbiBlbGVtZW50LiI+R2V0VGV4dCgpPC9hPiB3aWxsIHJldHVybiAiVGhpcyBpcyAiLjwvcD4KLTxwPldBUk5JTkc6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZjMyODIyOTQ5ODZjZGIyMTY2NDZlYTFmNjdhZjJjODciIHRpdGxlPSJDb252ZW5pZW5jZSBmdW5jdGlvbiBmb3IgZWFzeSBhY2Nlc3MgdG8gdGhlIHRleHQgaW5zaWRlIGFuIGVsZW1lbnQuIj5HZXRUZXh0KCk8L2E+IGFjY2Vzc2VzIGEgY2hpbGQgbm9kZSAtIGRvbid0IGJlY29tZSBjb25mdXNlZCB3aXRoIHRoZSBzaW1pbGFybHkgbmFtZWQgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTlmYzczOWM4YTE4ZDE2MDAwNmY4MjU3MmZjMTQzZDEzIj5UaVhtbEhhbmRsZTo6VGV4dCgpPC9hPiBhbmQgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzZGRmYmNhYzc4ZmJlYTA0MWZhZDU3ZTVjNmQ2MGEwMyIgdGl0bGU9IkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiI+VGlYbWxOb2RlOjpUb1RleHQoKTwvYT4gd2hpY2ggYXJlIHNhZmUgdHlwZSBjYXN0cyBvbiB0aGUgcmVmZXJlbmNlZCBub2RlLiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWZiZjUyNzM2ZTcwZmM5MWVjOWQ3NjA3MjFkNmY0ZmQyIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6UHJpbnQiIHJlZj0iYWZiZjUyNzM2ZTcwZmM5MWVjOWQ3NjA3MjFkNmY0ZmQyIiBhcmdzPSIoRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKwkJPC9wcmU+PC9kaXY+PHA+Cisnc3RyJyB3aWxsIGJlIGEgcG9pbnRlciB0byAiVGhpcyBpcyB0ZXh0Ii48cD4KK05vdGUgdGhhdCB0aGlzIGZ1bmN0aW9uIGNhbiBiZSBtaXNsZWFkaW5nLiBJZiB0aGUgZWxlbWVudCBmb28gd2FzIGNyZWF0ZWQgZnJvbSB0aGlzIFhNTDogPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JCSZsdDtmb28mZ3Q7Jmx0O2ImZ3Q7VGhpcyBpcyB0ZXh0Jmx0Oy9iJmd0OyZsdDsvZm9vJmd0OyAKKwkJPC9wcmU+PC9kaXY+PHA+Cit0aGVuIHRoZSB2YWx1ZSBvZiBzdHIgd291bGQgYmUgbnVsbC4gVGhlIGZpcnN0IGNoaWxkIG5vZGUgaXNuJ3QgYSB0ZXh0IG5vZGUsIGl0IGlzIGFub3RoZXIgZWxlbWVudC4gRnJvbSB0aGlzIFhNTDogPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JCSZsdDtmb28mZ3Q7VGhpcyBpcyAmbHQ7YiZndDt0ZXh0Jmx0Oy9iJmd0OyZsdDsvZm9vJmd0OyAKKwkJPC9wcmU+PC9kaXY+IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjciPkdldFRleHQoKTwvYT4gd2lsbCByZXR1cm4gIlRoaXMgaXMgIi48cD4KK1dBUk5JTkc6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjciPkdldFRleHQoKTwvYT4gYWNjZXNzZXMgYSBjaGlsZCBub2RlIC0gZG9uJ3QgYmVjb21lIGNvbmZ1c2VkIHdpdGggdGhlIHNpbWlsYXJseSBuYW1lZCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMTciPlRpWG1sSGFuZGxlOjpUZXh0KCk8L2E+IGFuZCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcwIj5UaVhtbE5vZGU6OlRvVGV4dCgpPC9hPiB3aGljaCBhcmUgc2FmZSB0eXBlIGNhc3RzIG9uIHRoZSByZWZlcmVuY2VkIG5vZGUuICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTI5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6UHJpbnQiIHJlZj0iYTI5IiBhcmdzPSIoRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+dmlydHVhbCB2b2lkIFRpWG1sRWxlbWVudDo6UHJpbnQgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPkZJTEUgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+Y2ZpbGU8L2VtPiwgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPnZpcnR1YWwgdm9pZCBUaVhtbEVsZW1lbnQ6OlByaW50ICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPkZJTEUgKiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPmNmaWxlPC9lbT4sIDwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFta2V5Ij48L3RkPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5pbnQmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmRlcHRoPC9lbT48L3RkPjx0ZD4mbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCBhbGlnbj0icmlnaHQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+aW50Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZSIgbm93cmFwPiA8ZW0+ZGVwdGg8L2VtPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQ+KTwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPiBjb25zdDxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPikmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIGNvbHNwYW49IjIiPiBjb25zdDxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPkFsbCBUaW55WG1sIGNsYXNzZXMgY2FuIHByaW50IHRoZW1zZWx2ZXMgdG8gYSBmaWxlc3RyZWFtIG9yIHRoZSBzdHJpbmcgY2xhc3MgKFRpWG1sU3RyaW5nIGluIG5vbi1TVEwgbW9kZSwgc3RkOjpzdHJpbmcgaW4gU1RMIG1vZGUuIDwvcD4KLTxwPikgRWl0aGVyIG9yIGJvdGggY2ZpbGUgYW5kIHN0ciBjYW4gYmUgbnVsbC48L3A+Ci08cD5UaGlzIGlzIGEgZm9ybWF0dGVkIHByaW50LCBhbmQgd2lsbCBpbnNlcnQgdGFicyBhbmQgbmV3bGluZXMuPC9wPgotPHA+KEZvciBhbiB1bmZvcm1hdHRlZCBzdHJlYW0sIHVzZSB0aGUgJmx0OyZsdDsgb3BlcmF0b3IuKSA8L3A+Ci0KLTxwPkltcGxlbWVudHMgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwZGU1NmIzZjJlZjE0YzY1MDkxYTNiOTE2NDM3YjUxMiI+VGlYbWxCYXNlPC9hPi48L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWY0YTFkM2Y4OGMyOGViMGYzMTE1ZGMzOWViZDgzZmZmIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6UXVlcnlCb29sQXR0cmlidXRlIiByZWY9ImFmNGExZDNmODhjMjhlYjBmMzExNWRjMzllYmQ4M2ZmZiIgYXJncz0iKGNvbnN0IGNoYXIgKm5hbWUsIGJvb2wgKl92YWx1ZSkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorQWxsIFRpbnlYbWwgY2xhc3NlcyBjYW4gcHJpbnQgdGhlbXNlbHZlcyB0byBhIGZpbGVzdHJlYW0uIAorPHA+CitUaGlzIGlzIGEgZm9ybWF0dGVkIHByaW50LCBhbmQgd2lsbCBpbnNlcnQgdGFicyBhbmQgbmV3bGluZXMuPHA+CisoRm9yIGFuIHVuZm9ybWF0dGVkIHN0cmVhbSwgdXNlIHRoZSAmbHQ7Jmx0OyBvcGVyYXRvci4pCis8cD4KK0ltcGxlbWVudHMgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EyIj5UaVhtbEJhc2U8L2E+LiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE4Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6UXVlcnlJbnRBdHRyaWJ1dGUiIHJlZj0iYTgiIGFyZ3M9Iihjb25zdCBjaGFyICpuYW1lLCBpbnQgKl92YWx1ZSkgY29uc3QgIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+aW50IFRpWG1sRWxlbWVudDo6UXVlcnlCb29sQXR0cmlidXRlIDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5jb25zdCBjaGFyICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPm5hbWU8L2VtPiwgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmludCBUaVhtbEVsZW1lbnQ6OlF1ZXJ5SW50QXR0cmlidXRlICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPm5hbWU8L2VtPiwgPC90ZD4KICAgICAgICAgPC90cj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1rZXkiPjwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmJvb2wgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+X3ZhbHVlPC9lbT48L3RkPjx0ZD4mbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCBhbGlnbj0icmlnaHQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+aW50ICombmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lIiBub3dyYXA+IDxlbT5fdmFsdWU8L2VtPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQ+KTwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPiBjb25zdDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj4pJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBjb2xzcGFuPSIyIj4gY29uc3Q8L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+UXVlcnlCb29sQXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBzZWUgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlYTBiZmU0NzEzODBmMjgxYzU5NDU3NzBkZGJmNTJiOSIgdGl0bGU9IlF1ZXJ5SW50QXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBpdCBpcyBhbiBhbHRlcm5hdGl2ZSB0byB0aGUgQXR0cmlidXRlKCkuLi4iPlF1ZXJ5SW50QXR0cmlidXRlKCk8L2E+LiA8L3A+Ci08cD5Ob3RlIHRoYXQgJzEnLCAndHJ1ZScsIG9yICd5ZXMnIGFyZSBjb25zaWRlcmVkIHRydWUsIHdoaWxlICcwJywgJ2ZhbHNlJyBhbmQgJ25vJyBhcmUgY29uc2lkZXJlZCBmYWxzZS4gPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFlYTBiZmU0NzEzODBmMjgxYzU5NDU3NzBkZGJmNTJiOSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEVsZW1lbnQ6OlF1ZXJ5SW50QXR0cmlidXRlIiByZWY9ImFlYTBiZmU0NzEzODBmMjgxYzU5NDU3NzBkZGJmNTJiOSIgYXJncz0iKGNvbnN0IGNoYXIgKm5hbWUsIGludCAqX3ZhbHVlKSBjb25zdCAiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgorPHA+CitRdWVyeUludEF0dHJpYnV0ZSBleGFtaW5lcyB0aGUgYXR0cmlidXRlIC0gaXQgaXMgYW4gYWx0ZXJuYXRpdmUgdG8gdGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNSI+QXR0cmlidXRlKCk8L2E+IG1ldGhvZCB3aXRoIHJpY2hlciBlcnJvciBjaGVja2luZy4gCis8cD4KK0lmIHRoZSBhdHRyaWJ1dGUgaXMgYW4gaW50ZWdlciwgaXQgaXMgc3RvcmVkIGluICd2YWx1ZScgYW5kIHRoZSBjYWxsIHJldHVybnMgVElYTUxfU1VDQ0VTUy4gSWYgaXQgaXMgbm90IGFuIGludGVnZXIsIGl0IHJldHVybnMgVElYTUxfV1JPTkdfVFlQRS4gSWYgdGhlIGF0dHJpYnV0ZSBkb2VzIG5vdCBleGlzdCwgdGhlbiBUSVhNTF9OT19BVFRSSUJVVEUgaXMgcmV0dXJuZWQuICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTE5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6U2V0QXR0cmlidXRlIiByZWY9ImExOSIgYXJncz0iKGNvbnN0IGNoYXIgKm5hbWUsIGludCB2YWx1ZSkiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj5pbnQgVGlYbWxFbGVtZW50OjpRdWVyeUludEF0dHJpYnV0ZSA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+Y29uc3QgY2hhciAqJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5uYW1lPC9lbT4sIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj52b2lkIFRpWG1sRWxlbWVudDo6U2V0QXR0cmlidXRlICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPm5hbWU8L2VtPiwgPC90ZD4KICAgICAgICAgPC90cj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1rZXkiPjwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmludCAqJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5fdmFsdWU8L2VtPjwvdGQ+PHRkPiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIGFsaWduPSJyaWdodCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcD5pbnQmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lIiBub3dyYXA+IDxlbT52YWx1ZTwvZW0+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZD4pPC90ZD4KLSAgICAgICAgICA8dGQ+PC90ZD48dGQ+PC90ZD48dGQ+IGNvbnN0PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPikmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIGNvbHNwYW49IjIiPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5RdWVyeUludEF0dHJpYnV0ZSBleGFtaW5lcyB0aGUgYXR0cmlidXRlIC0gaXQgaXMgYW4gYWx0ZXJuYXRpdmUgdG8gdGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZTQxOWE0NDJhOTcwMWE2MmIwYzNkOGZkMWNiZGQxMmQiIHRpdGxlPSJHaXZlbiBhbiBhdHRyaWJ1dGUgbmFtZSwgQXR0cmlidXRlKCkgcmV0dXJucyB0aGUgdmFsdWUgZm9yIHRoZSBhdHRyaWJ1dGUgb2YgdGhhdC4uLiI+QXR0cmlidXRlKCk8L2E+IG1ldGhvZCB3aXRoIHJpY2hlciBlcnJvciBjaGVja2luZy4gPC9wPgotPHA+SWYgdGhlIGF0dHJpYnV0ZSBpcyBhbiBpbnRlZ2VyLCBpdCBpcyBzdG9yZWQgaW4gJ3ZhbHVlJyBhbmQgdGhlIGNhbGwgcmV0dXJucyBUSVhNTF9TVUNDRVNTLiBJZiBpdCBpcyBub3QgYW4gaW50ZWdlciwgaXQgcmV0dXJucyBUSVhNTF9XUk9OR19UWVBFLiBJZiB0aGUgYXR0cmlidXRlIGRvZXMgbm90IGV4aXN0LCB0aGVuIFRJWE1MX05PX0FUVFJJQlVURSBpcyByZXR1cm5lZC4gPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFlM2I5YTAzYjBhNTY2NjNhNDA4MDFjNzI1NjY4MzU3NiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEVsZW1lbnQ6OlF1ZXJ5VmFsdWVBdHRyaWJ1dGUiIHJlZj0iYWUzYjlhMDNiMGE1NjY2M2E0MDgwMWM3MjU2NjgzNTc2IiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtuYW1lLCBUICpvdXRWYWx1ZSkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotPGRpdiBjbGFzcz0ibWVtdGVtcGxhdGUiPgotdGVtcGxhdGUmbHQ7dHlwZW5hbWUgVCAmZ3Q7IDwvZGl2PgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorU2V0cyBhbiBhdHRyaWJ1dGUgb2YgbmFtZSB0byBhIGdpdmVuIHZhbHVlLiAKKzxwPgorVGhlIGF0dHJpYnV0ZSB3aWxsIGJlIGNyZWF0ZWQgaWYgaXQgZG9lcyBub3QgZXhpc3QsIG9yIGNoYW5nZWQgaWYgaXQgZG9lcy4gICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMTEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpTZXRBdHRyaWJ1dGUiIHJlZj0iYTExIiBhcmdzPSIoY29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqX3ZhbHVlKSIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPmludCBUaVhtbEVsZW1lbnQ6OlF1ZXJ5VmFsdWVBdHRyaWJ1dGUgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7Jm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5uYW1lPC9lbT4sIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj52b2lkIFRpWG1sRWxlbWVudDo6U2V0QXR0cmlidXRlICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPm5hbWU8L2VtPiwgPC90ZD4KICAgICAgICAgPC90cj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1rZXkiPjwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPlQgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+b3V0VmFsdWU8L2VtPjwvdGQ+PHRkPiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIGFsaWduPSJyaWdodCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcD5jb25zdCBjaGFyICombmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lIiBub3dyYXA+IDxlbT5fdmFsdWU8L2VtPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQ+KTwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPiBjb25zdDxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgY29sc3Bhbj0iMiI+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPlRlbXBsYXRlIGZvcm0gb2YgdGhlIGF0dHJpYnV0ZSBxdWVyeSB3aGljaCB3aWxsIHRyeSB0byByZWFkIHRoZSBhdHRyaWJ1dGUgaW50byB0aGUgc3BlY2lmaWVkIHR5cGUuIDwvcD4KLTxwPlZlcnkgZWFzeSwgdmVyeSBwb3dlcmZ1bCwgYnV0IGJlIGNhcmVmdWwgdG8gbWFrZSBzdXJlIHRvIGNhbGwgdGhpcyB3aXRoIHRoZSBjb3JyZWN0IHR5cGUuPC9wPgotPHA+Tk9URTogVGhpcyBtZXRob2QgZG9lc24ndCB3b3JrIGNvcnJlY3RseSBmb3IgJ3N0cmluZycgdHlwZXMgdGhhdCBjb250YWluIHNwYWNlcy48L3A+Ci08ZGwgY2xhc3M9InJldHVybiI+PGR0PjxiPlJldHVybnM6PC9iPjwvZHQ+PGRkPlRJWE1MX1NVQ0NFU1MsIFRJWE1MX1dST05HX1RZUEUsIG9yIFRJWE1MX05PX0FUVFJJQlVURSA8L2RkPjwvZGw+Ci0KLTxwPlJlZmVyZW5jZXMgPGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sI2wwMDgxNCI+VGlYbWxBdHRyaWJ1dGU6OlZhbHVlU3RyKCk8L2E+LjwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhY2U2ZjRiZTc1ZTM3MzcyNmQ0Nzc0MDczZDY2NmQxYTciPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxFbGVtZW50OjpTZXRBdHRyaWJ1dGUiIHJlZj0iYWNlNmY0YmU3NWUzNzM3MjZkNDc3NDA3M2Q2NjZkMWE3IiBhcmdzPSIoY29uc3QgY2hhciAqbmFtZSwgaW50IHZhbHVlKSIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8cD4KK1NldHMgYW4gYXR0cmlidXRlIG9mIG5hbWUgdG8gYSBnaXZlbiB2YWx1ZS4gCis8cD4KK1RoZSBhdHRyaWJ1dGUgd2lsbCBiZSBjcmVhdGVkIGlmIGl0IGRvZXMgbm90IGV4aXN0LCBvciBjaGFuZ2VkIGlmIGl0IGRvZXMuICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTIwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6U2V0RG91YmxlQXR0cmlidXRlIiByZWY9ImEyMCIgYXJncz0iKGNvbnN0IGNoYXIgKm5hbWUsIGRvdWJsZSB2YWx1ZSkiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj52b2lkIFRpWG1sRWxlbWVudDo6U2V0QXR0cmlidXRlIDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5jb25zdCBjaGFyICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPm5hbWU8L2VtPiwgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPnZvaWQgVGlYbWxFbGVtZW50OjpTZXREb3VibGVBdHRyaWJ1dGUgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+Y29uc3QgY2hhciAqJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZSIgbm93cmFwPiA8ZW0+bmFtZTwvZW0+LCA8L3RkPgogICAgICAgICA8L3RyPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbWtleSI+PC90ZD4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+aW50Jm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT52YWx1ZTwvZW0+PC90ZD48dGQ+Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgYWxpZ249InJpZ2h0Ij48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPmRvdWJsZSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPnZhbHVlPC9lbT48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkPik8L3RkPgotICAgICAgICAgIDx0ZD48L3RkPjx0ZD48L3RkPjx0ZD48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgY29sc3Bhbj0iMiI+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPlNldHMgYW4gYXR0cmlidXRlIG9mIG5hbWUgdG8gYSBnaXZlbiB2YWx1ZS4gPC9wPgotPHA+VGhlIGF0dHJpYnV0ZSB3aWxsIGJlIGNyZWF0ZWQgaWYgaXQgZG9lcyBub3QgZXhpc3QsIG9yIGNoYW5nZWQgaWYgaXQgZG9lcy4gPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE4MGVkNjViMWQxOTRjNzFjNmM5OTg2YWU0MjMzN2Q3ZCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEVsZW1lbnQ6OlNldEF0dHJpYnV0ZSIgcmVmPSJhODBlZDY1YjFkMTk0YzcxYzZjOTk4NmFlNDIzMzdkN2QiIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO25hbWUsIGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPnZvaWQgVGlYbWxFbGVtZW50OjpTZXRBdHRyaWJ1dGUgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7Jm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5uYW1lPC9lbT4sIDwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFta2V5Ij48L3RkPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5jb25zdCBzdGQ6OnN0cmluZyAmYW1wOyZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+X3ZhbHVlPC9lbT48L3RkPjx0ZD4mbmJzcDs8L3RkPgotICAgICAgICA8L3RyPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkPik8L3RkPgotICAgICAgICAgIDx0ZD48L3RkPjx0ZD48L3RkPjx0ZD48L3RkPgotICAgICAgICA8L3RyPgotICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KLTxwPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWJmMGIzYmQ3ZjBlNGM3NDZhODllYzZlN2YxMDFmYzMyIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6U2V0QXR0cmlidXRlIiByZWY9ImFiZjBiM2JkN2YwZTRjNzQ2YTg5ZWM2ZTdmMTAxZmMzMiIgYXJncz0iKGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKl92YWx1ZSkiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj52b2lkIFRpWG1sRWxlbWVudDo6U2V0QXR0cmlidXRlIDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5jb25zdCBjaGFyICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPm5hbWU8L2VtPiwgPC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1rZXkiPjwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+X3ZhbHVlPC9lbT48L3RkPjx0ZD4mbmJzcDs8L3RkPgotICAgICAgICA8L3RyPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkPik8L3RkPgotICAgICAgICAgIDx0ZD48L3RkPjx0ZD48L3RkPjx0ZD48L3RkPgotICAgICAgICA8L3RyPgotICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KLQotPHA+U2V0cyBhbiBhdHRyaWJ1dGUgb2YgbmFtZSB0byBhIGdpdmVuIHZhbHVlLiA8L3A+Ci08cD5UaGUgYXR0cmlidXRlIHdpbGwgYmUgY3JlYXRlZCBpZiBpdCBkb2VzIG5vdCBleGlzdCwgb3IgY2hhbmdlZCBpZiBpdCBkb2VzLiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTBkMWRkOTc1ZDc1NDk2Nzc4MTc3ZTM1YWJmZTBlYzBiIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sRWxlbWVudDo6U2V0RG91YmxlQXR0cmlidXRlIiByZWY9ImEwZDFkZDk3NWQ3NTQ5Njc3ODE3N2UzNWFiZmUwZWMwYiIgYXJncz0iKGNvbnN0IGNoYXIgKm5hbWUsIGRvdWJsZSB2YWx1ZSkiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj52b2lkIFRpWG1sRWxlbWVudDo6U2V0RG91YmxlQXR0cmlidXRlIDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5jb25zdCBjaGFyICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPm5hbWU8L2VtPiwgPC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1rZXkiPjwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmRvdWJsZSZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+dmFsdWU8L2VtPjwvdGQ+PHRkPiZuYnNwOzwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQ+KTwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgotCi08cD5TZXRzIGFuIGF0dHJpYnV0ZSBvZiBuYW1lIHRvIGEgZ2l2ZW4gdmFsdWUuIDwvcD4KLTxwPlRoZSBhdHRyaWJ1dGUgd2lsbCBiZSBjcmVhdGVkIGlmIGl0IGRvZXMgbm90IGV4aXN0LCBvciBjaGFuZ2VkIGlmIGl0IGRvZXMuIDwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxoci8+VGhlIGRvY3VtZW50YXRpb24gZm9yIHRoaXMgY2xhc3Mgd2FzIGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgZmlsZTo8dWw+Ci08bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+PC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOworPHA+CitTZXRzIGFuIGF0dHJpYnV0ZSBvZiBuYW1lIHRvIGEgZ2l2ZW4gdmFsdWUuIAorPHA+CitUaGUgYXR0cmlidXRlIHdpbGwgYmUgY3JlYXRlZCBpZiBpdCBkb2VzIG5vdCBleGlzdCwgb3IgY2hhbmdlZCBpZiBpdCBkb2VzLiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxocj5UaGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhpcyBjbGFzcyB3YXMgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBmaWxlOjx1bD4KKzxsaT48YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGgtc291cmNlLmh0bWwiPnRpbnl4bWwuaDwvYT48L3VsPgorPGhyIHNpemU9IjEiPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFNhdCBPY3QgOCAxNDoxNTozMCAyMDA1IGZvciBUaW55WG1sIGJ5Jm5ic3A7CiA8YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgorPGltZyBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iIGFsaWduPSJtaWRkbGUiIGJvcmRlcj0iMCI+PC9hPiAxLjQuNCA8L3NtYWxsPjwvYWRkcmVzcz4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbEVsZW1lbnQucG5nIGIvZG9jcy9jbGFzc1RpWG1sRWxlbWVudC5wbmcKaW5kZXggMjFlOGM4Zi4uNWFjYzIxYiAxMDA2NDQKLS0tIGEvZG9jcy9jbGFzc1RpWG1sRWxlbWVudC5wbmcKKysrIGIvZG9jcy9jbGFzc1RpWG1sRWxlbWVudC5wbmcKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZG9jcy9jbGFzc1RpWG1sSGFuZGxlLW1lbWJlcnMuaHRtbCBiL2RvY3MvY2xhc3NUaVhtbEhhbmRsZS1tZW1iZXJzLmh0bWwKaW5kZXggOTFmZDY5Yy4uYWRmYWViYyAxMDA2NDQKLS0tIGEvZG9jcy9jbGFzc1RpWG1sSGFuZGxlLW1lbWJlcnMuaHRtbAorKysgYi9kb2NzL2NsYXNzVGlYbWxIYW5kbGUtbWVtYmVycy5odG1sCkBAIC0xLDUzICsxLDI3IEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIj4KKzxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9aXNvLTg4NTktMSI+CiA8dGl0bGU+VGlueVhtbDogTWVtYmVyIExpc3Q8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci08aDE+VGlYbWxIYW5kbGUgTWVtYmVyIExpc3Q8L2gxPlRoaXMgaXMgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgbWVtYmVycyBmb3IgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiwgaW5jbHVkaW5nIGFsbCBpbmhlcml0ZWQgbWVtYmVycy48dGFibGU+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2EwNzI0OTJiNGJlMWFjZGIwZGIyZDAzY2Q4ZjcxY2NjNCI+Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlLCBpbnQgaW5kZXgpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2FmOWNmNmE3ZDA4YTVkYTk0YTg5MjQ0MjVhZDBjZDVhYyI+Q2hpbGQ8L2E+KGludCBpbmRleCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTk3OWEzZjg1MDk4NGExNzZlZTg4NGUzOTRjN2VlZDJkIj5DaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlLCBpbnQgaW5kZXgpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E4Nzg2NDc1YjlkMWYxNTE4NDkyZTNhNDY3MDRjN2VmMCI+Q2hpbGRFbGVtZW50PC9hPihpbnQgaW5kZXgpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2FjYjVmZTgzODhhNTI2Mjg5ZWE2NWU4MTdhNTFlMDVlNyI+RWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWNkYjFmYWFmODhhNzAwYjQwY2EyYzhkOWFlZTIxMTM5Ij5GaXJzdENoaWxkPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E4YzYxZjY0YWU5MzY1ZDg5YzI2NGYyODkwODU1NDFmOCI+Rmlyc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2EyNGQxMTEyZTk5NWU5MzdlNGRkZGIyMDJkNDExM2Q0YSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWYwYWVhNzUxMzIwZjVlNDMwZmFjNmY4ZmZmM2I4ZGQ0Ij5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2FiNDRiNzIzYThkYzlhZjcyODM4YTMwM2MwNzlkMDM3NiI+Tm9kZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTlmYzczOWM4YTE4ZDE2MDAwNmY4MjU3MmZjMTQzZDEzIj5UZXh0PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhYmExOGZkN2JkZWZiOTQyZWNkZWE0YmY0YjhlMjllYzgiPlRpWG1sSGFuZGxlPC9hPihUaVhtbE5vZGUgKl9ub2RlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMjM2ZDc4NTVlMWU1NmNjYzdiOTgwNjMwYzQ4YzdmZDciPlRpWG1sSGFuZGxlPC9hPihjb25zdCBUaVhtbEhhbmRsZSAmYW1wO3JlZik8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWJjNmU3ZWQzODNhNWZlMWU1MmIwYzAwMDRiNDU3YjllIj5Ub0VsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2FmNjc4ZTUwODhlODNiZTY3YmFmNzZmNjk5NzU2ZjJjMyI+VG9Ob2RlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhNGFjNTNhNjUyMjk2MjAzYTViNWUxMzg1NGQ5MjM1ODYiPlRvVGV4dDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTEzODFjMTc1MDdhMTMwNzY3YjFlMjNhZmM5M2IzNjc0Ij5Ub1Vua25vd248L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E0OTY3NWI3NDM1N2JhMmFhZTEyNDY1N2E5YTFlZjQ2NSI+VW5rbm93bjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLTwvdGFibGU+PC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKKzxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIj4KKzwvaGVhZD48Ym9keT4KKzwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS40LjQgLS0+Cis8ZGl2IGNsYXNzPSJxaW5kZXgiPjxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImluZGV4Lmh0bWwiPk1haW4mbmJzcDtQYWdlPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImhpZXJhcmNoeS5odG1sIj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+Q2xhc3MmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZpbGVzLmh0bWwiPkZpbGUmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj5DbGFzcyZuYnNwO01lbWJlcnM8L2E+PC9kaXY+Cis8aDE+VGlYbWxIYW5kbGUgTWVtYmVyIExpc3Q8L2gxPlRoaXMgaXMgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgbWVtYmVycyBmb3IgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiwgaW5jbHVkaW5nIGFsbCBpbmhlcml0ZWQgbWVtYmVycy48cD48dGFibGU+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E3Ij5DaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUsIGludCBpbmRleCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTgiPkNoaWxkPC9hPihpbnQgaW5kZXgpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E5Ij5DaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlLCBpbnQgaW5kZXgpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExMCI+Q2hpbGRFbGVtZW50PC9hPihpbnQgaW5kZXgpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExNiI+RWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTMiPkZpcnN0Q2hpbGQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTQiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhNSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTYiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTE1Ij5Ob2RlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMTciPlRleHQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2EwIj5UaVhtbEhhbmRsZTwvYT4oVGlYbWxOb2RlICpfbm9kZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTEiPlRpWG1sSGFuZGxlPC9hPihjb25zdCBUaVhtbEhhbmRsZSAmYW1wO3JlZik8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTE4Ij5Vbmtub3duPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorPC90YWJsZT48aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9jbGFzc1RpWG1sSGFuZGxlLmh0bWwgYi9kb2NzL2NsYXNzVGlYbWxIYW5kbGUuaHRtbAppbmRleCA1OWVlMjE3Li5mN2FmNjAyIDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxIYW5kbGUuaHRtbAorKysgYi9kb2NzL2NsYXNzVGlYbWxIYW5kbGUuaHRtbApAQCAtMSw5MyArMSw4NCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PWlzby04ODU5LTEiPgogPHRpdGxlPlRpbnlYbWw6IFRpWG1sSGFuZGxlIENsYXNzIFJlZmVyZW5jZTwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLTxoMT5UaVhtbEhhbmRsZSBDbGFzcyBSZWZlcmVuY2U8L2gxPjwhLS0gZG94eXRhZzogY2xhc3M9IlRpWG1sSGFuZGxlIiAtLT4KLTxwPkEgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiIHRpdGxlPSJBIFRpWG1sSGFuZGxlIGlzIGEgY2xhc3MgdGhhdCB3cmFwcyBhIG5vZGUgcG9pbnRlciB3aXRoIG51bGwgY2hlY2tzOyB0aGlzIGlzIGFuIGluY3JlZGlibHkuLi4iPlRpWG1sSGFuZGxlPC9hPiBpcyBhIGNsYXNzIHRoYXQgd3JhcHMgYSBub2RlIHBvaW50ZXIgd2l0aCBudWxsIGNoZWNrczsgdGhpcyBpcyBhbiBpbmNyZWRpYmx5IHVzZWZ1bCB0aGluZy4gIAotPGEgaHJlZj0iI19kZXRhaWxzIj5Nb3JlLi4uPC9hPjwvcD4KKzxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIj4KKzwvaGVhZD48Ym9keT4KKzwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS40LjQgLS0+Cis8ZGl2IGNsYXNzPSJxaW5kZXgiPjxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImluZGV4Lmh0bWwiPk1haW4mbmJzcDtQYWdlPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImhpZXJhcmNoeS5odG1sIj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+Q2xhc3MmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZpbGVzLmh0bWwiPkZpbGUmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj5DbGFzcyZuYnNwO01lbWJlcnM8L2E+PC9kaXY+Cis8aDE+VGlYbWxIYW5kbGUgQ2xhc3MgUmVmZXJlbmNlPC9oMT48IS0tIGRveHl0YWc6IGNsYXNzPSJUaVhtbEhhbmRsZSIgLS0+QSBUaVhtbEhhbmRsZSBpcyBhIGNsYXNzIHRoYXQgd3JhcHMgYSBub2RlIHBvaW50ZXIgd2l0aCBudWxsIGNoZWNrczsgdGhpcyBpcyBhbiBpbmNyZWRpYmx5IHVzZWZ1bCB0aGluZy4gIAorPGEgaHJlZj0iI19kZXRhaWxzIj5Nb3JlLi4uPC9hPgorPHA+Cis8Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoLXNvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT4KKzxwPgorPGEgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS1tZW1iZXJzLmh0bWwiPkxpc3Qgb2YgYWxsIG1lbWJlcnMuPC9hPjx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+Cis8dHI+PHRkPjwvdGQ+PC90cj4KKzx0cj48dGQgY29sc3Bhbj0iMiI+PGJyPjxoMj5QdWJsaWMgTWVtYmVyIEZ1bmN0aW9uczwvaDI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEhhbmRsZTo6VGlYbWxIYW5kbGUiIHJlZj0iYTAiIGFyZ3M9IihUaVhtbE5vZGUgKl9ub2RlKSIgLS0+CismbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTAiPlRpWG1sSGFuZGxlPC9hPiAoPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICpfbm9kZSk8L3RkPjwvdHI+CiAKLTxwPjxjb2RlPiNpbmNsdWRlICZsdDs8YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGhfc291cmNlLmh0bWwiPnRpbnl4bWwuaDwvYT4mZ3Q7PC9jb2RlPjwvcD4KKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNyZWF0ZSBhIGhhbmRsZSBmcm9tIGFueSBub2RlIChhdCBhbnkgZGVwdGggb2YgdGhlIHRyZWUuKSBUaGlzIGNhbiBiZSBhIG51bGwgcG9pbnRlci4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxIYW5kbGU6OlRpWG1sSGFuZGxlIiByZWY9ImExIiBhcmdzPSIoY29uc3QgVGlYbWxIYW5kbGUgJmFtcDtyZWYpIiAtLT4KKyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMSI+VGlYbWxIYW5kbGU8L2E+IChjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+ICZhbXA7cmVmKTwvdGQ+PC90cj4KIAotPHA+PGEgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS1tZW1iZXJzLmh0bWwiPkxpc3Qgb2YgYWxsIG1lbWJlcnMuPC9hPjwvcD4KLTx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+Ci08dHI+PHRkIGNvbHNwYW49IjIiPjxoMj5QdWJsaWMgTWVtYmVyIEZ1bmN0aW9uczwvaDI+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhYmExOGZkN2JkZWZiOTQyZWNkZWE0YmY0YjhlMjllYzgiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxIYW5kbGU6OlRpWG1sSGFuZGxlIiByZWY9ImFiYTE4ZmQ3YmRlZmI5NDJlY2RlYTRiZjRiOGUyOWVjOCIgYXJncz0iKFRpWG1sTm9kZSAqX25vZGUpIiAtLT4KLSZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhYmExOGZkN2JkZWZiOTQyZWNkZWE0YmY0YjhlMjllYzgiPlRpWG1sSGFuZGxlPC9hPiAoPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICpfbm9kZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DcmVhdGUgYSBoYW5kbGUgZnJvbSBhbnkgbm9kZSAoYXQgYW55IGRlcHRoIG9mIHRoZSB0cmVlLikgVGhpcyBjYW4gYmUgYSBudWxsIHBvaW50ZXIuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMjM2ZDc4NTVlMWU1NmNjYzdiOTgwNjMwYzQ4YzdmZDciPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxIYW5kbGU6OlRpWG1sSGFuZGxlIiByZWY9ImEyMzZkNzg1NWUxZTU2Y2NjN2I5ODA2MzBjNDhjN2ZkNyIgYXJncz0iKGNvbnN0IFRpWG1sSGFuZGxlICZhbXA7cmVmKSIgLS0+Ci0mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTIzNmQ3ODU1ZTFlNTZjY2M3Yjk4MDYzMGM0OGM3ZmQ3Ij5UaVhtbEhhbmRsZTwvYT4gKGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4gJmFtcDtyZWYpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29weSBjb25zdHJ1Y3Rvci4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFjZGIxZmFhZjg4YTcwMGI0MGNhMmM4ZDlhZWUyMTEzOSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEhhbmRsZTo6Rmlyc3RDaGlsZCIgcmVmPSJhY2RiMWZhYWY4OGE3MDBiNDBjYTJjOGQ5YWVlMjExMzkiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci08YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2FjZGIxZmFhZjg4YTcwMGI0MGNhMmM4ZDlhZWUyMTEzOSI+Rmlyc3RDaGlsZDwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIGEgaGFuZGxlIHRvIHRoZSBmaXJzdCBjaGlsZCBub2RlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYThjNjFmNjRhZTkzNjVkODljMjY0ZjI4OTA4NTU0MWY4Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sSGFuZGxlOjpGaXJzdENoaWxkIiByZWY9ImE4YzYxZjY0YWU5MzY1ZDg5YzI2NGYyODkwODU1NDFmOCIgYXJncz0iKGNvbnN0IGNoYXIgKnZhbHVlKSBjb25zdCAiIC0tPgotPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhOGM2MWY2NGFlOTM2NWQ4OWMyNjRmMjg5MDg1NTQxZjgiPkZpcnN0Q2hpbGQ8L2E+IChjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIGEgaGFuZGxlIHRvIHRoZSBmaXJzdCBjaGlsZCBub2RlIHdpdGggdGhlIGdpdmVuIG5hbWUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMjRkMTExMmU5OTVlOTM3ZTRkZGRiMjAyZDQxMTNkNGEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxIYW5kbGU6OkZpcnN0Q2hpbGRFbGVtZW50IiByZWY9ImEyNGQxMTEyZTk5NWU5MzdlNGRkZGIyMDJkNDExM2Q0YSIgYXJncz0iKCkgY29uc3QgIiAtLT4KLTxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTI0ZDExMTJlOTk1ZTkzN2U0ZGRkYjIwMmQ0MTEzZDRhIj5GaXJzdENoaWxkRWxlbWVudDwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIGEgaGFuZGxlIHRvIHRoZSBmaXJzdCBjaGlsZCBlbGVtZW50LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWYwYWVhNzUxMzIwZjVlNDMwZmFjNmY4ZmZmM2I4ZGQ0Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sSGFuZGxlOjpGaXJzdENoaWxkRWxlbWVudCIgcmVmPSJhZjBhZWE3NTEzMjBmNWU0MzBmYWM2ZjhmZmYzYjhkZDQiIGFyZ3M9Iihjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgIiAtLT4KLTxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWYwYWVhNzUxMzIwZjVlNDMwZmFjNmY4ZmZmM2I4ZGQ0Ij5GaXJzdENoaWxkRWxlbWVudDwvYT4gKGNvbnN0IGNoYXIgKnZhbHVlKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gYSBoYW5kbGUgdG8gdGhlIGZpcnN0IGNoaWxkIGVsZW1lbnQgd2l0aCB0aGUgZ2l2ZW4gbmFtZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMDcyNDkyYjRiZTFhY2RiMGRiMmQwM2NkOGY3MWNjYzQiPkNoaWxkPC9hPiAoY29uc3QgY2hhciAqdmFsdWUsIGludCBpbmRleCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIGEgaGFuZGxlIHRvIHRoZSAiaW5kZXgiIGNoaWxkIHdpdGggdGhlIGdpdmVuIG5hbWUuICA8YSBocmVmPSIjYTA3MjQ5MmI0YmUxYWNkYjBkYjJkMDNjZDhmNzFjY2M0Ij48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhZjljZjZhN2QwOGE1ZGE5NGE4OTI0NDI1YWQwY2Q1YWMiPkNoaWxkPC9hPiAoaW50IGluZGV4KSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gYSBoYW5kbGUgdG8gdGhlICJpbmRleCIgY2hpbGQuICA8YSBocmVmPSIjYWY5Y2Y2YTdkMDhhNWRhOTRhODkyNDQyNWFkMGNkNWFjIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhOTc5YTNmODUwOTg0YTE3NmVlODg0ZTM5NGM3ZWVkMmQiPkNoaWxkRWxlbWVudDwvYT4gKGNvbnN0IGNoYXIgKnZhbHVlLCBpbnQgaW5kZXgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiBhIGhhbmRsZSB0byB0aGUgImluZGV4IiBjaGlsZCBlbGVtZW50IHdpdGggdGhlIGdpdmVuIG5hbWUuICA8YSBocmVmPSIjYTk3OWEzZjg1MDk4NGExNzZlZTg4NGUzOTRjN2VlZDJkIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhODc4NjQ3NWI5ZDFmMTUxODQ5MmUzYTQ2NzA0YzdlZjAiPkNoaWxkRWxlbWVudDwvYT4gKGludCBpbmRleCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIGEgaGFuZGxlIHRvIHRoZSAiaW5kZXgiIGNoaWxkIGVsZW1lbnQuICA8YSBocmVmPSIjYTg3ODY0NzViOWQxZjE1MTg0OTJlM2E0NjcwNGM3ZWYwIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWY2NzhlNTA4OGU4M2JlNjdiYWY3NmY2OTk3NTZmMmMzIj5Ub05vZGU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiB0aGUgaGFuZGxlIGFzIGEgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPi4gIDxhIGhyZWY9IiNhZjY3OGU1MDg4ZTgzYmU2N2JhZjc2ZjY5OTc1NmYyYzMiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhYmM2ZTdlZDM4M2E1ZmUxZTUyYjBjMDAwNGI0NTdiOWUiPlRvRWxlbWVudDwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIHRoZSBoYW5kbGUgYXMgYSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4uICA8YSBocmVmPSIjYWJjNmU3ZWQzODNhNWZlMWU1MmIwYzAwMDRiNDU3YjllIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTRhYzUzYTY1MjI5NjIwM2E1YjVlMTM4NTRkOTIzNTg2Ij5Ub1RleHQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiB0aGUgaGFuZGxlIGFzIGEgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIiB0aXRsZT0iWE1MIHRleHQuIj5UaVhtbFRleHQ8L2E+LiAgPGEgaHJlZj0iI2E0YWM1M2E2NTIyOTYyMDNhNWI1ZTEzODU0ZDkyMzU4NiI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExMzgxYzE3NTA3YTEzMDc2N2IxZTIzYWZjOTNiMzY3NCI+VG9Vbmtub3duPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gdGhlIGhhbmRsZSBhcyBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCIgdGl0bGU9IkFueSB0YWcgdGhhdCB0aW55WG1sIGRvZXNuJiMzOTt0IHJlY29nbml6ZSBpcyBzYXZlZCBhcyBhbiB1bmtub3duLiI+VGlYbWxVbmtub3duPC9hPi4gIDxhIGhyZWY9IiNhMTM4MWMxNzUwN2ExMzA3NjdiMWUyM2FmYzkzYjM2NzQiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhYjQ0YjcyM2E4ZGM5YWY3MjgzOGEzMDNjMDc5ZDAzNzYiPk5vZGU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhY2I1ZmU4Mzg4YTUyNjI4OWVhNjVlODE3YTUxZTA1ZTciPkVsZW1lbnQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhOWZjNzM5YzhhMThkMTYwMDA2ZjgyNTcyZmMxNDNkMTMiPlRleHQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiPlRpWG1sVW5rbm93bjwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhNDk2NzViNzQzNTdiYTJhYWUxMjQ2NTdhOWExZWY0NjUiPlVua25vd248L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNvcHkgY29uc3RydWN0b3IuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEzIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sSGFuZGxlOjpGaXJzdENoaWxkIiByZWY9ImEzIiBhcmdzPSIoKSBjb25zdCAiIC0tPgorPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMyI+Rmlyc3RDaGlsZDwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gYSBoYW5kbGUgdG8gdGhlIGZpcnN0IGNoaWxkIG5vZGUuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE0Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sSGFuZGxlOjpGaXJzdENoaWxkIiByZWY9ImE0IiBhcmdzPSIoY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0ICIgLS0+Cis8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E0Ij5GaXJzdENoaWxkPC9hPiAoY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIGEgaGFuZGxlIHRvIHRoZSBmaXJzdCBjaGlsZCBub2RlIHdpdGggdGhlIGdpdmVuIG5hbWUuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE1Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sSGFuZGxlOjpGaXJzdENoaWxkRWxlbWVudCIgcmVmPSJhNSIgYXJncz0iKCkgY29uc3QgIiAtLT4KKzxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTUiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiBhIGhhbmRsZSB0byB0aGUgZmlyc3QgY2hpbGQgZWxlbWVudC4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxIYW5kbGU6OkZpcnN0Q2hpbGRFbGVtZW50IiByZWY9ImE2IiBhcmdzPSIoY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0ICIgLS0+Cis8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E2Ij5GaXJzdENoaWxkRWxlbWVudDwvYT4gKGNvbnN0IGNoYXIgKnZhbHVlKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiBhIGhhbmRsZSB0byB0aGUgZmlyc3QgY2hpbGQgZWxlbWVudCB3aXRoIHRoZSBnaXZlbiBuYW1lLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E3Ij5DaGlsZDwvYT4gKGNvbnN0IGNoYXIgKnZhbHVlLCBpbnQgaW5kZXgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIGEgaGFuZGxlIHRvIHRoZSAiaW5kZXgiIGNoaWxkIHdpdGggdGhlIGdpdmVuIG5hbWUuICA8YSBocmVmPSIjYTciPjwvYT48YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E4Ij5DaGlsZDwvYT4gKGludCBpbmRleCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gYSBoYW5kbGUgdG8gdGhlICJpbmRleCIgY2hpbGQuICA8YSBocmVmPSIjYTgiPjwvYT48YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E5Ij5DaGlsZEVsZW1lbnQ8L2E+IChjb25zdCBjaGFyICp2YWx1ZSwgaW50IGluZGV4KSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiBhIGhhbmRsZSB0byB0aGUgImluZGV4IiBjaGlsZCBlbGVtZW50IHdpdGggdGhlIGdpdmVuIG5hbWUuICA8YSBocmVmPSIjYTkiPjwvYT48YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExMCI+Q2hpbGRFbGVtZW50PC9hPiAoaW50IGluZGV4KSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiBhIGhhbmRsZSB0byB0aGUgImluZGV4IiBjaGlsZCBlbGVtZW50LiAgPGEgaHJlZj0iI2ExMCI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImExNSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEhhbmRsZTo6Tm9kZSIgcmVmPSJhMTUiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Cis8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMTUiPk5vZGU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIHRoZSBoYW5kbGUgYXMgYSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4uIFRoaXMgbWF5IHJldHVybiBudWxsLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMTYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxIYW5kbGU6OkVsZW1lbnQiIHJlZj0iYTE2IiBhcmdzPSIoKSBjb25zdCAiIC0tPgorPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTE2Ij5FbGVtZW50PC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiB0aGUgaGFuZGxlIGFzIGEgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+LiBUaGlzIG1heSByZXR1cm4gbnVsbC4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTE3Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sSGFuZGxlOjpUZXh0IiByZWY9ImExNyIgYXJncz0iKCkgY29uc3QgIiAtLT4KKzxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExNyI+VGV4dDwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gdGhlIGhhbmRsZSBhcyBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPi4gVGhpcyBtYXkgcmV0dXJuIG51bGwuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImExOCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEhhbmRsZTo6VW5rbm93biIgcmVmPSJhMTgiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Cis8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiPlRpWG1sVW5rbm93bjwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMTgiPlVua25vd248L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIHRoZSBoYW5kbGUgYXMgYSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiPlRpWG1sVW5rbm93bjwvYT4uIFRoaXMgbWF5IHJldHVybiBudWxsOy4gPGJyPjwvdGQ+PC90cj4KIDwvdGFibGU+Ci08aHIvPjxhIG5hbWU9Il9kZXRhaWxzIj48L2E+PGgyPkRldGFpbGVkIERlc2NyaXB0aW9uPC9oMj4KLTxwPkEgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiIHRpdGxlPSJBIFRpWG1sSGFuZGxlIGlzIGEgY2xhc3MgdGhhdCB3cmFwcyBhIG5vZGUgcG9pbnRlciB3aXRoIG51bGwgY2hlY2tzOyB0aGlzIGlzIGFuIGluY3JlZGlibHkuLi4iPlRpWG1sSGFuZGxlPC9hPiBpcyBhIGNsYXNzIHRoYXQgd3JhcHMgYSBub2RlIHBvaW50ZXIgd2l0aCBudWxsIGNoZWNrczsgdGhpcyBpcyBhbiBpbmNyZWRpYmx5IHVzZWZ1bCB0aGluZy4gPC9wPgotPHA+Tm90ZSB0aGF0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIiB0aXRsZT0iQSBUaVhtbEhhbmRsZSBpcyBhIGNsYXNzIHRoYXQgd3JhcHMgYSBub2RlIHBvaW50ZXIgd2l0aCBudWxsIGNoZWNrczsgdGhpcyBpcyBhbiBpbmNyZWRpYmx5Li4uIj5UaVhtbEhhbmRsZTwvYT4gaXMgbm90IHBhcnQgb2YgdGhlIFRpbnlYbWwgRE9NIHN0cnVjdHVyZS4gSXQgaXMgYSBzZXBhcmF0ZSB1dGlsaXR5IGNsYXNzLjwvcD4KLTxwPlRha2UgYW4gZXhhbXBsZTogPC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLQkmbHQ7RG9jdW1lbnQmZ3Q7Cis8aHI+PGEgbmFtZT0iX2RldGFpbHMiPjwvYT48aDI+RGV0YWlsZWQgRGVzY3JpcHRpb248L2gyPgorQSBUaVhtbEhhbmRsZSBpcyBhIGNsYXNzIHRoYXQgd3JhcHMgYSBub2RlIHBvaW50ZXIgd2l0aCBudWxsIGNoZWNrczsgdGhpcyBpcyBhbiBpbmNyZWRpYmx5IHVzZWZ1bCB0aGluZy4gCis8cD4KK05vdGUgdGhhdCBUaVhtbEhhbmRsZSBpcyBub3QgcGFydCBvZiB0aGUgVGlueVhtbCBET00gc3RydWN0dXJlLiBJdCBpcyBhIHNlcGFyYXRlIHV0aWxpdHkgY2xhc3MuPHA+CitUYWtlIGFuIGV4YW1wbGU6IDxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CSZsdDtEb2N1bWVudCZndDsKIAkJJmx0O0VsZW1lbnQgYXR0cmlidXRlQSA9ICJ2YWx1ZUEiJmd0OwogCQkJJmx0O0NoaWxkIGF0dHJpYnV0ZUIgPSAidmFsdWUxIiAvJmd0OwogCQkJJmx0O0NoaWxkIGF0dHJpYnV0ZUIgPSAidmFsdWUyIiAvJmd0OwogCQkmbHQ7L0VsZW1lbnQmZ3Q7CiAJJmx0O0RvY3VtZW50Jmd0OwotCTwvcHJlPjwvZGl2PjxwPkFzc3VtaW5nIHlvdSB3YW50IHRoZSB2YWx1ZSBvZiAiYXR0cmlidXRlQiIgaW4gdGhlIDJuZCAiQ2hpbGQiIGVsZW1lbnQsIGl0J3MgdmVyeSBlYXN5IHRvIHdyaXRlIGEgKmxvdCogb2YgY29kZSB0aGF0IGxvb2tzIGxpa2U6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLQlUaVhtbEVsZW1lbnQqIHJvb3QgPSBkb2N1bWVudC5GaXJzdENoaWxkRWxlbWVudCggIkRvY3VtZW50IiApOworCTwvcHJlPjwvZGl2PjxwPgorQXNzdW1pbmcgeW91IHdhbnQgdGhlIHZhbHVlIG9mICJhdHRyaWJ1dGVCIiBpbiB0aGUgMm5kICJDaGlsZCIgZWxlbWVudCwgaXQncyB2ZXJ5IGVhc3kgdG8gd3JpdGUgYSAqbG90KiBvZiBjb2RlIHRoYXQgbG9va3MgbGlrZTo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CVRpWG1sRWxlbWVudCogcm9vdCA9IGRvY3VtZW50LkZpcnN0Q2hpbGRFbGVtZW50KCAiRG9jdW1lbnQiICk7CiAJaWYgKCByb290ICkKIAl7CiAJCVRpWG1sRWxlbWVudCogZWxlbWVudCA9IHJvb3QtJmd0O0ZpcnN0Q2hpbGRFbGVtZW50KCAiRWxlbWVudCIgKTsKQEAgLTEwMCwzMTMgKzkxLDE4MCBAQAogCQkJCWlmICggY2hpbGQyICkKIAkJCQl7CiAJCQkJCS8vIEZpbmFsbHkgZG8gc29tZXRoaW5nIHVzZWZ1bC4KLQk8L3ByZT48L2Rpdj48cD5BbmQgdGhhdCBkb2Vzbid0IGV2ZW4gY292ZXIgImVsc2UiIGNhc2VzLiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCIgdGl0bGU9IkEgVGlYbWxIYW5kbGUgaXMgYSBjbGFzcyB0aGF0IHdyYXBzIGEgbm9kZSBwb2ludGVyIHdpdGggbnVsbCBjaGVja3M7IHRoaXMgaXMgYW4gaW5jcmVkaWJseS4uLiI+VGlYbWxIYW5kbGU8L2E+IGFkZHJlc3NlcyB0aGUgdmVyYm9zaXR5IG9mIHN1Y2ggY29kZS4gQSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCIgdGl0bGU9IkEgVGlYbWxIYW5kbGUgaXMgYSBjbGFzcyB0aGF0IHdyYXBzIGEgbm9kZSBwb2ludGVyIHdpdGggbnVsbCBjaGVja3M7IHRoaXMgaXMgYW4gaW5jcmVkaWJseS4uLiI+VGlYbWxIYW5kbGU8L2E+IGNoZWNrcyBmb3IgbnVsbCBwb2ludGVycyBzbyBpdCBpcyBwZXJmZWN0bHkgc2FmZSBhbmQgY29ycmVjdCB0byB1c2U6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLQlUaVhtbEhhbmRsZSBkb2NIYW5kbGUoICZhbXA7ZG9jdW1lbnQgKTsKLQlUaVhtbEVsZW1lbnQqIGNoaWxkMiA9IGRvY0hhbmRsZS5GaXJzdENoaWxkKCAiRG9jdW1lbnQiICkuRmlyc3RDaGlsZCggIkVsZW1lbnQiICkuQ2hpbGQoICJDaGlsZCIsIDEgKS5Ub0VsZW1lbnQoKTsKKwk8L3ByZT48L2Rpdj48cD4KK0FuZCB0aGF0IGRvZXNuJ3QgZXZlbiBjb3ZlciAiZWxzZSIgY2FzZXMuIFRpWG1sSGFuZGxlIGFkZHJlc3NlcyB0aGUgdmVyYm9zaXR5IG9mIHN1Y2ggY29kZS4gQSBUaVhtbEhhbmRsZSBjaGVja3MgZm9yIG51bGwgcG9pbnRlcnMgc28gaXQgaXMgcGVyZmVjdGx5IHNhZmUgYW5kIGNvcnJlY3QgdG8gdXNlOjxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JVGlYbWxIYW5kbGUgZG9jSGFuZGxlKCAmYW1wO2RvY3VtZW50ICk7CisJVGlYbWxFbGVtZW50KiBjaGlsZDIgPSBkb2NIYW5kbGUuRmlyc3RDaGlsZCggIkRvY3VtZW50IiApLkZpcnN0Q2hpbGQoICJFbGVtZW50IiApLkNoaWxkKCAiQ2hpbGQiLCAxICkuRWxlbWVudCgpOwogCWlmICggY2hpbGQyICkKIAl7CiAJCS8vIGRvIHNvbWV0aGluZyB1c2VmdWwKLQk8L3ByZT48L2Rpdj48cD5XaGljaCBpcyBNVUNIIG1vcmUgY29uY2lzZSBhbmQgdXNlZnVsLjwvcD4KLTxwPkl0IGlzIGFsc28gc2FmZSB0byBjb3B5IGhhbmRsZXMgLSBpbnRlcm5hbGx5IHRoZXkgYXJlIG5vdGhpbmcgbW9yZSB0aGFuIG5vZGUgcG9pbnRlcnMuIDwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci0JVGlYbWxIYW5kbGUgaGFuZGxlQ29weSA9IGhhbmRsZTsKLQk8L3ByZT48L2Rpdj48cD5XaGF0IHRoZXkgc2hvdWxkIG5vdCBiZSB1c2VkIGZvciBpcyBpdGVyYXRpb246PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLQlpbnQgaT0wOyAKKwk8L3ByZT48L2Rpdj48cD4KK1doaWNoIGlzIE1VQ0ggbW9yZSBjb25jaXNlIGFuZCB1c2VmdWwuPHA+CitJdCBpcyBhbHNvIHNhZmUgdG8gY29weSBoYW5kbGVzIC0gaW50ZXJuYWxseSB0aGV5IGFyZSBub3RoaW5nIG1vcmUgdGhhbiBub2RlIHBvaW50ZXJzLiA8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPglUaVhtbEhhbmRsZSBoYW5kbGVDb3B5ID0gaGFuZGxlOworCTwvcHJlPjwvZGl2PjxwPgorV2hhdCB0aGV5IHNob3VsZCBub3QgYmUgdXNlZCBmb3IgaXMgaXRlcmF0aW9uOjxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JaW50IGk9MDsgCiAJd2hpbGUgKCB0cnVlICkKIAl7Ci0JCVRpWG1sRWxlbWVudCogY2hpbGQgPSBkb2NIYW5kbGUuRmlyc3RDaGlsZCggIkRvY3VtZW50IiApLkZpcnN0Q2hpbGQoICJFbGVtZW50IiApLkNoaWxkKCAiQ2hpbGQiLCBpICkuVG9FbGVtZW50KCk7CisJCVRpWG1sRWxlbWVudCogY2hpbGQgPSBkb2NIYW5kbGUuRmlyc3RDaGlsZCggIkRvY3VtZW50IiApLkZpcnN0Q2hpbGQoICJFbGVtZW50IiApLkNoaWxkKCAiQ2hpbGQiLCBpICkuRWxlbWVudCgpOwogCQlpZiAoICFjaGlsZCApCiAJCQlicmVhazsKIAkJLy8gZG8gc29tZXRoaW5nCiAJCSsraTsKIAl9Ci0JPC9wcmU+PC9kaXY+PHA+SXQgc2VlbXMgcmVhc29uYWJsZSwgYnV0IGl0IGlzIGluIGZhY3QgdHdvIGVtYmVkZGVkIHdoaWxlIGxvb3BzLiBUaGUgQ2hpbGQgbWV0aG9kIGlzIGEgbGluZWFyIHdhbGsgdG8gZmluZCB0aGUgZWxlbWVudCwgc28gdGhpcyBjb2RlIHdvdWxkIGl0ZXJhdGUgbXVjaCBtb3JlIHRoYW4gaXQgbmVlZHMgdG8uIEluc3RlYWQsIHByZWZlcjo8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotCVRpWG1sRWxlbWVudCogY2hpbGQgPSBkb2NIYW5kbGUuRmlyc3RDaGlsZCggIkRvY3VtZW50IiApLkZpcnN0Q2hpbGQoICJFbGVtZW50IiApLkZpcnN0Q2hpbGQoICJDaGlsZCIgKS5Ub0VsZW1lbnQoKTsKKwk8L3ByZT48L2Rpdj48cD4KK0l0IHNlZW1zIHJlYXNvbmFibGUsIGJ1dCBpdCBpcyBpbiBmYWN0IHR3byBlbWJlZGRlZCB3aGlsZSBsb29wcy4gVGhlIENoaWxkIG1ldGhvZCBpcyBhIGxpbmVhciB3YWxrIHRvIGZpbmQgdGhlIGVsZW1lbnQsIHNvIHRoaXMgY29kZSB3b3VsZCBpdGVyYXRlIG11Y2ggbW9yZSB0aGFuIGl0IG5lZWRzIHRvLiBJbnN0ZWFkLCBwcmVmZXI6PHA+Cis8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPglUaVhtbEVsZW1lbnQqIGNoaWxkID0gZG9jSGFuZGxlLkZpcnN0Q2hpbGQoICJEb2N1bWVudCIgKS5GaXJzdENoaWxkKCAiRWxlbWVudCIgKS5GaXJzdENoaWxkKCAiQ2hpbGQiICkuRWxlbWVudCgpOwogCiAJZm9yKCBjaGlsZDsgY2hpbGQ7IGNoaWxkPWNoaWxkLSZndDtOZXh0U2libGluZ0VsZW1lbnQoKSApCiAJewogCQkvLyBkbyBzb21ldGhpbmcKIAl9Ci0JPC9wcmU+PC9kaXY+IDxoci8+PGgyPk1lbWJlciBGdW5jdGlvbiBEb2N1bWVudGF0aW9uPC9oMj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhZjljZjZhN2QwOGE1ZGE5NGE4OTI0NDI1YWQwY2Q1YWMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxIYW5kbGU6OkNoaWxkIiByZWY9ImFmOWNmNmE3ZDA4YTVkYTk0YTg5MjQ0MjVhZDBjZDVhYyIgYXJncz0iKGludCBpbmRleCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKwk8L3ByZT48L2Rpdj4KKzxwPgorPGhyPjxoMj5NZW1iZXIgRnVuY3Rpb24gRG9jdW1lbnRhdGlvbjwvaDI+Cis8YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhOCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEhhbmRsZTo6Q2hpbGQiIHJlZj0iYTgiIGFyZ3M9IihpbnQgaW5kZXgpIGNvbnN0ICIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4gVGlYbWxIYW5kbGU6OkNoaWxkIDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5pbnQmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmluZGV4PC9lbT48L3RkPgotICAgICAgICAgIDx0ZD4mbmJzcDspJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQ+IGNvbnN0PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4gVGlYbWxIYW5kbGU6OkNoaWxkICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmludCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUxIiB2YWxpZ249InRvcCIgbm93cmFwPiA8ZW0+aW5kZXg8L2VtPiAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4mbmJzcDspJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+IGNvbnN0PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPlJldHVybiBhIGhhbmRsZSB0byB0aGUgImluZGV4IiBjaGlsZC4gPC9wPgotPHA+VGhlIGZpcnN0IGNoaWxkIGlzIDAsIHRoZSBzZWNvbmQgMSwgZXRjLiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTA3MjQ5MmI0YmUxYWNkYjBkYjJkMDNjZDhmNzFjY2M0Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sSGFuZGxlOjpDaGlsZCIgcmVmPSJhMDcyNDkyYjRiZTFhY2RiMGRiMmQwM2NkOGY3MWNjYzQiIGFyZ3M9Iihjb25zdCBjaGFyICp2YWx1ZSwgaW50IGluZGV4KSBjb25zdCAiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgorPHA+CitSZXR1cm4gYSBoYW5kbGUgdG8gdGhlICJpbmRleCIgY2hpbGQuIAorPHA+CitUaGUgZmlyc3QgY2hpbGQgaXMgMCwgdGhlIHNlY29uZCAxLCBldGMuICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTciPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxIYW5kbGU6OkNoaWxkIiByZWY9ImE3IiBhcmdzPSIoY29uc3QgY2hhciAqdmFsdWUsIGludCBpbmRleCkgY29uc3QgIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiBUaVhtbEhhbmRsZTo6Q2hpbGQgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+dmFsdWU8L2VtPiwgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4gVGlYbWxIYW5kbGU6OkNoaWxkICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPnZhbHVlPC9lbT4sIDwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFta2V5Ij48L3RkPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5pbnQmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmluZGV4PC9lbT48L3RkPjx0ZD4mbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCBhbGlnbj0icmlnaHQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+aW50Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZSIgbm93cmFwPiA8ZW0+aW5kZXg8L2VtPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQ+KTwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPiBjb25zdDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj4pJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBjb2xzcGFuPSIyIj4gY29uc3Q8L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+UmV0dXJuIGEgaGFuZGxlIHRvIHRoZSAiaW5kZXgiIGNoaWxkIHdpdGggdGhlIGdpdmVuIG5hbWUuIDwvcD4KLTxwPlRoZSBmaXJzdCBjaGlsZCBpcyAwLCB0aGUgc2Vjb25kIDEsIGV0Yy4gPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE4Nzg2NDc1YjlkMWYxNTE4NDkyZTNhNDY3MDRjN2VmMCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEhhbmRsZTo6Q2hpbGRFbGVtZW50IiByZWY9ImE4Nzg2NDc1YjlkMWYxNTE4NDkyZTNhNDY3MDRjN2VmMCIgYXJncz0iKGludCBpbmRleCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorUmV0dXJuIGEgaGFuZGxlIHRvIHRoZSAiaW5kZXgiIGNoaWxkIHdpdGggdGhlIGdpdmVuIG5hbWUuIAorPHA+CitUaGUgZmlyc3QgY2hpbGQgaXMgMCwgdGhlIHNlY29uZCAxLCBldGMuICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTEwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sSGFuZGxlOjpDaGlsZEVsZW1lbnQiIHJlZj0iYTEwIiBhcmdzPSIoaW50IGluZGV4KSBjb25zdCAiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+IFRpWG1sSGFuZGxlOjpDaGlsZEVsZW1lbnQgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmludCZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+aW5kZXg8L2VtPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD4gY29uc3Q8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiBUaVhtbEhhbmRsZTo6Q2hpbGRFbGVtZW50ICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmludCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUxIiB2YWxpZ249InRvcCIgbm93cmFwPiA8ZW0+aW5kZXg8L2VtPiAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4mbmJzcDspJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+IGNvbnN0PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPlJldHVybiBhIGhhbmRsZSB0byB0aGUgImluZGV4IiBjaGlsZCBlbGVtZW50LiA8L3A+Ci08cD5UaGUgZmlyc3QgY2hpbGQgZWxlbWVudCBpcyAwLCB0aGUgc2Vjb25kIDEsIGV0Yy4gTm90ZSB0aGF0IG9ubHkgVGlYbWxFbGVtZW50cyBhcmUgaW5kZXhlZDogb3RoZXIgdHlwZXMgYXJlIG5vdCBjb3VudGVkLiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTk3OWEzZjg1MDk4NGExNzZlZTg4NGUzOTRjN2VlZDJkIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sSGFuZGxlOjpDaGlsZEVsZW1lbnQiIHJlZj0iYTk3OWEzZjg1MDk4NGExNzZlZTg4NGUzOTRjN2VlZDJkIiBhcmdzPSIoY29uc3QgY2hhciAqdmFsdWUsIGludCBpbmRleCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorUmV0dXJuIGEgaGFuZGxlIHRvIHRoZSAiaW5kZXgiIGNoaWxkIGVsZW1lbnQuIAorPHA+CitUaGUgZmlyc3QgY2hpbGQgZWxlbWVudCBpcyAwLCB0aGUgc2Vjb25kIDEsIGV0Yy4gTm90ZSB0aGF0IG9ubHkgVGlYbWxFbGVtZW50cyBhcmUgaW5kZXhlZDogb3RoZXIgdHlwZXMgYXJlIG5vdCBjb3VudGVkLiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sSGFuZGxlOjpDaGlsZEVsZW1lbnQiIHJlZj0iYTkiIGFyZ3M9Iihjb25zdCBjaGFyICp2YWx1ZSwgaW50IGluZGV4KSBjb25zdCAiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+IFRpWG1sSGFuZGxlOjpDaGlsZEVsZW1lbnQgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+dmFsdWU8L2VtPiwgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4gVGlYbWxIYW5kbGU6OkNoaWxkRWxlbWVudCAgICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+KCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5jb25zdCBjaGFyICombmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lIiBub3dyYXA+IDxlbT52YWx1ZTwvZW0+LCA8L3RkPgogICAgICAgICA8L3RyPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbWtleSI+PC90ZD4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+aW50Jm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5pbmRleDwvZW0+PC90ZD48dGQ+Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgYWxpZ249InJpZ2h0Ij48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPmludCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPmluZGV4PC9lbT48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkPik8L3RkPgotICAgICAgICAgIDx0ZD48L3RkPjx0ZD48L3RkPjx0ZD4gY29uc3Q8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgY29sc3Bhbj0iMiI+IGNvbnN0PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPlJldHVybiBhIGhhbmRsZSB0byB0aGUgImluZGV4IiBjaGlsZCBlbGVtZW50IHdpdGggdGhlIGdpdmVuIG5hbWUuIDwvcD4KLTxwPlRoZSBmaXJzdCBjaGlsZCBlbGVtZW50IGlzIDAsIHRoZSBzZWNvbmQgMSwgZXRjLiBOb3RlIHRoYXQgb25seSBUaVhtbEVsZW1lbnRzIGFyZSBpbmRleGVkOiBvdGhlciB0eXBlcyBhcmUgbm90IGNvdW50ZWQuIDwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhY2I1ZmU4Mzg4YTUyNjI4OWVhNjVlODE3YTUxZTA1ZTciPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxIYW5kbGU6OkVsZW1lbnQiIHJlZj0iYWNiNWZlODM4OGE1MjYyODllYTY1ZTgxN2E1MWUwNWU3IiBhcmdzPSIoKSBjb25zdCAiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4qIFRpWG1sSGFuZGxlOjpFbGVtZW50IDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj48L3RkPgotICAgICAgICAgIDx0ZD4mbmJzcDspJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQ+IGNvbnN0PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgotPGRsIGNsYXNzPSJkZXByZWNhdGVkIj48ZHQ+PGI+PGEgY2xhc3M9ImVsIiBocmVmPSJkZXByZWNhdGVkLmh0bWwjX2RlcHJlY2F0ZWQwMDAwMDIiPkRlcHJlY2F0ZWQ6PC9hPjwvYj48L2R0PjxkZD51c2UgVG9FbGVtZW50LiBSZXR1cm4gdGhlIGhhbmRsZSBhcyBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPi4gVGhpcyBtYXkgcmV0dXJuIG51bGwuIDwvZGQ+PC9kbD4KLQotPHA+UmVmZXJlbmNlcyA8YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGhfc291cmNlLmh0bWwjbDAxNjg4Ij5Ub0VsZW1lbnQoKTwvYT4uPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFiNDRiNzIzYThkYzlhZjcyODM4YTMwM2MwNzlkMDM3NiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEhhbmRsZTo6Tm9kZSIgcmVmPSJhYjQ0YjcyM2E4ZGM5YWY3MjgzOGEzMDNjMDc5ZDAzNzYiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogVGlYbWxIYW5kbGU6Ok5vZGUgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD4gY29uc3Q8Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+Ci08ZGwgY2xhc3M9ImRlcHJlY2F0ZWQiPjxkdD48Yj48YSBjbGFzcz0iZWwiIGhyZWY9ImRlcHJlY2F0ZWQuaHRtbCNfZGVwcmVjYXRlZDAwMDAwMSI+RGVwcmVjYXRlZDo8L2E+PC9iPjwvZHQ+PGRkPnVzZSBUb05vZGUuIFJldHVybiB0aGUgaGFuZGxlIGFzIGEgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPi4gVGhpcyBtYXkgcmV0dXJuIG51bGwuIDwvZGQ+PC9kbD4KLQotPHA+UmVmZXJlbmNlcyA8YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGhfc291cmNlLmh0bWwjbDAxNjg1Ij5Ub05vZGUoKTwvYT4uPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE5ZmM3MzljOGExOGQxNjAwMDZmODI1NzJmYzE0M2QxMyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEhhbmRsZTo6VGV4dCIgcmVmPSJhOWZjNzM5YzhhMThkMTYwMDA2ZjgyNTcyZmMxNDNkMTMiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPiogVGlYbWxIYW5kbGU6OlRleHQgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD4gY29uc3Q8Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+Ci08ZGwgY2xhc3M9ImRlcHJlY2F0ZWQiPjxkdD48Yj48YSBjbGFzcz0iZWwiIGhyZWY9ImRlcHJlY2F0ZWQuaHRtbCNfZGVwcmVjYXRlZDAwMDAwMyI+RGVwcmVjYXRlZDo8L2E+PC9iPjwvZHQ+PGRkPnVzZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhNGFjNTNhNjUyMjk2MjAzYTViNWUxMzg1NGQ5MjM1ODYiIHRpdGxlPSJSZXR1cm4gdGhlIGhhbmRsZSBhcyBhIFRpWG1sVGV4dC4iPlRvVGV4dCgpPC9hPiBSZXR1cm4gdGhlIGhhbmRsZSBhcyBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCIgdGl0bGU9IlhNTCB0ZXh0LiI+VGlYbWxUZXh0PC9hPi4gVGhpcyBtYXkgcmV0dXJuIG51bGwuIDwvZGQ+PC9kbD4KLQotPHA+UmVmZXJlbmNlcyA8YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGhfc291cmNlLmh0bWwjbDAxNjkxIj5Ub1RleHQoKTwvYT4uPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFiYzZlN2VkMzgzYTVmZTFlNTJiMGMwMDA0YjQ1N2I5ZSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEhhbmRsZTo6VG9FbGVtZW50IiByZWY9ImFiYzZlN2VkMzgzYTVmZTFlNTJiMGMwMDA0YjQ1N2I5ZSIgYXJncz0iKCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+KiBUaVhtbEhhbmRsZTo6VG9FbGVtZW50IDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj48L3RkPgotICAgICAgICAgIDx0ZD4mbmJzcDspJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQ+IGNvbnN0PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgotCi08cD5SZXR1cm4gdGhlIGhhbmRsZSBhcyBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPi4gPC9wPgotPHA+VGhpcyBtYXkgcmV0dXJuIG51bGwuIDwvcD4KLQotPHA+UmVmZXJlbmNlZCBieSA8YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGhfc291cmNlLmh0bWwjbDAxNzAzIj5FbGVtZW50KCk8L2E+LjwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhZjY3OGU1MDg4ZTgzYmU2N2JhZjc2ZjY5OTc1NmYyYzMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxIYW5kbGU6OlRvTm9kZSIgcmVmPSJhZjY3OGU1MDg4ZTgzYmU2N2JhZjc2ZjY5OTc1NmYyYzMiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogVGlYbWxIYW5kbGU6OlRvTm9kZSA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+PC90ZD4KLSAgICAgICAgICA8dGQ+Jm5ic3A7KSZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkPiBjb25zdDxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPgotICAgICAgICA8L3RyPgotICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KLQotPHA+UmV0dXJuIHRoZSBoYW5kbGUgYXMgYSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+LiA8L3A+Ci08cD5UaGlzIG1heSByZXR1cm4gbnVsbC4gPC9wPgotCi08cD5SZWZlcmVuY2VkIGJ5IDxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCNsMDE2OTkiPk5vZGUoKTwvYT4uPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE0YWM1M2E2NTIyOTYyMDNhNWI1ZTEzODU0ZDkyMzU4NiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbEhhbmRsZTo6VG9UZXh0IiByZWY9ImE0YWM1M2E2NTIyOTYyMDNhNWI1ZTEzODU0ZDkyMzU4NiIgYXJncz0iKCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+KiBUaVhtbEhhbmRsZTo6VG9UZXh0IDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj48L3RkPgotICAgICAgICAgIDx0ZD4mbmJzcDspJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQ+IGNvbnN0PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgotCi08cD5SZXR1cm4gdGhlIGhhbmRsZSBhcyBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCIgdGl0bGU9IlhNTCB0ZXh0LiI+VGlYbWxUZXh0PC9hPi4gPC9wPgotPHA+VGhpcyBtYXkgcmV0dXJuIG51bGwuIDwvcD4KLQotPHA+UmVmZXJlbmNlZCBieSA8YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGhfc291cmNlLmh0bWwjbDAxNzA3Ij5UZXh0KCk8L2E+LjwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMTM4MWMxNzUwN2ExMzA3NjdiMWUyM2FmYzkzYjM2NzQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxIYW5kbGU6OlRvVW5rbm93biIgcmVmPSJhMTM4MWMxNzUwN2ExMzA3NjdiMWUyM2FmYzkzYjM2NzQiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPiogVGlYbWxIYW5kbGU6OlRvVW5rbm93biA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+PC90ZD4KLSAgICAgICAgICA8dGQ+Jm5ic3A7KSZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkPiBjb25zdDxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPgotICAgICAgICA8L3RyPgotICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KLQotPHA+UmV0dXJuIHRoZSBoYW5kbGUgYXMgYSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiIHRpdGxlPSJBbnkgdGFnIHRoYXQgdGlueVhtbCBkb2VzbiYjMzk7dCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4iPlRpWG1sVW5rbm93bjwvYT4uIDwvcD4KLTxwPlRoaXMgbWF5IHJldHVybiBudWxsLiA8L3A+Ci0KLTxwPlJlZmVyZW5jZWQgYnkgPGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sI2wwMTcxMSI+VW5rbm93bigpPC9hPi48L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTQ5Njc1Yjc0MzU3YmEyYWFlMTI0NjU3YTlhMWVmNDY1Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sSGFuZGxlOjpVbmtub3duIiByZWY9ImE0OTY3NWI3NDM1N2JhMmFhZTEyNDY1N2E5YTFlZjQ2NSIgYXJncz0iKCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+KiBUaVhtbEhhbmRsZTo6VW5rbm93biA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+PC90ZD4KLSAgICAgICAgICA8dGQ+Jm5ic3A7KSZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkPiBjb25zdDxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPgotICAgICAgICA8L3RyPgotICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KLTxkbCBjbGFzcz0iZGVwcmVjYXRlZCI+PGR0PjxiPjxhIGNsYXNzPSJlbCIgaHJlZj0iZGVwcmVjYXRlZC5odG1sI19kZXByZWNhdGVkMDAwMDA0Ij5EZXByZWNhdGVkOjwvYT48L2I+PC9kdD48ZGQ+dXNlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExMzgxYzE3NTA3YTEzMDc2N2IxZTIzYWZjOTNiMzY3NCIgdGl0bGU9IlJldHVybiB0aGUgaGFuZGxlIGFzIGEgVGlYbWxVbmtub3duLiI+VG9Vbmtub3duKCk8L2E+IFJldHVybiB0aGUgaGFuZGxlIGFzIGEgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIiB0aXRsZT0iQW55IHRhZyB0aGF0IHRpbnlYbWwgZG9lc24mIzM5O3QgcmVjb2duaXplIGlzIHNhdmVkIGFzIGFuIHVua25vd24uIj5UaVhtbFVua25vd248L2E+LiBUaGlzIG1heSByZXR1cm4gbnVsbC4gPC9kZD48L2RsPgotCi08cD5SZWZlcmVuY2VzIDxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCNsMDE2OTQiPlRvVW5rbm93bigpPC9hPi48L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08aHIvPlRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGlzIGNsYXNzIHdhcyBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIGZpbGU6PHVsPgotPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPjwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKKzxwPgorUmV0dXJuIGEgaGFuZGxlIHRvIHRoZSAiaW5kZXgiIGNoaWxkIGVsZW1lbnQgd2l0aCB0aGUgZ2l2ZW4gbmFtZS4gCis8cD4KK1RoZSBmaXJzdCBjaGlsZCBlbGVtZW50IGlzIDAsIHRoZSBzZWNvbmQgMSwgZXRjLiBOb3RlIHRoYXQgb25seSBUaVhtbEVsZW1lbnRzIGFyZSBpbmRleGVkOiBvdGhlciB0eXBlcyBhcmUgbm90IGNvdW50ZWQuICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGhyPlRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGlzIGNsYXNzIHdhcyBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIGZpbGU6PHVsPgorPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aC1zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPjwvdWw+Cis8aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9jbGFzc1RpWG1sTm9kZS1tZW1iZXJzLmh0bWwgYi9kb2NzL2NsYXNzVGlYbWxOb2RlLW1lbWJlcnMuaHRtbAppbmRleCAzMTUxYjY5Li4yNWNiODAyIDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxOb2RlLW1lbWJlcnMuaHRtbAorKysgYi9kb2NzL2NsYXNzVGlYbWxOb2RlLW1lbWJlcnMuaHRtbApAQCAtMSwxMDcgKzEsODAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iPgorPGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1pc28tODg1OS0xIj4KIDx0aXRsZT5UaW55WG1sOiBNZW1iZXIgTGlzdDwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLTxoMT5UaVhtbE5vZGUgTWVtYmVyIExpc3Q8L2gxPlRoaXMgaXMgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgbWVtYmVycyBmb3IgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+LCBpbmNsdWRpbmcgYWxsIGluaGVyaXRlZCBtZW1iZXJzLjx0YWJsZT4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjYzBmODhiNzQ2MmM2Y2I3MzgwOWQ0MTBhNGY1YmI4NiI+QWNjZXB0PC9hPihUaVhtbFZpc2l0b3IgKnZpc2l0b3IpIGNvbnN0ID0wPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtwdXJlIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MDhlN2Y5NTNkZjYxZDRkMmQxMmY3MzE3MTU1MGE0YiI+Q2xlYXI8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDUwOGNjM2EyZDdhOThlOTZhNTRjYzA5YzM3YTc4YTQiPkNsb25lPC9hPigpIGNvbnN0ID0wPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtwdXJlIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiNTRiZmI5YjcwZmU2ZGQyNzZlN2IyNzljYWI3ZjAwMyI+Q29sdW1uPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNmJkOGMzMTVjMWFjYjA5ZTM0MTA3Yjg3MzY1MDU5NDgiPkVuY29kZVN0cmluZzwvYT4oY29uc3QgVElYTUxfU1RSSU5HICZhbXA7c3RyLCBUSVhNTF9TVFJJTkcgKm91dCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW3N0YXRpY108L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ0YzhlZWUyNmJiZTJkMWIyNzYyMDM4ZGY5ZGRlMmYwIj5GaXJzdENoaWxkPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMWYwNTgyOGQwMjMxNTA3MDZlZWIxNmQ2ZmIzZjYzNTUiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYmM4YmYzMmJlNjQxOWVjNDUzYTczMTg2OGRlMTk1NTQiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTA3ZjYyMDBhNTk1NmM3MjNjNWI1MmQ3MGYyOWM0NmY2Ij5GaXJzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMGQyNjY5Y2NiNWUyOWUwMmZjYjBlNDQwODY4NWVmNiI+Rmlyc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmNGZiNjUyZjZiZDc5YWUwZDVjZTdkMGY3ZDNjMGZiYSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWNjZGEyYzZiNDVjMjViYjVhNmY5YzM0MDdhNjQ0ZTYxIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3QgY2hhciAqX3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzI3YWQ0YmJkOTAwNzNjNWRmYzkzMWIwNzMxNGY1ZjciPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3ZjFkNzI5MTg4MDUzNGMxZTVjZGViMzkyZDhjMWY0NSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODBlMzk3ZmE5NzNjZjUzMjNlMzNiMDcxNTRiMDI0ZjMiPkdldERvY3VtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E2NTU5YTUzMGNhNjc2M2ZjMzAxYTE0ZDc3ZWQyOGMxNyI+R2V0VXNlckRhdGE8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWQwMTIwMjEwZTQ2ODBlZjIwODg2MDE3NTNjZTBlZGU0Ij5HZXRVc2VyRGF0YTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWQ5Yjc1ZTU0ZWMxOTMwMWM4YjRkNWZmNTgzZDBiM2Q1Ij5JbnNlcnRBZnRlckNoaWxkPC9hPihUaVhtbE5vZGUgKmFmdGVyVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMGMxNDZmYTJmZmYwMTU3YjY4MTU5NDEwMmY0OGNiYzciPkluc2VydEJlZm9yZUNoaWxkPC9hPihUaVhtbE5vZGUgKmJlZm9yZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWQ3ZDQ2MzBlMWEyYTkxNmVkZGExNmJlMjI0NDhhOGJhIj5JbnNlcnRFbmRDaGlsZDwvYT4oY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDRiMTQ3MjUzMWM2NDdhMjViMTg0MGE4N2FlNDI0MzgiPklzV2hpdGVTcGFjZUNvbmRlbnNlZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4NjIxMTk2YmEzNzA1ZmEyMjZiZWY0YTc2MWNjNTFiNiI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZGZhZWYzNWEwNzZiOTM0M2FkYzE0MjA3NTczNzZjMzkiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oY29uc3QgY2hhciAqdmFsdWUsIGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExY2JhYWY4ZTgyYzA5YWQ3NjNkNTI2MTZkNzU3MjRkZiI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNmU5YWQ1M2UyZjU0NDViMTRiZjMyNWM5MGFhODYyYyI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY0MzJkMmIyNDk1ZjZjYWY5Y2I0Mjc4ZGY3MDZhMDMxIj5MYXN0Q2hpbGQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWJhZDViZjEwNTljNDgxMjdiOTU4NzExZWY4OWU4ZTVkIj5MYXN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI1NmQwY2RiZmNmZWNjYWU4M2YzYTFjOTc0N2E4YjYzIj5MYXN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY5NzcyYzkyMDJmNzA1NTNmOTQwYjE1YzA2YjA3YmUzIj5MYXN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNWQyOTQ0MmFlNDZkZTZkMDE2ODQyOTE1NjE5N2JmYzYiPkxpbmtFbmRDaGlsZDwvYT4oVGlYbWxOb2RlICphZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExYjk0ZDJmN2ZhN2FiMjVhNWE4ZThkNDM0MGM0NDljOSI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE3NTdjMWY0ZDAxZThjOTU5NmZmZGJkNTYxYzc2YWVhIj5OZXh0U2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmODU0YmFlYmEzODRmNWZlOTg1OWY1YWVlMDNiNTQ4ZSI+TmV4dFNpYmxpbmc8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyZTYxYzBiODlhNzdlMzZhMGU4YzYwNDkwMDAzY2I0NiI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTczYWNmOTI5ZDQ5ZDEwYmQwZTVmYjNkMzFiMDM3MmQxIj5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTA3MWJhNzdmZDdhYjc5NDAyZmE4NGI3ZTliODYwN2IzIj5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTc1NzJkMGFmOWQxZTY5NmVlM2YwNWQ4YmI1ZWJiNDYzIj5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUwNjk1OGUzNDQwNjcyOWE0ZTRjNTMyNmVhMzlkMDgxIj5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZWVkMjFhZDMwNjMwZWY2ZTdmYWYwOTYxMjdlZGM5ZjMiPk5vQ2hpbGRyZW48L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4MzZlZGVkNDkyMGFiOWU5ZWYyODQ5NmY0OGNkOTVhMiI+Tm9kZVR5cGU8L2E+IGVudW0gbmFtZTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4NmNkNDljZmIxN2E4NDRjMDAxMGIzMTM2YWM5NjZjNyI+b3BlcmF0b3ImbHQ7Jmx0OzwvYT4oc3RkOjpvc3RyZWFtICZhbXA7b3V0LCBjb25zdCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTJlZjE3ZTcwODBkZjI0OTBjZjg3YmRlMzgwNjg1YWIiPm9wZXJhdG9yJmx0OyZsdDs8L2E+KHN0ZDo6c3RyaW5nICZhbXA7b3V0LCBjb25zdCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYjU3YmQ0MjY1NjNjOTI2ODQ0ZjY1YTc4NDEyZTE4YjkiPm9wZXJhdG9yJmd0OyZndDs8L2E+KHN0ZDo6aXN0cmVhbSAmYW1wO2luLCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYjY0MzA0MzEzMmZmZDc5NGY4NjAyNjg1ZDM0YTk4MmUiPlBhcmVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYzJjZDg5Mjc2ODcyNjI3MGU1MTFiMmFiMzJkZTRkMTAiPlByZXZpb3VzU2libGluZzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTViZGQ0OTMyN2VlYzFlNjA5YjdkMjJhZjcwNmI4MzE2Ij5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY1ODI3NmY1N2QzNWQ1ZDQyNTZkMWRjMWEyYzM5OGFiIj5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWNjOGEwNDM0YzdmNDAxZDRhM2I2ZGVlNzdjMWE1OTEyIj5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGRlNTZiM2YyZWYxNGM2NTA5MWEzYjkxNjQzN2I1MTIiPlByaW50PC9hPihGSUxFICpjZmlsZSwgaW50IGRlcHRoKSBjb25zdCA9MDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbcHVyZSB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZTE5ZDg1MTBlZmM5MDU5NjU1MmY0ZmVlYWM5YThmYmYiPlJlbW92ZUNoaWxkPC9hPihUaVhtbE5vZGUgKnJlbW92ZVRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTBjNDllNzM5YTE3Yjk5MzgwNTBjMjJjZDg5NjE3ZmJkIj5SZXBsYWNlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqcmVwbGFjZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO3dpdGhUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwMjRiY2ViMDcwMTg4ZGY5MmMyYThkODg1MmRkMDg1MyI+Um93PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGY3OTllYzY0NWJmYjhkOGE5NjllODM0NzhmMzc5YzEiPlNldENvbmRlbnNlV2hpdGVTcGFjZTwvYT4oYm9vbCBjb25kZW5zZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgc3RhdGljXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYzZiM2UwZjc5MDkzMGQ0OTcwZWMzMDc2NGU5MzdiNWQiPlNldFVzZXJEYXRhPC9hPih2b2lkICp1c2VyKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMmEzODMyOWNhNWQzZjI4Zjk4Y2U5MzJiODI5OWFlOTAiPlNldFZhbHVlPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNTk4ZDVmNDQ4MDQyYzFhYmJlYWU0NTAzZGQ0NWZmMiI+U2V0VmFsdWU8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYTBhNTA4NmY5ZWFlZTkxMGJiZmRjN2Y5NzVlMjY1NzQiPlRvQ29tbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM4M2UwNmEwNzg3ZjcwNjM5NTM5MzQ4Njc5OTBmODQ5Ij5Ub0NvbW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTlmNDNlNjk4NGZjN2Q0YWZkNmViMzI3MTRjNmI3YjcyIj5Ub0RlY2xhcmF0aW9uPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDAyNzEzNmNhODIwZmY0YTYzNmI2MDcyMzFiNmE2ZGYiPlRvRGVjbGFyYXRpb248L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYThhNGNkYTRiMTVjMjlmNjRjZmY0MTkzMDlhZWJlZDA4Ij5Ub0RvY3VtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNmE0YzhhYzI4ZWU3YTc0NWQwNTlkYjY2OTFlMDNiYWUiPlRvRG9jdW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcyYWJlZDk2ZGM5NjY3YWI5ZTBhMmEyNzUzMDFiYjFjIj5Ub0VsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FhNjVkMDAwMjIzMTg3ZDIyYTRkY2ViZDc0NzllOWViYyI+VG9FbGVtZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E5NWE0NmE1MmM1MjU5OTJkNmI0ZWUwOGJlYjE0Y2Q2OSI+VG9UZXh0PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhM2RkZmJjYWM3OGZiZWEwNDFmYWQ1N2U1YzZkNjBhMDMiPlRvVGV4dDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZmQ3MjA1Y2YzMWQ3YTM3NjkyOWY4YTM2OTMwNjI3YTIiPlRvVW5rbm93bjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTA2ZGU1YWY4NTI2NjhjN2U0YWYwZDA5YzIwNWYwYjBkIj5Ub1Vua25vd248L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU3Yjk5ZDVjOTdkNjdhNDJiOTc1MmY1MjEwYTFiYTVlIj5UeXBlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjI0MmMwMTU5MDE5MWY2NDQ1NjlmYTg5YTA4MGQ5N2MiPnVzZXJEYXRhPC9hPjwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbcHJvdGVjdGVkXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzc5NDNlYjkwZDEyYzI4OTJiMTMzN2E5ZjU5MThiNDEiPlZhbHVlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNmQ5ZTUwNTYxOWQzOWJmNTBiZmQ5NjA5YzkxNjllYTUiPlZhbHVlU3RyPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci08L3RhYmxlPjwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Cis8bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+Cis8L2hlYWQ+PGJvZHk+Cis8IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNC40IC0tPgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJpbmRleC5odG1sIj5NYWluJm5ic3A7UGFnZTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJoaWVyYXJjaHkuaHRtbCI+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPkNsYXNzJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmaWxlcy5odG1sIj5GaWxlJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+Q2xhc3MmbmJzcDtNZW1iZXJzPC9hPjwvZGl2PgorPGgxPlRpWG1sTm9kZSBNZW1iZXIgTGlzdDwvaDE+VGhpcyBpcyB0aGUgY29tcGxldGUgbGlzdCBvZiBtZW1iZXJzIGZvciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4sIGluY2x1ZGluZyBhbGwgaW5oZXJpdGVkIG1lbWJlcnMuPHA+PHRhYmxlPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUiPkNsZWFyPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcyIj5DbG9uZTwvYT4oKSBjb25zdCA9MDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbcHVyZSB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNCI+Q29sdW1uPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhOCI+Rmlyc3RDaGlsZDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEwIj5GaXJzdENoaWxkPC9hPihjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTExIj5GaXJzdENoaWxkPC9hPihjb25zdCBjaGFyICp2YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTYiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE3Ij5GaXJzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUwIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTIiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU0Ij5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTUiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU3Ij5HZXREb2N1bWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjkiPkluc2VydEFmdGVyQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqYWZ0ZXJUaGlzLCBjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyOCI+SW5zZXJ0QmVmb3JlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqYmVmb3JlVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjYiPkluc2VydEVuZENoaWxkPC9hPihjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2UxIj5Jc1doaXRlU3BhY2VDb25kZW5zZWQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgc3RhdGljXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjAiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTIyIj5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IGNoYXIgKnZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjQiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUsIGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjUiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUsIFRpWG1sTm9kZSAqcHJldmlvdXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMyI+TGFzdENoaWxkPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNSI+TGFzdENoaWxkPC9hPihjb25zdCBjaGFyICp2YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTgiPkxhc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTkiPkxhc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNyI+TGlua0VuZENoaWxkPC9hPihUaVhtbE5vZGUgKmFkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM4Ij5OZXh0U2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzkiPk5leHRTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQwIj5OZXh0U2libGluZzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQyIj5OZXh0U2libGluZzwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDQiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDYiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDgiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDkiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1OSI+Tm9DaGlsZHJlbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjdzciPk5vZGVUeXBlPC9hPiBlbnVtIG5hbWU8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNuMyI+b3BlcmF0b3ImbHQ7Jmx0OzwvYT4oc3RkOjpvc3RyZWFtICZhbXA7b3V0LCBjb25zdCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNuNCI+b3BlcmF0b3ImbHQ7Jmx0OzwvYT4oc3RkOjpzdHJpbmcgJmFtcDtvdXQsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI24yIj5vcGVyYXRvciZndDsmZ3Q7PC9hPihzdGQ6OmlzdHJlYW0gJmFtcDtpbiwgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYiPlBhcmVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzIiPlByZXZpb3VzU2libGluZzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM0Ij5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM2Ij5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM3Ij5QcmV2aW91c1NpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMiI+UHJpbnQ8L2E+KEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0ID0wPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtwdXJlIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMSI+UmVtb3ZlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqcmVtb3ZlVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzAiPlJlcGxhY2VDaGlsZDwvYT4oVGlYbWxOb2RlICpyZXBsYWNlVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7d2l0aFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTMiPlJvdzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjZTAiPlNldENvbmRlbnNlV2hpdGVTcGFjZTwvYT4oYm9vbCBjb25kZW5zZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgc3RhdGljXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMyI+U2V0VmFsdWU8L2E+KGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQiPlNldFZhbHVlPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYyIj5Ub0NvbW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2OCI+VG9Db21tZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NSI+VG9EZWNsYXJhdGlvbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcxIj5Ub0RlY2xhcmF0aW9uPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MCI+VG9Eb2N1bWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY2Ij5Ub0RvY3VtZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MSI+VG9FbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjciPlRvRWxlbWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjQiPlRvVGV4dDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcwIj5Ub1RleHQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYzIj5Ub1Vua25vd248L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2OSI+VG9Vbmtub3duPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NiI+VHlwZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjcDEiPnVzZXJEYXRhPC9hPjwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbcHJvdGVjdGVkXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMSI+VmFsdWU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyIj5WYWx1ZVN0cjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorPC90YWJsZT48aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9jbGFzc1RpWG1sTm9kZS5odG1sIGIvZG9jcy9jbGFzc1RpWG1sTm9kZS5odG1sCmluZGV4IDViYTRiY2YuLmRhYjk5NTAgMTAwNjQ0Ci0tLSBhL2RvY3MvY2xhc3NUaVhtbE5vZGUuaHRtbAorKysgYi9kb2NzL2NsYXNzVGlYbWxOb2RlLmh0bWwKQEAgLTEsNzE4ICsxLDg0NSBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PWlzby04ODU5LTEiPgogPHRpdGxlPlRpbnlYbWw6IFRpWG1sTm9kZSBDbGFzcyBSZWZlcmVuY2U8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci08aDE+VGlYbWxOb2RlIENsYXNzIFJlZmVyZW5jZTwvaDE+PCEtLSBkb3h5dGFnOiBjbGFzcz0iVGlYbWxOb2RlIiAtLT48IS0tIGRveHl0YWc6IGluaGVyaXRzPSJUaVhtbEJhc2UiIC0tPgotPHA+VGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiAgCi08YSBocmVmPSIjX2RldGFpbHMiPk1vcmUuLi48L2E+PC9wPgotCi08cD48Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT48L3A+Ci08ZGl2IGNsYXNzPSJkeW5oZWFkZXIiPgotSW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxOb2RlOjwvZGl2PgotPGRpdiBjbGFzcz0iZHluc2VjdGlvbiI+Ci0gPGRpdiBjbGFzcz0iY2VudGVyIj4KLSAgPGltZyBzcmM9ImNsYXNzVGlYbWxOb2RlLnBuZyIgdXNlbWFwPSIjVGlYbWxOb2RlX21hcCIgYWx0PSIiLz4KLSAgPG1hcCBpZD0iVGlYbWxOb2RlX21hcCIgbmFtZT0iVGlYbWxOb2RlX21hcCI+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIiBhbHQ9IlRpWG1sQmFzZSIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMjk1LDAsNDAzLDI0Ii8+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIiBhbHQ9IlRpWG1sQ29tbWVudCIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMCwxMTIsMTA4LDEzNiIvPgotPGFyZWEgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiIGFsdD0iVGlYbWxEZWNsYXJhdGlvbiIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMTE4LDExMiwyMjYsMTM2Ii8+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgYWx0PSJUaVhtbERvY3VtZW50IiBzaGFwZT0icmVjdCIgY29vcmRzPSIyMzYsMTEyLDM0NCwxMzYiLz4KLTxhcmVhIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIGFsdD0iVGlYbWxFbGVtZW50IiBzaGFwZT0icmVjdCIgY29vcmRzPSIzNTQsMTEyLDQ2MiwxMzYiLz4KLTxhcmVhIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIGFsdD0iVGlYbWxUZXh0IiBzaGFwZT0icmVjdCIgY29vcmRzPSI0NzIsMTEyLDU4MCwxMzYiLz4KLTxhcmVhIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiIGFsdD0iVGlYbWxVbmtub3duIiBzaGFwZT0icmVjdCIgY29vcmRzPSI1OTAsMTEyLDY5OCwxMzYiLz4KKzxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIj4KKzwvaGVhZD48Ym9keT4KKzwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS40LjQgLS0+Cis8ZGl2IGNsYXNzPSJxaW5kZXgiPjxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImluZGV4Lmh0bWwiPk1haW4mbmJzcDtQYWdlPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImhpZXJhcmNoeS5odG1sIj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+Q2xhc3MmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZpbGVzLmh0bWwiPkZpbGUmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj5DbGFzcyZuYnNwO01lbWJlcnM8L2E+PC9kaXY+Cis8aDE+VGlYbWxOb2RlIENsYXNzIFJlZmVyZW5jZTwvaDE+PCEtLSBkb3h5dGFnOiBjbGFzcz0iVGlYbWxOb2RlIiAtLT48IS0tIGRveHl0YWc6IGluaGVyaXRzPSJUaVhtbEJhc2UiIC0tPlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4gIAorPGEgaHJlZj0iI19kZXRhaWxzIj5Nb3JlLi4uPC9hPgorPHA+Cis8Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoLXNvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT4KKzxwPgorPHA+SW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxOb2RlOgorPHA+PGNlbnRlcj48aW1nIHNyYz0iY2xhc3NUaVhtbE5vZGUucG5nIiB1c2VtYXA9IiNUaVhtbE5vZGVfbWFwIiBib3JkZXI9IjAiIGFsdD0iIj48L2NlbnRlcj4KKzxtYXAgbmFtZT0iVGlYbWxOb2RlX21hcCI+Cis8YXJlYSBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIiBhbHQ9IlRpWG1sQmFzZSIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMjk1LDAsNDAzLDI0Ij4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiIGFsdD0iVGlYbWxDb21tZW50IiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDExMiwxMDgsMTM2Ij4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIiBhbHQ9IlRpWG1sRGVjbGFyYXRpb24iIHNoYXBlPSJyZWN0IiBjb29yZHM9IjExOCwxMTIsMjI2LDEzNiI+Cis8YXJlYSBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgYWx0PSJUaVhtbERvY3VtZW50IiBzaGFwZT0icmVjdCIgY29vcmRzPSIyMzYsMTEyLDM0NCwxMzYiPgorPGFyZWEgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgYWx0PSJUaVhtbEVsZW1lbnQiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjM1NCwxMTIsNDYyLDEzNiI+Cis8YXJlYSBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIiBhbHQ9IlRpWG1sVGV4dCIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iNDcyLDExMiw1ODAsMTM2Ij4KKzxhcmVhIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiIGFsdD0iVGlYbWxVbmtub3duIiBzaGFwZT0icmVjdCIgY29vcmRzPSI1OTAsMTEyLDY5OCwxMzYiPgogPC9tYXA+Ci0gPC9kaXY+Ci08L2Rpdj4KKzxhIGhyZWY9ImNsYXNzVGlYbWxOb2RlLW1lbWJlcnMuaHRtbCI+TGlzdCBvZiBhbGwgbWVtYmVycy48L2E+PHRhYmxlIGJvcmRlcj0iMCIgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIj4KKzx0cj48dGQ+PC90ZD48L3RyPgorPHRyPjx0ZCBjb2xzcGFuPSIyIj48YnI+PGgyPlB1YmxpYyBUeXBlczwvaDI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5lbnVtICZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjdzciPk5vZGVUeXBlPC9hPiA8L3RkPjwvdHI+CiAKLTxwPjxhIGhyZWY9ImNsYXNzVGlYbWxOb2RlLW1lbWJlcnMuaHRtbCI+TGlzdCBvZiBhbGwgbWVtYmVycy48L2E+PC9wPgotPHRhYmxlIGJvcmRlcj0iMCIgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIj4KLTx0cj48dGQgY29sc3Bhbj0iMiI+PGgyPlB1YmxpYyBUeXBlczwvaDI+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmVudW0gJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODM2ZWRlZDQ5MjBhYjllOWVmMjg0OTZmNDhjZDk1YTIiPk5vZGVUeXBlPC9hPiA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij48cD5UaGUgdHlwZXMgb2YgWE1MIG5vZGVzIHN1cHBvcnRlZCBieSBUaW55WG1sLiA8L3A+Ci0gPGEgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODM2ZWRlZDQ5MjBhYjllOWVmMjg0OTZmNDhjZDk1YTIiPk1vcmUuLi48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNvbHNwYW49IjIiPjxoMj5QdWJsaWMgTWVtYmVyIEZ1bmN0aW9uczwvaDI+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTc3OTQzZWI5MGQxMmMyODkyYjEzMzdhOWY1OTE4YjQxIj5WYWx1ZTwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+VGhlIG1lYW5pbmcgb2YgJ3ZhbHVlJyBjaGFuZ2VzIGZvciB0aGUgc3BlY2lmaWMgdHlwZSBvZiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+LiAgPGEgaHJlZj0iI2E3Nzk0M2ViOTBkMTJjMjg5MmIxMzM3YTlmNTkxOGI0MSI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNmQ5ZTUwNTYxOWQzOWJmNTBiZmQ5NjA5YzkxNjllYTUiPlZhbHVlU3RyPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm4gPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3Nzk0M2ViOTBkMTJjMjg5MmIxMzM3YTlmNTkxOGI0MSIgdGl0bGU9IlRoZSBtZWFuaW5nIG9mICYjMzk7dmFsdWUmIzM5OyBjaGFuZ2VzIGZvciB0aGUgc3BlY2lmaWMgdHlwZSBvZiBUaVhtbE5vZGUuIj5WYWx1ZSgpPC9hPiBhcyBhIHN0ZDo6c3RyaW5nLiAgPGEgaHJlZj0iI2E2ZDllNTA1NjE5ZDM5YmY1MGJmZDk2MDljOTE2OWVhNSI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyYTM4MzI5Y2E1ZDNmMjhmOThjZTkzMmI4Mjk5YWU5MCI+U2V0VmFsdWU8L2E+IChjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2hhbmdlcyB0aGUgdmFsdWUgb2YgdGhlIG5vZGUuICA8YSBocmVmPSIjYTJhMzgzMjljYTVkM2YyOGY5OGNlOTMyYjgyOTlhZTkwIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEyNTk4ZDVmNDQ4MDQyYzFhYmJlYWU0NTAzZGQ0NWZmMiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlNldFZhbHVlIiByZWY9ImEyNTk4ZDVmNDQ4MDQyYzFhYmJlYWU0NTAzZGQ0NWZmMiIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSIgLS0+Ci12b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjU5OGQ1ZjQ0ODA0MmMxYWJiZWFlNDUwM2RkNDVmZjIiPlNldFZhbHVlPC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U1RMIHN0ZDo6c3RyaW5nIGZvcm0uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNzA4ZTdmOTUzZGY2MWQ0ZDJkMTJmNzMxNzE1NTBhNGIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpDbGVhciIgcmVmPSJhNzA4ZTdmOTUzZGY2MWQ0ZDJkMTJmNzMxNzE1NTBhNGIiIGFyZ3M9IigpIiAtLT4KLXZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MDhlN2Y5NTNkZjYxZDRkMmQxMmY3MzE3MTU1MGE0YiI+Q2xlYXI8L2E+ICgpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+RGVsZXRlIGFsbCB0aGUgY2hpbGRyZW4gb2YgdGhpcyBub2RlLiBEb2VzIG5vdCBhZmZlY3QgJ3RoaXMnLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWI2NDMwNDMxMzJmZmQ3OTRmODYwMjY4NWQzNGE5ODJlIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6UGFyZW50IiByZWY9ImFiNjQzMDQzMTMyZmZkNzk0Zjg2MDI2ODVkMzRhOTgyZSIgYXJncz0iKCkiIC0tPgotPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiNjQzMDQzMTMyZmZkNzk0Zjg2MDI2ODVkMzRhOTgyZSI+UGFyZW50PC9hPiAoKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPk9uZSBzdGVwIHVwIHRoZSBET00uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNDRjOGVlZTI2YmJlMmQxYjI3NjIwMzhkZjlkZGUyZjAiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpGaXJzdENoaWxkIiByZWY9ImE0NGM4ZWVlMjZiYmUyZDFiMjc2MjAzOGRmOWRkZTJmMCIgYXJncz0iKCkgY29uc3QgIiAtLT4KLWNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDRjOGVlZTI2YmJlMmQxYjI3NjIwMzhkZjlkZGUyZjAiPkZpcnN0Q2hpbGQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlRoZSBmaXJzdCBjaGlsZCBvZiB0aGlzIG5vZGUuIFdpbGwgYmUgbnVsbCBpZiB0aGVyZSBhcmUgbm8gY2hpbGRyZW4uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMWYwNTgyOGQwMjMxNTA3MDZlZWIxNmQ2ZmIzZjYzNTUiPkZpcnN0Q2hpbGQ8L2E+IChjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+VGhlIGZpcnN0IGNoaWxkIG9mIHRoaXMgbm9kZSB3aXRoIHRoZSBtYXRjaGluZyAndmFsdWUnLiAgPGEgaHJlZj0iI2ExZjA1ODI4ZDAyMzE1MDcwNmVlYjE2ZDZmYjNmNjM1NSI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhYmM4YmYzMmJlNjQxOWVjNDUzYTczMTg2OGRlMTk1NTQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpGaXJzdENoaWxkIiByZWY9ImFiYzhiZjMyYmU2NDE5ZWM0NTNhNzMxODY4ZGUxOTU1NCIgYXJncz0iKGNvbnN0IGNoYXIgKl92YWx1ZSkiIC0tPgotPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiYzhiZjMyYmU2NDE5ZWM0NTNhNzMxODY4ZGUxOTU1NCI+Rmlyc3RDaGlsZDwvYT4gKGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5UaGUgZmlyc3QgY2hpbGQgb2YgdGhpcyBub2RlIHdpdGggdGhlIG1hdGNoaW5nICd2YWx1ZScuIFdpbGwgYmUgbnVsbCBpZiBub25lIGZvdW5kLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTY0MzJkMmIyNDk1ZjZjYWY5Y2I0Mjc4ZGY3MDZhMDMxIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6TGFzdENoaWxkIiByZWY9ImE2NDMyZDJiMjQ5NWY2Y2FmOWNiNDI3OGRmNzA2YTAzMSIgYXJncz0iKCkiIC0tPgotPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NDMyZDJiMjQ5NWY2Y2FmOWNiNDI3OGRmNzA2YTAzMSI+TGFzdENoaWxkPC9hPiAoKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlRoZSBsYXN0IGNoaWxkIG9mIHRoaXMgbm9kZS4gV2lsbCBiZSBudWxsIGlmIHRoZXJlIGFyZSBubyBjaGlsZHJlbi4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFiYWQ1YmYxMDU5YzQ4MTI3Yjk1ODcxMWVmODllOGU1ZCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Okxhc3RDaGlsZCIgcmVmPSJhYmFkNWJmMTA1OWM0ODEyN2I5NTg3MTFlZjg5ZThlNWQiIGFyZ3M9Iihjb25zdCBjaGFyICpfdmFsdWUpIiAtLT4KLTxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYmFkNWJmMTA1OWM0ODEyN2I5NTg3MTFlZjg5ZThlNWQiPkxhc3RDaGlsZDwvYT4gKGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5UaGUgbGFzdCBjaGlsZCBvZiB0aGlzIG5vZGUgbWF0Y2hpbmcgJ3ZhbHVlJy4gV2lsbCBiZSBudWxsIGlmIHRoZXJlIGFyZSBubyBjaGlsZHJlbi4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEwN2Y2MjAwYTU5NTZjNzIzYzViNTJkNzBmMjljNDZmNiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OkZpcnN0Q2hpbGQiIHJlZj0iYTA3ZjYyMDBhNTk1NmM3MjNjNWI1MmQ3MGYyOWM0NmY2IiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0ICIgLS0+Ci1jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTA3ZjYyMDBhNTk1NmM3MjNjNWI1MmQ3MGYyOWM0NmY2Ij5GaXJzdENoaWxkPC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTEwZDI2NjljY2I1ZTI5ZTAyZmNiMGU0NDA4Njg1ZWY2Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6Rmlyc3RDaGlsZCIgcmVmPSJhMTBkMjY2OWNjYjVlMjllMDJmY2IwZTQ0MDg2ODVlZjYiIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkiIC0tPgotPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMGQyNjY5Y2NiNWUyOWUwMmZjYjBlNDQwODY4NWVmNiI+Rmlyc3RDaGlsZDwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTI1NmQwY2RiZmNmZWNjYWU4M2YzYTFjOTc0N2E4YjYzIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6TGFzdENoaWxkIiByZWY9ImEyNTZkMGNkYmZjZmVjY2FlODNmM2ExYzk3NDdhOGI2MyIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCAiIC0tPgotY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNTZkMGNkYmZjZmVjY2FlODNmM2ExYzk3NDdhOGI2MyI+TGFzdENoaWxkPC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTY5NzcyYzkyMDJmNzA1NTNmOTQwYjE1YzA2YjA3YmUzIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6TGFzdENoaWxkIiByZWY9ImE2OTc3MmM5MjAyZjcwNTUzZjk0MGIxNWMwNmIwN2JlMyIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSIgLS0+Ci08YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY5NzcyYzkyMDJmNzA1NTNmOTQwYjE1YzA2YjA3YmUzIj5MYXN0Q2hpbGQ8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4NjIxMTk2YmEzNzA1ZmEyMjZiZWY0YTc2MWNjNTFiNiI+SXRlcmF0ZUNoaWxkcmVuPC9hPiAoY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICpwcmV2aW91cykgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QW4gYWx0ZXJuYXRlIHdheSB0byB3YWxrIHRoZSBjaGlsZHJlbiBvZiBhIG5vZGUuICA8YSBocmVmPSIjYTg2MjExOTZiYTM3MDVmYTIyNmJlZjRhNzYxY2M1MWI2Ij48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFkZmFlZjM1YTA3NmI5MzQzYWRjMTQyMDc1NzM3NmMzOSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Okl0ZXJhdGVDaGlsZHJlbiIgcmVmPSJhZGZhZWYzNWEwNzZiOTM0M2FkYzE0MjA3NTczNzZjMzkiIGFyZ3M9Iihjb25zdCBjaGFyICp2YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgIiAtLT4KLWNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZGZhZWYzNWEwNzZiOTM0M2FkYzE0MjA3NTczNzZjMzkiPkl0ZXJhdGVDaGlsZHJlbjwvYT4gKGNvbnN0IGNoYXIgKnZhbHVlLCBjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKnByZXZpb3VzKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5UaGlzIGZsYXZvciBvZiBJdGVyYXRlQ2hpbGRyZW4gc2VhcmNoZXMgZm9yIGNoaWxkcmVuIHdpdGggYSBwYXJ0aWN1bGFyICd2YWx1ZScuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMWNiYWFmOGU4MmMwOWFkNzYzZDUyNjE2ZDc1NzI0ZGYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpJdGVyYXRlQ2hpbGRyZW4iIHJlZj0iYTFjYmFhZjhlODJjMDlhZDc2M2Q1MjYxNmQ3NTcyNGRmIiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUsIGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0ICIgLS0+Ci1jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTFjYmFhZjhlODJjMDlhZDc2M2Q1MjYxNmQ3NTcyNGRmIj5JdGVyYXRlQ2hpbGRyZW48L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICpwcmV2aW91cykgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U1RMIHN0ZDo6c3RyaW5nIGZvcm0uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMTZlOWFkNTNlMmY1NDQ1YjE0YmYzMjVjOTBhYTg2MmMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpJdGVyYXRlQ2hpbGRyZW4iIHJlZj0iYTE2ZTlhZDUzZTJmNTQ0NWIxNGJmMzI1YzkwYWE4NjJjIiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUsIGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIiAtLT4KLTxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTZlOWFkNTNlMmY1NDQ1YjE0YmYzMjVjOTBhYTg2MmMiPkl0ZXJhdGVDaGlsZHJlbjwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKnByZXZpb3VzKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWQ3ZDQ2MzBlMWEyYTkxNmVkZGExNmJlMjI0NDhhOGJhIj5JbnNlcnRFbmRDaGlsZDwvYT4gKGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAmYW1wO2FkZFRoaXMpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QWRkIGEgbmV3IG5vZGUgcmVsYXRlZCB0byB0aGlzLiAgPGEgaHJlZj0iI2FkN2Q0NjMwZTFhMmE5MTZlZGRhMTZiZTIyNDQ4YThiYSI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNWQyOTQ0MmFlNDZkZTZkMDE2ODQyOTE1NjE5N2JmYzYiPkxpbmtFbmRDaGlsZDwvYT4gKDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqYWRkVGhpcyk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5BZGQgYSBuZXcgbm9kZSByZWxhdGVkIHRvIHRoaXMuICA8YSBocmVmPSIjYTVkMjk0NDJhZTQ2ZGU2ZDAxNjg0MjkxNTYxOTdiZmM2Ij48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwYzE0NmZhMmZmZjAxNTdiNjgxNTk0MTAyZjQ4Y2JjNyI+SW5zZXJ0QmVmb3JlQ2hpbGQ8L2E+ICg8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKmJlZm9yZVRoaXMsIGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAmYW1wO2FkZFRoaXMpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QWRkIGEgbmV3IG5vZGUgcmVsYXRlZCB0byB0aGlzLiAgPGEgaHJlZj0iI2EwYzE0NmZhMmZmZjAxNTdiNjgxNTk0MTAyZjQ4Y2JjNyI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZDliNzVlNTRlYzE5MzAxYzhiNGQ1ZmY1ODNkMGIzZDUiPkluc2VydEFmdGVyQ2hpbGQ8L2E+ICg8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKmFmdGVyVGhpcywgY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICZhbXA7YWRkVGhpcyk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5BZGQgYSBuZXcgbm9kZSByZWxhdGVkIHRvIHRoaXMuICA8YSBocmVmPSIjYWQ5Yjc1ZTU0ZWMxOTMwMWM4YjRkNWZmNTgzZDBiM2Q1Ij48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwYzQ5ZTczOWExN2I5OTM4MDUwYzIyY2Q4OTYxN2ZiZCI+UmVwbGFjZUNoaWxkPC9hPiAoPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICpyZXBsYWNlVGhpcywgY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICZhbXA7d2l0aFRoaXMpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmVwbGFjZSBhIGNoaWxkIG9mIHRoaXMgbm9kZS4gIDxhIGhyZWY9IiNhMGM0OWU3MzlhMTdiOTkzODA1MGMyMmNkODk2MTdmYmQiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWUxOWQ4NTEwZWZjOTA1OTY1NTJmNGZlZWFjOWE4ZmJmIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6UmVtb3ZlQ2hpbGQiIHJlZj0iYWUxOWQ4NTEwZWZjOTA1OTY1NTJmNGZlZWFjOWE4ZmJmIiBhcmdzPSIoVGlYbWxOb2RlICpyZW1vdmVUaGlzKSIgLS0+Ci1ib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZTE5ZDg1MTBlZmM5MDU5NjU1MmY0ZmVlYWM5YThmYmYiPlJlbW92ZUNoaWxkPC9hPiAoPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICpyZW1vdmVUaGlzKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkRlbGV0ZSBhIGNoaWxkIG9mIHRoaXMgbm9kZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFjMmNkODkyNzY4NzI2MjcwZTUxMWIyYWIzMmRlNGQxMCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlByZXZpb3VzU2libGluZyIgcmVmPSJhYzJjZDg5Mjc2ODcyNjI3MGU1MTFiMmFiMzJkZTRkMTAiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci1jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWMyY2Q4OTI3Njg3MjYyNzBlNTExYjJhYjMyZGU0ZDEwIj5QcmV2aW91c1NpYmxpbmc8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPk5hdmlnYXRlIHRvIGEgc2libGluZyBub2RlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTViZGQ0OTMyN2VlYzFlNjA5YjdkMjJhZjcwNmI4MzE2Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6UHJldmlvdXNTaWJsaW5nIiByZWY9ImE1YmRkNDkzMjdlZWMxZTYwOWI3ZDIyYWY3MDZiODMxNiIgYXJncz0iKGNvbnN0IGNoYXIgKikgY29uc3QgIiAtLT4KLWNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNWJkZDQ5MzI3ZWVjMWU2MDliN2QyMmFmNzA2YjgzMTYiPlByZXZpb3VzU2libGluZzwvYT4gKGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+TmF2aWdhdGUgdG8gYSBzaWJsaW5nIG5vZGUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNjU4Mjc2ZjU3ZDM1ZDVkNDI1NmQxZGMxYTJjMzk4YWIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpQcmV2aW91c1NpYmxpbmciIHJlZj0iYTY1ODI3NmY1N2QzNWQ1ZDQyNTZkMWRjMWEyYzM5OGFiIiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0ICIgLS0+Ci1jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY1ODI3NmY1N2QzNWQ1ZDQyNTZkMWRjMWEyYzM5OGFiIj5QcmV2aW91c1NpYmxpbmc8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U1RMIHN0ZDo6c3RyaW5nIGZvcm0uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhY2M4YTA0MzRjN2Y0MDFkNGEzYjZkZWU3N2MxYTU5MTIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpQcmV2aW91c1NpYmxpbmciIHJlZj0iYWNjOGEwNDM0YzdmNDAxZDRhM2I2ZGVlNzdjMWE1OTEyIiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIiAtLT4KLTxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhY2M4YTA0MzRjN2Y0MDFkNGEzYjZkZWU3N2MxYTU5MTIiPlByZXZpb3VzU2libGluZzwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTFiOTRkMmY3ZmE3YWIyNWE1YThlOGQ0MzQwYzQ0OWM5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6TmV4dFNpYmxpbmciIHJlZj0iYTFiOTRkMmY3ZmE3YWIyNWE1YThlOGQ0MzQwYzQ0OWM5IiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0ICIgLS0+Ci1jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTFiOTRkMmY3ZmE3YWIyNWE1YThlOGQ0MzQwYzQ0OWM5Ij5OZXh0U2libGluZzwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImExNzU3YzFmNGQwMWU4Yzk1OTZmZmRiZDU2MWM3NmFlYSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Ok5leHRTaWJsaW5nIiByZWY9ImExNzU3YzFmNGQwMWU4Yzk1OTZmZmRiZDU2MWM3NmFlYSIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSIgLS0+Ci08YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE3NTdjMWY0ZDAxZThjOTU5NmZmZGJkNTYxYzc2YWVhIj5OZXh0U2libGluZzwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWY4NTRiYWViYTM4NGY1ZmU5ODU5ZjVhZWUwM2I1NDhlIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6TmV4dFNpYmxpbmciIHJlZj0iYWY4NTRiYWViYTM4NGY1ZmU5ODU5ZjVhZWUwM2I1NDhlIiBhcmdzPSIoKSBjb25zdCAiIC0tPgotY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmODU0YmFlYmEzODRmNWZlOTg1OWY1YWVlMDNiNTQ4ZSI+TmV4dFNpYmxpbmc8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPk5hdmlnYXRlIHRvIGEgc2libGluZyBub2RlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTJlNjFjMGI4OWE3N2UzNmEwZThjNjA0OTAwMDNjYjQ2Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6TmV4dFNpYmxpbmciIHJlZj0iYTJlNjFjMGI4OWE3N2UzNmEwZThjNjA0OTAwMDNjYjQ2IiBhcmdzPSIoY29uc3QgY2hhciAqKSBjb25zdCAiIC0tPgotY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyZTYxYzBiODlhNzdlMzZhMGU4YzYwNDkwMDAzY2I0NiI+TmV4dFNpYmxpbmc8L2E+IChjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPk5hdmlnYXRlIHRvIGEgc2libGluZyBub2RlIHdpdGggdGhlIGdpdmVuICd2YWx1ZScuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzNhY2Y5MjlkNDlkMTBiZDBlNWZiM2QzMWIwMzcyZDEiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29udmVuaWVuY2UgZnVuY3Rpb24gdG8gZ2V0IHRocm91Z2ggZWxlbWVudHMuICA8YSBocmVmPSIjYTczYWNmOTI5ZDQ5ZDEwYmQwZTVmYjNkMzFiMDM3MmQxIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwNzFiYTc3ZmQ3YWI3OTQwMmZhODRiN2U5Yjg2MDdiMyI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPiAoY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5Db252ZW5pZW5jZSBmdW5jdGlvbiB0byBnZXQgdGhyb3VnaCBlbGVtZW50cy4gIDxhIGhyZWY9IiNhMDcxYmE3N2ZkN2FiNzk0MDJmYTg0YjdlOWI4NjA3YjMiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTc1NzJkMGFmOWQxZTY5NmVlM2YwNWQ4YmI1ZWJiNDYzIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6TmV4dFNpYmxpbmdFbGVtZW50IiByZWY9ImE3NTcyZDBhZjlkMWU2OTZlZTNmMDVkOGJiNWViYjQ2MyIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCAiIC0tPgotY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3NTcyZDBhZjlkMWU2OTZlZTNmMDVkOGJiNWViYjQ2MyI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTUwNjk1OGUzNDQwNjcyOWE0ZTRjNTMyNmVhMzlkMDgxIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6TmV4dFNpYmxpbmdFbGVtZW50IiByZWY9ImE1MDY5NThlMzQ0MDY3MjlhNGU0YzUzMjZlYTM5ZDA4MSIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSIgLS0+Ci08YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUwNjk1OGUzNDQwNjcyOWE0ZTRjNTMyNmVhMzlkMDgxIj5OZXh0U2libGluZ0VsZW1lbnQ8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFmNGZiNjUyZjZiZDc5YWUwZDVjZTdkMGY3ZDNjMGZiYSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OkZpcnN0Q2hpbGRFbGVtZW50IiByZWY9ImFmNGZiNjUyZjZiZDc5YWUwZDVjZTdkMGY3ZDNjMGZiYSIgYXJncz0iKCkgY29uc3QgIiAtLT4KLWNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjRmYjY1MmY2YmQ3OWFlMGQ1Y2U3ZDBmN2QzYzBmYmEiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5Db252ZW5pZW5jZSBmdW5jdGlvbiB0byBnZXQgdGhyb3VnaCBlbGVtZW50cy4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFjY2RhMmM2YjQ1YzI1YmI1YTZmOWMzNDA3YTY0NGU2MSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OkZpcnN0Q2hpbGRFbGVtZW50IiByZWY9ImFjY2RhMmM2YjQ1YzI1YmI1YTZmOWMzNDA3YTY0NGU2MSIgYXJncz0iKGNvbnN0IGNoYXIgKl92YWx1ZSkgY29uc3QgIiAtLT4KLWNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhY2NkYTJjNmI0NWMyNWJiNWE2ZjljMzQwN2E2NDRlNjEiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPiAoY29uc3QgY2hhciAqX3ZhbHVlKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5Db252ZW5pZW5jZSBmdW5jdGlvbiB0byBnZXQgdGhyb3VnaCBlbGVtZW50cy4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEzMjdhZDRiYmQ5MDA3M2M1ZGZjOTMxYjA3MzE0ZjVmNyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OkZpcnN0Q2hpbGRFbGVtZW50IiByZWY9ImEzMjdhZDRiYmQ5MDA3M2M1ZGZjOTMxYjA3MzE0ZjVmNyIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCAiIC0tPgotY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMjdhZDRiYmQ5MDA3M2M1ZGZjOTMxYjA3MzE0ZjVmNyI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U1RMIHN0ZDo6c3RyaW5nIGZvcm0uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhN2YxZDcyOTE4ODA1MzRjMWU1Y2RlYjM5MmQ4YzFmNDUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpGaXJzdENoaWxkRWxlbWVudCIgcmVmPSJhN2YxZDcyOTE4ODA1MzRjMWU1Y2RlYjM5MmQ4YzFmNDUiIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkiIC0tPgotPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3ZjFkNzI5MTg4MDUzNGMxZTVjZGViMzkyZDhjMWY0NSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+aW50Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTdiOTlkNWM5N2Q2N2E0MmI5NzUyZjUyMTBhMWJhNWUiPlR5cGU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlF1ZXJ5IHRoZSB0eXBlIChhcyBhbiBlbnVtZXJhdGVkIHZhbHVlLCBhYm92ZSkgb2YgdGhpcyBub2RlLiAgPGEgaHJlZj0iI2E1N2I5OWQ1Yzk3ZDY3YTQyYjk3NTJmNTIxMGExYmE1ZSI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4MGUzOTdmYTk3M2NmNTMyM2UzM2IwNzE1NGIwMjRmMyI+R2V0RG9jdW1lbnQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiBhIHBvaW50ZXIgdG8gdGhlIERvY3VtZW50IHRoaXMgbm9kZSBsaXZlcyBpbi4gIDxhIGhyZWY9IiNhODBlMzk3ZmE5NzNjZjUzMjNlMzNiMDcxNTRiMDI0ZjMiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWVlZDIxYWQzMDYzMGVmNmU3ZmFmMDk2MTI3ZWRjOWYzIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6Tm9DaGlsZHJlbiIgcmVmPSJhZWVkMjFhZDMwNjMwZWY2ZTdmYWYwOTYxMjdlZGM5ZjMiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci1ib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZWVkMjFhZDMwNjMwZWY2ZTdmYWYwOTYxMjdlZGM5ZjMiPk5vQ2hpbGRyZW48L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybnMgdHJ1ZSBpZiB0aGlzIG5vZGUgaGFzIG5vIGNoaWxkcmVuLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYThhNGNkYTRiMTVjMjlmNjRjZmY0MTkzMDlhZWJlZDA4Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6VG9Eb2N1bWVudCIgcmVmPSJhOGE0Y2RhNGIxNWMyOWY2NGNmZjQxOTMwOWFlYmVkMDgiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci12aXJ0dWFsIGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4YTRjZGE0YjE1YzI5ZjY0Y2ZmNDE5MzA5YWViZWQwOCI+VG9Eb2N1bWVudDwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIGlmIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNzJhYmVkOTZkYzk2NjdhYjllMGEyYTI3NTMwMWJiMWMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpUb0VsZW1lbnQiIHJlZj0iYTcyYWJlZDk2ZGM5NjY3YWI5ZTBhMmEyNzUzMDFiYjFjIiBhcmdzPSIoKSBjb25zdCAiIC0tPgotdmlydHVhbCBjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcyYWJlZDk2ZGM5NjY3YWI5ZTBhMmEyNzUzMDFiYjFjIj5Ub0VsZW1lbnQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWEwYTUwODZmOWVhZWU5MTBiYmZkYzdmOTc1ZTI2NTc0Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6VG9Db21tZW50IiByZWY9ImFhMGE1MDg2ZjllYWVlOTEwYmJmZGM3Zjk3NWUyNjU3NCIgYXJncz0iKCkgY29uc3QgIiAtLT4KLXZpcnR1YWwgY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIj5UaVhtbENvbW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FhMGE1MDg2ZjllYWVlOTEwYmJmZGM3Zjk3NWUyNjU3NCI+VG9Db21tZW50PC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFmZDcyMDVjZjMxZDdhMzc2OTI5ZjhhMzY5MzA2MjdhMiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlRvVW5rbm93biIgcmVmPSJhZmQ3MjA1Y2YzMWQ3YTM3NjkyOWY4YTM2OTMwNjI3YTIiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci12aXJ0dWFsIGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZmQ3MjA1Y2YzMWQ3YTM3NjkyOWY4YTM2OTMwNjI3YTIiPlRvVW5rbm93bjwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIGlmIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhOTVhNDZhNTJjNTI1OTkyZDZiNGVlMDhiZWIxNGNkNjkiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpUb1RleHQiIHJlZj0iYTk1YTQ2YTUyYzUyNTk5MmQ2YjRlZTA4YmViMTRjZDY5IiBhcmdzPSIoKSBjb25zdCAiIC0tPgotdmlydHVhbCBjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTk1YTQ2YTUyYzUyNTk5MmQ2YjRlZTA4YmViMTRjZDY5Ij5Ub1RleHQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTlmNDNlNjk4NGZjN2Q0YWZkNmViMzI3MTRjNmI3YjcyIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6VG9EZWNsYXJhdGlvbiIgcmVmPSJhOWY0M2U2OTg0ZmM3ZDRhZmQ2ZWIzMjcxNGM2YjdiNzIiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci12aXJ0dWFsIGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiPlRpWG1sRGVjbGFyYXRpb248L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E5ZjQzZTY5ODRmYzdkNGFmZDZlYjMyNzE0YzZiN2I3MiI+VG9EZWNsYXJhdGlvbjwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIGlmIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNmE0YzhhYzI4ZWU3YTc0NWQwNTlkYjY2OTFlMDNiYWUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpUb0RvY3VtZW50IiByZWY9ImE2YTRjOGFjMjhlZTdhNzQ1ZDA1OWRiNjY5MWUwM2JhZSIgYXJncz0iKCkiIC0tPgotdmlydHVhbCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNmE0YzhhYzI4ZWU3YTc0NWQwNTlkYjY2OTFlMDNiYWUiPlRvRG9jdW1lbnQ8L2E+ICgpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIGlmIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhYTY1ZDAwMDIyMzE4N2QyMmE0ZGNlYmQ3NDc5ZTllYmMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpUb0VsZW1lbnQiIHJlZj0iYWE2NWQwMDAyMjMxODdkMjJhNGRjZWJkNzQ3OWU5ZWJjIiBhcmdzPSIoKSIgLS0+Ci12aXJ0dWFsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYTY1ZDAwMDIyMzE4N2QyMmE0ZGNlYmQ3NDc5ZTllYmMiPlRvRWxlbWVudDwvYT4gKCk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEzODNlMDZhMDc4N2Y3MDYzOTUzOTM0ODY3OTkwZjg0OSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlRvQ29tbWVudCIgcmVmPSJhMzgzZTA2YTA3ODdmNzA2Mzk1MzkzNDg2Nzk5MGY4NDkiIGFyZ3M9IigpIiAtLT4KLXZpcnR1YWwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIj5UaVhtbENvbW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzODNlMDZhMDc4N2Y3MDYzOTUzOTM0ODY3OTkwZjg0OSI+VG9Db21tZW50PC9hPiAoKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTA2ZGU1YWY4NTI2NjhjN2U0YWYwZDA5YzIwNWYwYjBkIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6VG9Vbmtub3duIiByZWY9ImEwNmRlNWFmODUyNjY4YzdlNGFmMGQwOWMyMDVmMGIwZCIgYXJncz0iKCkiIC0tPgotdmlydHVhbCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiPlRpWG1sVW5rbm93bjwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTA2ZGU1YWY4NTI2NjhjN2U0YWYwZDA5YzIwNWYwYjBkIj5Ub1Vua25vd248L2E+ICgpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIGlmIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhM2RkZmJjYWM3OGZiZWEwNDFmYWQ1N2U1YzZkNjBhMDMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpUb1RleHQiIHJlZj0iYTNkZGZiY2FjNzhmYmVhMDQxZmFkNTdlNWM2ZDYwYTAzIiBhcmdzPSIoKSIgLS0+Ci12aXJ0dWFsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhM2RkZmJjYWM3OGZiZWEwNDFmYWQ1N2U1YzZkNjBhMDMiPlRvVGV4dDwvYT4gKCk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE0MDI3MTM2Y2E4MjBmZjRhNjM2YjYwNzIzMWI2YTZkZiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlRvRGVjbGFyYXRpb24iIHJlZj0iYTQwMjcxMzZjYTgyMGZmNGE2MzZiNjA3MjMxYjZhNmRmIiBhcmdzPSIoKSIgLS0+Ci12aXJ0dWFsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiPlRpWG1sRGVjbGFyYXRpb248L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MDI3MTM2Y2E4MjBmZjRhNjM2YjYwNzIzMWI2YTZkZiI+VG9EZWNsYXJhdGlvbjwvYT4gKCk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+dmlydHVhbCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ1MDhjYzNhMmQ3YTk4ZTk2YTU0Y2MwOWMzN2E3OGE0Ij5DbG9uZTwvYT4gKCkgY29uc3QgPTA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DcmVhdGUgYW4gZXhhY3QgZHVwbGljYXRlIG9mIHRoaXMgbm9kZSBhbmQgcmV0dXJuIGl0LiAgPGEgaHJlZj0iI2E0NTA4Y2MzYTJkN2E5OGU5NmE1NGNjMDljMzdhNzhhNCI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZpcnR1YWwgYm9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWNjMGY4OGI3NDYyYzZjYjczODA5ZDQxMGE0ZjViYjg2Ij5BY2NlcHQ8L2E+ICg8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwiPlRpWG1sVmlzaXRvcjwvYT4gKnZpc2l0b3IpIGNvbnN0ID0wPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QWNjZXB0IGEgaGllcmNoaWNhbCB2aXNpdCB0aGUgbm9kZXMgaW4gdGhlIFRpbnlYTUwgRE9NLiAgPGEgaHJlZj0iI2FjYzBmODhiNzQ2MmM2Y2I3MzgwOWQ0MTBhNGY1YmI4NiI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjb2xzcGFuPSIyIj48aDI+RnJpZW5kczwvaDI+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMTczNjE3ZjZkZmU5MDJjZjQ4NGNlNTU1MmI5NTA0NzUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpUaVhtbERvY3VtZW50IiByZWY9ImExNzM2MTdmNmRmZTkwMmNmNDg0Y2U1NTUyYjk1MDQ3NSIgYXJncz0iIiAtLT4KLWNsYXNzJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTczNjE3ZjZkZmU5MDJjZjQ4NGNlNTU1MmI5NTA0NzUiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhYjY1OTJlMzJjYjkxMzJiZTUxN2NjMTJhNzA1NjRjNGIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpUaVhtbEVsZW1lbnQiIHJlZj0iYWI2NTkyZTMyY2I5MTMyYmU1MTdjYzEyYTcwNTY0YzRiIiBhcmdzPSIiIC0tPgotY2xhc3MmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiNjU5MmUzMmNiOTEzMmJlNTE3Y2MxMmE3MDU2NGM0YiI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5zdGQ6OmlzdHJlYW0gJmFtcDsmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiNTdiZDQyNjU2M2M5MjY4NDRmNjVhNzg0MTJlMThiOSI+b3BlcmF0b3ImZ3Q7Jmd0OzwvYT4gKHN0ZDo6aXN0cmVhbSAmYW1wO2luLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gJmFtcDtiYXNlKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkFuIGlucHV0IHN0cmVhbSBvcGVyYXRvciwgZm9yIGV2ZXJ5IGNsYXNzLiAgPGEgaHJlZj0iI2FiNTdiZDQyNjU2M2M5MjY4NDRmNjVhNzg0MTJlMThiOSI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnN0ZDo6b3N0cmVhbSAmYW1wOyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTg2Y2Q0OWNmYjE3YTg0NGMwMDEwYjMxMzZhYzk2NmM3Ij5vcGVyYXRvciZsdDsmbHQ7PC9hPiAoc3RkOjpvc3RyZWFtICZhbXA7b3V0LCBjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gJmFtcDtiYXNlKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkFuIG91dHB1dCBzdHJlYW0gb3BlcmF0b3IsIGZvciBldmVyeSBjbGFzcy4gIDxhIGhyZWY9IiNhODZjZDQ5Y2ZiMTdhODQ0YzAwMTBiMzEzNmFjOTY2YzciPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTUyZWYxN2U3MDgwZGYyNDkwY2Y4N2JkZTM4MDY4NWFiIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6b3BlcmF0b3ImbHQ7Jmx0OyIgcmVmPSJhNTJlZjE3ZTcwODBkZjI0OTBjZjg3YmRlMzgwNjg1YWIiIGFyZ3M9IihzdGQ6OnN0cmluZyAmYW1wO291dCwgY29uc3QgVGlYbWxOb2RlICZhbXA7YmFzZSkiIC0tPgotc3RkOjpzdHJpbmcgJmFtcDsmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MmVmMTdlNzA4MGRmMjQ5MGNmODdiZGUzODA2ODVhYiI+b3BlcmF0b3ImbHQ7Jmx0OzwvYT4gKHN0ZDo6c3RyaW5nICZhbXA7b3V0LCBjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gJmFtcDtiYXNlKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkFwcGVuZHMgdGhlIFhNTCBub2RlIG9yIGF0dHJpYnV0ZSB0byBhIHN0ZDo6c3RyaW5nLiA8YnIvPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlRoZSB0eXBlcyBvZiBYTUwgbm9kZXMgc3VwcG9ydGVkIGJ5IFRpbnlYbWwuICA8YSBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI3c3Ij5Nb3JlLi4uPC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNvbHNwYW49IjIiPjxicj48aDI+UHVibGljIE1lbWJlciBGdW5jdGlvbnM8L2gyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+Y29uc3QgY2hhciAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMSI+VmFsdWU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+VGhlIG1lYW5pbmcgb2YgJ3ZhbHVlJyBjaGFuZ2VzIGZvciB0aGUgc3BlY2lmaWMgdHlwZSBvZiBUaVhtbE5vZGUuICA8YSBocmVmPSIjYTEiPjwvYT48YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5jb25zdCBzdGQ6OnN0cmluZyAmYW1wOyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTIiPlZhbHVlU3RyPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEiPlZhbHVlKCk8L2E+IGFzIGEgc3RkOjpzdHJpbmcuICA8YSBocmVmPSIjYTIiPjwvYT48YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj52b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMyI+U2V0VmFsdWU8L2E+IChjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DaGFuZ2VzIHRoZSB2YWx1ZSBvZiB0aGUgbm9kZS4gIDxhIGhyZWY9IiNhMyI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE0Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6U2V0VmFsdWUiIHJlZj0iYTQiIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkiIC0tPgordm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQiPlNldFZhbHVlPC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpDbGVhciIgcmVmPSJhNSIgYXJncz0iKCkiIC0tPgordm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUiPkNsZWFyPC9hPiAoKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+RGVsZXRlIGFsbCB0aGUgY2hpbGRyZW4gb2YgdGhpcyBub2RlLiBEb2VzIG5vdCBhZmZlY3QgJ3RoaXMnLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhNiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlBhcmVudCIgcmVmPSJhNiIgYXJncz0iKCkiIC0tPgorPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2Ij5QYXJlbnQ8L2E+ICgpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5PbmUgc3RlcCB1cCB0aGUgRE9NLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhOCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OkZpcnN0Q2hpbGQiIHJlZj0iYTgiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Citjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgiPkZpcnN0Q2hpbGQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+VGhlIGZpcnN0IGNoaWxkIG9mIHRoaXMgbm9kZS4gV2lsbCBiZSBudWxsIGlmIHRoZXJlIGFyZSBubyBjaGlsZHJlbi4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTEwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6Rmlyc3RDaGlsZCIgcmVmPSJhMTAiIGFyZ3M9Iihjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgIiAtLT4KK2NvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTAiPkZpcnN0Q2hpbGQ8L2E+IChjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5UaGUgZmlyc3QgY2hpbGQgb2YgdGhpcyBub2RlIHdpdGggdGhlIG1hdGNoaW5nICd2YWx1ZScuIFdpbGwgYmUgbnVsbCBpZiBub25lIGZvdW5kLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMTEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpGaXJzdENoaWxkIiByZWY9ImExMSIgYXJncz0iKGNvbnN0IGNoYXIgKnZhbHVlKSIgLS0+Cis8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTExIj5GaXJzdENoaWxkPC9hPiAoY29uc3QgY2hhciAqdmFsdWUpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5UaGUgZmlyc3QgY2hpbGQgb2YgdGhpcyBub2RlIHdpdGggdGhlIG1hdGNoaW5nICd2YWx1ZScuIFdpbGwgYmUgbnVsbCBpZiBub25lIGZvdW5kLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMTMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpMYXN0Q2hpbGQiIHJlZj0iYTEzIiBhcmdzPSIoKSIgLS0+Cis8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEzIj5MYXN0Q2hpbGQ8L2E+ICgpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5UaGUgbGFzdCBjaGlsZCBvZiB0aGlzIG5vZGUuIFdpbGwgYmUgbnVsbCBpZiB0aGVyZSBhcmUgbm8gY2hpbGRyZW4uIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImExNSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Okxhc3RDaGlsZCIgcmVmPSJhMTUiIGFyZ3M9Iihjb25zdCBjaGFyICp2YWx1ZSkiIC0tPgorPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNSI+TGFzdENoaWxkPC9hPiAoY29uc3QgY2hhciAqdmFsdWUpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5UaGUgbGFzdCBjaGlsZCBvZiB0aGlzIG5vZGUgbWF0Y2hpbmcgJ3ZhbHVlJy4gV2lsbCBiZSBudWxsIGlmIHRoZXJlIGFyZSBubyBjaGlsZHJlbi4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTE2Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6Rmlyc3RDaGlsZCIgcmVmPSJhMTYiIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgIiAtLT4KK2NvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTYiPkZpcnN0Q2hpbGQ8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTE3Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6Rmlyc3RDaGlsZCIgcmVmPSJhMTciIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkiIC0tPgorPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNyI+Rmlyc3RDaGlsZDwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U1RMIHN0ZDo6c3RyaW5nIGZvcm0uIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImExOCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Okxhc3RDaGlsZCIgcmVmPSJhMTgiIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgIiAtLT4KK2NvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTgiPkxhc3RDaGlsZDwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMTkiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpMYXN0Q2hpbGQiIHJlZj0iYTE5IiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIiAtLT4KKzxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTkiPkxhc3RDaGlsZDwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U1RMIHN0ZDo6c3RyaW5nIGZvcm0uIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPmNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjAiPkl0ZXJhdGVDaGlsZHJlbjwvYT4gKGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QW4gYWx0ZXJuYXRlIHdheSB0byB3YWxrIHRoZSBjaGlsZHJlbiBvZiBhIG5vZGUuICA8YSBocmVmPSIjYTIwIj48L2E+PGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTIyIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6SXRlcmF0ZUNoaWxkcmVuIiByZWY9ImEyMiIgYXJncz0iKGNvbnN0IGNoYXIgKnZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCAiIC0tPgorY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyMiI+SXRlcmF0ZUNoaWxkcmVuPC9hPiAoY29uc3QgY2hhciAqdmFsdWUsIGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+VGhpcyBmbGF2b3Igb2YgSXRlcmF0ZUNoaWxkcmVuIHNlYXJjaGVzIGZvciBjaGlsZHJlbiB3aXRoIGEgcGFydGljdWxhciAndmFsdWUnLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMjQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpJdGVyYXRlQ2hpbGRyZW4iIHJlZj0iYTI0IiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUsIGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0ICIgLS0+Citjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI0Ij5JdGVyYXRlQ2hpbGRyZW48L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICpwcmV2aW91cykgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTI1Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6SXRlcmF0ZUNoaWxkcmVuIiByZWY9ImEyNSIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBUaVhtbE5vZGUgKnByZXZpb3VzKSIgLS0+Cis8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI1Ij5JdGVyYXRlQ2hpbGRyZW48L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICpwcmV2aW91cyk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI2Ij5JbnNlcnRFbmRDaGlsZDwvYT4gKGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAmYW1wO2FkZFRoaXMpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5BZGQgYSBuZXcgbm9kZSByZWxhdGVkIHRvIHRoaXMuICA8YSBocmVmPSIjYTI2Ij48L2E+PGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNyI+TGlua0VuZENoaWxkPC9hPiAoPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICphZGRUaGlzKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QWRkIGEgbmV3IG5vZGUgcmVsYXRlZCB0byB0aGlzLiAgPGEgaHJlZj0iI2EyNyI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjgiPkluc2VydEJlZm9yZUNoaWxkPC9hPiAoPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICpiZWZvcmVUaGlzLCBjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gJmFtcDthZGRUaGlzKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QWRkIGEgbmV3IG5vZGUgcmVsYXRlZCB0byB0aGlzLiAgPGEgaHJlZj0iI2EyOCI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjkiPkluc2VydEFmdGVyQ2hpbGQ8L2E+ICg8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKmFmdGVyVGhpcywgY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICZhbXA7YWRkVGhpcyk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkFkZCBhIG5ldyBub2RlIHJlbGF0ZWQgdG8gdGhpcy4gIDxhIGhyZWY9IiNhMjkiPjwvYT48YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMwIj5SZXBsYWNlQ2hpbGQ8L2E+ICg8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKnJlcGxhY2VUaGlzLCBjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gJmFtcDt3aXRoVGhpcyk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJlcGxhY2UgYSBjaGlsZCBvZiB0aGlzIG5vZGUuICA8YSBocmVmPSIjYTMwIj48L2E+PGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTMxIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6UmVtb3ZlQ2hpbGQiIHJlZj0iYTMxIiBhcmdzPSIoVGlYbWxOb2RlICpyZW1vdmVUaGlzKSIgLS0+Citib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzEiPlJlbW92ZUNoaWxkPC9hPiAoPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICpyZW1vdmVUaGlzKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+RGVsZXRlIGEgY2hpbGQgb2YgdGhpcyBub2RlLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMzIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpQcmV2aW91c1NpYmxpbmciIHJlZj0iYTMyIiBhcmdzPSIoKSBjb25zdCAiIC0tPgorY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMiI+UHJldmlvdXNTaWJsaW5nPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPk5hdmlnYXRlIHRvIGEgc2libGluZyBub2RlLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMzQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpQcmV2aW91c1NpYmxpbmciIHJlZj0iYTM0IiBhcmdzPSIoY29uc3QgY2hhciAqKSBjb25zdCAiIC0tPgorY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzNCI+UHJldmlvdXNTaWJsaW5nPC9hPiAoY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPk5hdmlnYXRlIHRvIGEgc2libGluZyBub2RlLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMzYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpQcmV2aW91c1NpYmxpbmciIHJlZj0iYTM2IiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0ICIgLS0+Citjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM2Ij5QcmV2aW91c1NpYmxpbmc8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTM3Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6UHJldmlvdXNTaWJsaW5nIiByZWY9ImEzNyIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSIgLS0+Cis8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM3Ij5QcmV2aW91c1NpYmxpbmc8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMzgiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpOZXh0U2libGluZyIgcmVmPSJhMzgiIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgIiAtLT4KK2NvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzgiPk5leHRTaWJsaW5nPC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U1RMIHN0ZDo6c3RyaW5nIGZvcm0uIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEzOSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Ok5leHRTaWJsaW5nIiByZWY9ImEzOSIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSIgLS0+Cis8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM5Ij5OZXh0U2libGluZzwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U1RMIHN0ZDo6c3RyaW5nIGZvcm0uIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE0MCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Ok5leHRTaWJsaW5nIiByZWY9ImE0MCIgYXJncz0iKCkgY29uc3QgIiAtLT4KK2NvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDAiPk5leHRTaWJsaW5nPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPk5hdmlnYXRlIHRvIGEgc2libGluZyBub2RlLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhNDIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpOZXh0U2libGluZyIgcmVmPSJhNDIiIGFyZ3M9Iihjb25zdCBjaGFyICopIGNvbnN0ICIgLS0+Citjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQyIj5OZXh0U2libGluZzwvYT4gKGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5OYXZpZ2F0ZSB0byBhIHNpYmxpbmcgbm9kZSB3aXRoIHRoZSBnaXZlbiAndmFsdWUnLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ0Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29udmVuaWVuY2UgZnVuY3Rpb24gdG8gZ2V0IHRocm91Z2ggZWxlbWVudHMuICA8YSBocmVmPSIjYTQ0Ij48L2E+PGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NiI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPiAoY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNvbnZlbmllbmNlIGZ1bmN0aW9uIHRvIGdldCB0aHJvdWdoIGVsZW1lbnRzLiAgPGEgaHJlZj0iI2E0NiI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE0OCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Ok5leHRTaWJsaW5nRWxlbWVudCIgcmVmPSJhNDgiIGFyZ3M9Iihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgIiAtLT4KK2NvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDgiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlNUTCBzdGQ6OnN0cmluZyBmb3JtLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhNDkiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpOZXh0U2libGluZ0VsZW1lbnQiIHJlZj0iYTQ5IiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIiAtLT4KKzxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDkiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U1RMIHN0ZDo6c3RyaW5nIGZvcm0uIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE1MCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OkZpcnN0Q2hpbGRFbGVtZW50IiByZWY9ImE1MCIgYXJncz0iKCkgY29uc3QgIiAtLT4KK2NvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTAiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNvbnZlbmllbmNlIGZ1bmN0aW9uIHRvIGdldCB0aHJvdWdoIGVsZW1lbnRzLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhNTIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpGaXJzdENoaWxkRWxlbWVudCIgcmVmPSJhNTIiIGFyZ3M9Iihjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgIiAtLT4KK2NvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTIiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPiAoY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29udmVuaWVuY2UgZnVuY3Rpb24gdG8gZ2V0IHRocm91Z2ggZWxlbWVudHMuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE1NCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OkZpcnN0Q2hpbGRFbGVtZW50IiByZWY9ImE1NCIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCAiIC0tPgorY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NCI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+IChjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTU1Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6Rmlyc3RDaGlsZEVsZW1lbnQiIHJlZj0iYTU1IiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIiAtLT4KKzxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTUiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TVEwgc3RkOjpzdHJpbmcgZm9ybS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+dmlydHVhbCBpbnQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NiI+VHlwZTwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5RdWVyeSB0aGUgdHlwZSAoYXMgYW4gZW51bWVyYXRlZCB2YWx1ZSwgYWJvdmUpIG9mIHRoaXMgbm9kZS4gIDxhIGhyZWY9IiNhNTYiPjwvYT48YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTciPkdldERvY3VtZW50PC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlJldHVybiBhIHBvaW50ZXIgdG8gdGhlIERvY3VtZW50IHRoaXMgbm9kZSBsaXZlcyBpbi4gIDxhIGhyZWY9IiNhNTciPjwvYT48YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhNTkiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpOb0NoaWxkcmVuIiByZWY9ImE1OSIgYXJncz0iKCkgY29uc3QgIiAtLT4KK2Jvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1OSI+Tm9DaGlsZHJlbjwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5SZXR1cm5zIHRydWUgaWYgdGhpcyBub2RlIGhhcyBubyBjaGlsZHJlbi4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTYwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6VG9Eb2N1bWVudCIgcmVmPSJhNjAiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Citjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjAiPlRvRG9jdW1lbnQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE2MSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlRvRWxlbWVudCIgcmVmPSJhNjEiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Citjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYxIj5Ub0VsZW1lbnQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE2MiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlRvQ29tbWVudCIgcmVmPSJhNjIiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Citjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYyIj5Ub0NvbW1lbnQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE2MyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlRvVW5rbm93biIgcmVmPSJhNjMiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Citjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiPlRpWG1sVW5rbm93bjwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYzIj5Ub1Vua25vd248L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE2NCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlRvVGV4dCIgcmVmPSJhNjQiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Citjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY0Ij5Ub1RleHQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE2NSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlRvRGVjbGFyYXRpb24iIHJlZj0iYTY1IiBhcmdzPSIoKSBjb25zdCAiIC0tPgorY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY1Ij5Ub0RlY2xhcmF0aW9uPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhNjYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpUb0RvY3VtZW50IiByZWY9ImE2NiIgYXJncz0iKCkiIC0tPgorPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY2Ij5Ub0RvY3VtZW50PC9hPiAoKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE2NyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlRvRWxlbWVudCIgcmVmPSJhNjciIGFyZ3M9IigpIiAtLT4KKzxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjciPlRvRWxlbWVudDwvYT4gKCk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhNjgiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpUb0NvbW1lbnQiIHJlZj0iYTY4IiBhcmdzPSIoKSIgLS0+Cis8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY4Ij5Ub0NvbW1lbnQ8L2E+ICgpPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTY5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6VG9Vbmtub3duIiByZWY9ImE2OSIgYXJncz0iKCkiIC0tPgorPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2OSI+VG9Vbmtub3duPC9hPiAoKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE3MCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlRvVGV4dCIgcmVmPSJhNzAiIGFyZ3M9IigpIiAtLT4KKzxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPiAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzAiPlRvVGV4dDwvYT4gKCk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiA8YnI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhNzEiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpUb0RlY2xhcmF0aW9uIiByZWY9ImE3MSIgYXJncz0iKCkiIC0tPgorPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcxIj5Ub0RlY2xhcmF0aW9uPC9hPiAoKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZpcnR1YWwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MiI+Q2xvbmU8L2E+ICgpIGNvbnN0ID0wPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DcmVhdGUgYW4gZXhhY3QgZHVwbGljYXRlIG9mIHRoaXMgbm9kZSBhbmQgcmV0dXJuIGl0LiAgPGEgaHJlZj0iI2E3MiI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNvbHNwYW49IjIiPjxicj48aDI+RnJpZW5kczwvaDI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJuMCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlRpWG1sRG9jdW1lbnQiIHJlZj0ibjAiIGFyZ3M9IiIgLS0+CitjbGFzcyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjAiPlRpWG1sRG9jdW1lbnQ8L2E+PC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9Im4xIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6VGlYbWxFbGVtZW50IiByZWY9Im4xIiBhcmdzPSIiIC0tPgorY2xhc3MmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI24xIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnN0ZDo6aXN0cmVhbSAmYW1wOyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjIiPm9wZXJhdG9yJmd0OyZndDs8L2E+IChzdGQ6OmlzdHJlYW0gJmFtcDtpbiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICZhbXA7YmFzZSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkFuIGlucHV0IHN0cmVhbSBvcGVyYXRvciwgZm9yIGV2ZXJ5IGNsYXNzLiAgPGEgaHJlZj0iI24yIj48L2E+PGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+c3RkOjpvc3RyZWFtICZhbXA7Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNuMyI+b3BlcmF0b3ImbHQ7Jmx0OzwvYT4gKHN0ZDo6b3N0cmVhbSAmYW1wO291dCwgY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICZhbXA7YmFzZSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkFuIG91dHB1dCBzdHJlYW0gb3BlcmF0b3IsIGZvciBldmVyeSBjbGFzcy4gIDxhIGhyZWY9IiNuMyI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9Im40Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6b3BlcmF0b3ImbHQ7Jmx0OyIgcmVmPSJuNCIgYXJncz0iKHN0ZDo6c3RyaW5nICZhbXA7b3V0LCBjb25zdCBUaVhtbE5vZGUgJmFtcDtiYXNlKSIgLS0+CitzdGQ6OnN0cmluZyAmYW1wOyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjQiPm9wZXJhdG9yJmx0OyZsdDs8L2E+IChzdGQ6OnN0cmluZyAmYW1wO291dCwgY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICZhbXA7YmFzZSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkFwcGVuZHMgdGhlIFhNTCBub2RlIG9yIGF0dHJpYnV0ZSB0byBhIHN0ZDo6c3RyaW5nLiA8YnI+PC90ZD48L3RyPgogPC90YWJsZT4KLTxoci8+PGEgbmFtZT0iX2RldGFpbHMiPjwvYT48aDI+RGV0YWlsZWQgRGVzY3JpcHRpb248L2gyPgotPHA+VGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiA8L3A+Ci08cD4oRXhjZXB0IGZvciBhdHRyaWJ1dGVzKS4gTm9kZXMgaGF2ZSBzaWJsaW5ncywgYSBwYXJlbnQsIGFuZCBjaGlsZHJlbi4gQSBub2RlIGNhbiBiZSBpbiBhIGRvY3VtZW50LCBvciBzdGFuZCBvbiBpdHMgb3duLiBUaGUgdHlwZSBvZiBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4gY2FuIGJlIHF1ZXJpZWQsIGFuZCBpdCBjYW4gYmUgY2FzdCB0byBpdHMgbW9yZSBkZWZpbmVkIHR5cGUuIDwvcD4KLTxoci8+PGgyPk1lbWJlciBFbnVtZXJhdGlvbiBEb2N1bWVudGF0aW9uPC9oMj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhODM2ZWRlZDQ5MjBhYjllOWVmMjg0OTZmNDhjZDk1YTIiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpOb2RlVHlwZSIgcmVmPSJhODM2ZWRlZDQ5MjBhYjllOWVmMjg0OTZmNDhjZDk1YTIiIGFyZ3M9IiIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8aHI+PGEgbmFtZT0iX2RldGFpbHMiPjwvYT48aDI+RGV0YWlsZWQgRGVzY3JpcHRpb248L2gyPgorVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiAKKzxwPgorKEV4Y2VwdCBmb3IgYXR0cmlidXRlcykuIE5vZGVzIGhhdmUgc2libGluZ3MsIGEgcGFyZW50LCBhbmQgY2hpbGRyZW4uIEEgbm9kZSBjYW4gYmUgaW4gYSBkb2N1bWVudCwgb3Igc3RhbmQgb24gaXRzIG93bi4gVGhlIHR5cGUgb2YgYSBUaVhtbE5vZGUgY2FuIGJlIHF1ZXJpZWQsIGFuZCBpdCBjYW4gYmUgY2FzdCB0byBpdHMgbW9yZSBkZWZpbmVkIHR5cGUuCis8cD4KKzxocj48aDI+TWVtYmVyIEVudW1lcmF0aW9uIERvY3VtZW50YXRpb248L2gyPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0idzciPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpOb2RlVHlwZSIgcmVmPSJ3NyIgYXJncz0iIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+ZW51bSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgzNmVkZWQ0OTIwYWI5ZTllZjI4NDk2ZjQ4Y2Q5NWEyIj5UaVhtbE5vZGU6Ok5vZGVUeXBlPC9hPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5lbnVtIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCN3NyI+VGlYbWxOb2RlOjpOb2RlVHlwZTwvYT4gICAgICAgICAgPC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPlRoZSB0eXBlcyBvZiBYTUwgbm9kZXMgc3VwcG9ydGVkIGJ5IFRpbnlYbWwuIDwvcD4KLTxwPihBbGwgdGhlIHVuc3VwcG9ydGVkIHR5cGVzIGFyZSBwaWNrZWQgdXAgYnkgVU5LTk9XTi4pIDwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxoci8+PGgyPk1lbWJlciBGdW5jdGlvbiBEb2N1bWVudGF0aW9uPC9oMj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhY2MwZjg4Yjc0NjJjNmNiNzM4MDlkNDEwYTRmNWJiODYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpBY2NlcHQiIHJlZj0iYWNjMGY4OGI3NDYyYzZjYjczODA5ZDQxMGE0ZjViYjg2IiBhcmdzPSIoVGlYbWxWaXNpdG9yICp2aXNpdG9yKSBjb25zdCA9MCIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8cD4KK1RoZSB0eXBlcyBvZiBYTUwgbm9kZXMgc3VwcG9ydGVkIGJ5IFRpbnlYbWwuIAorPHA+CisoQWxsIHRoZSB1bnN1cHBvcnRlZCB0eXBlcyBhcmUgcGlja2VkIHVwIGJ5IFVOS05PV04uKSAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxocj48aDI+TWVtYmVyIEZ1bmN0aW9uIERvY3VtZW50YXRpb248L2gyPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTcyIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6Q2xvbmUiIHJlZj0iYTcyIiBhcmdzPSIoKSBjb25zdCA9MCIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPnZpcnR1YWwgYm9vbCBUaVhtbE5vZGU6OkFjY2VwdCA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIj5UaVhtbFZpc2l0b3I8L2E+ICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPnZpc2l0b3I8L2VtPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD4gY29uc3Q8Y29kZT4gW3B1cmUgdmlydHVhbF08L2NvZGU+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPnZpcnR1YWwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBUaVhtbE5vZGU6OkNsb25lICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZTEiIHZhbGlnbj0idG9wIiBub3dyYXA+ICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPiZuYnNwOykmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcD4gY29uc3Q8Y29kZT4gW3B1cmUgdmlydHVhbF08L2NvZGU+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPkFjY2VwdCBhIGhpZXJjaGljYWwgdmlzaXQgdGhlIG5vZGVzIGluIHRoZSBUaW55WE1MIERPTS4gPC9wPgotPHA+RXZlcnkgbm9kZSBpbiB0aGUgWE1MIHRyZWUgd2lsbCBiZSBjb25kaXRpb25hbGx5IHZpc2l0ZWQgYW5kIHRoZSBob3N0IHdpbGwgYmUgY2FsbGVkIGJhY2sgdmlhIHRoZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwiIHRpdGxlPSJJbXBsZW1lbnRzIHRoZSBpbnRlcmZhY2UgdG8gdGhlICZxdW90O1Zpc2l0b3IgcGF0dGVybiZxdW90OyAoc2VlIHRoZSBBY2NlcHQoKSBtZXRob2QuLi4iPlRpWG1sVmlzaXRvcjwvYT4gaW50ZXJmYWNlLjwvcD4KLTxwPlRoaXMgaXMgZXNzZW50aWFsbHkgYSBTQVggaW50ZXJmYWNlIGZvciBUaW55WE1MLiAoTm90ZSBob3dldmVyIGl0IGRvZXNuJ3QgcmUtcGFyc2UgdGhlIFhNTCBmb3IgdGhlIGNhbGxiYWNrcywgc28gdGhlIHBlcmZvcm1hbmNlIG9mIFRpbnlYTUwgaXMgdW5jaGFuZ2VkIGJ5IHVzaW5nIHRoaXMgaW50ZXJmYWNlIHZlcnN1cyBhbnkgb3RoZXIuKTwvcD4KLTxwPlRoZSBpbnRlcmZhY2UgaGFzIGJlZW4gYmFzZWQgb24gaWRlYXMgZnJvbTo8L3A+Ci08dWw+Ci08bGk+PGEgaHJlZj0iaHR0cDovL3d3dy5zYXhwcm9qZWN0Lm9yZy8iPmh0dHA6Ly93d3cuc2F4cHJvamVjdC5vcmcvPC9hPjwvbGk+Ci08bGk+PGEgaHJlZj0iaHR0cDovL2MyLmNvbS9jZ2kvd2lraT9IaWVyYXJjaGljYWxWaXNpdG9yUGF0dGVybiI+aHR0cDovL2MyLmNvbS9jZ2kvd2lraT9IaWVyYXJjaGljYWxWaXNpdG9yUGF0dGVybjwvYT48L2xpPgotPC91bD4KLTxwPldoaWNoIGFyZSBib3RoIGdvb2QgcmVmZXJlbmNlcyBmb3IgInZpc2l0aW5nIi48L3A+Ci08cD5BbiBleGFtcGxlIG9mIHVzaW5nIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhY2MwZjg4Yjc0NjJjNmNiNzM4MDlkNDEwYTRmNWJiODYiIHRpdGxlPSJBY2NlcHQgYSBoaWVyY2hpY2FsIHZpc2l0IHRoZSBub2RlcyBpbiB0aGUgVGlueVhNTCBET00uIj5BY2NlcHQoKTwvYT46IDwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci0JCVRpWG1sUHJpbnRlciBwcmludGVyOwotCQl0aW55eG1sRG9jLkFjY2VwdCggJmFtcDtwcmludGVyICk7Ci0JCWNvbnN0IGNoYXIqIHhtbGNzdHIgPSBwcmludGVyLkNTdHIoKTsKLQkJPC9wcmU+PC9kaXY+IAotPHA+SW1wbGVtZW50ZWQgaW4gPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E3MWE4MWIyYWZiMGQ0MmJlMTU0M2QxYzQwNGRlZTZmNSI+VGlYbWxFbGVtZW50PC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2FmM2FjMWI5OWZiYmU5ZWE0ZmI2ZTE0MTQ2MTU2ZTQzZSI+VGlYbWxDb21tZW50PC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E4NDgzZDQ0MTVjZTlkZTZjNGZhOGY2M2QwNjdkNWRlNiI+VGlYbWxUZXh0PC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMjIzMTVhNTM1OTgzYjg2NTM1Y2RiYTM0NTg2NjllM2UiPlRpWG1sRGVjbGFyYXRpb248L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYWQ3MTIyZTUxMzU1ODFiM2M4MzJhMWEzMjE3NzYwYTkzIj5UaVhtbFVua25vd248L2E+LCBhbmQgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhYTU0NWFhZTMyNWQ5NzUyYWQ2NDEyMGJjNGVjZjkzOWEiPlRpWG1sRG9jdW1lbnQ8L2E+LjwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNDUwOGNjM2EyZDdhOThlOTZhNTRjYzA5YzM3YTc4YTQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpDbG9uZSIgcmVmPSJhNDUwOGNjM2EyZDdhOThlOTZhNTRjYzA5YzM3YTc4YTQiIGFyZ3M9IigpIGNvbnN0ID0wIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorQ3JlYXRlIGFuIGV4YWN0IGR1cGxpY2F0ZSBvZiB0aGlzIG5vZGUgYW5kIHJldHVybiBpdC4gCis8cD4KK1RoZSBtZW1vcnkgbXVzdCBiZSBkZWxldGVkIGJ5IHRoZSBjYWxsZXIuCis8cD4KK0ltcGxlbWVudGVkIGluIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjgiPlRpWG1sRWxlbWVudDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhNCI+VGlYbWxDb21tZW50PC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2IwIj5UaVhtbFRleHQ8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E5Ij5UaVhtbERlY2xhcmF0aW9uPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2E0Ij5UaVhtbFVua25vd248L2E+LCBhbmQgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNiMSI+VGlYbWxEb2N1bWVudDwvYT4uICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTU3Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6R2V0RG9jdW1lbnQiIHJlZj0iYTU3IiBhcmdzPSIoKSBjb25zdCAiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj52aXJ0dWFsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogVGlYbWxOb2RlOjpDbG9uZSA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+PC90ZD4KLSAgICAgICAgICA8dGQ+Jm5ic3A7KSZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkPiBjb25zdDxjb2RlPiBbcHVyZSB2aXJ0dWFsXTwvY29kZT48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT4qIFRpWG1sTm9kZTo6R2V0RG9jdW1lbnQgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lMSIgdmFsaWduPSJ0b3AiIG5vd3JhcD4gICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+Jm5ic3A7KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPiBjb25zdDwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5DcmVhdGUgYW4gZXhhY3QgZHVwbGljYXRlIG9mIHRoaXMgbm9kZSBhbmQgcmV0dXJuIGl0LiA8L3A+Ci08cD5UaGUgbWVtb3J5IG11c3QgYmUgZGVsZXRlZCBieSB0aGUgY2FsbGVyLiA8L3A+Ci0KLTxwPkltcGxlbWVudGVkIGluIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhYTQ2NDUzNWVhMTk5NGRiMzM3Y2I2YThjZTRiNTg4YjUiPlRpWG1sRWxlbWVudDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhMGQ2NjYyYmRjNTI0ODhiOWUxMmIzYzdhMDQ1M2QwMjgiPlRpWG1sQ29tbWVudDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhMGM0MTFlOTNhMjc1MzczNjk0NzlkMDM0Y2M4MmRhM2IiPlRpWG1sVGV4dDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTdjZjQ1OTE4NjA0MDE0MWNkYTdhMTgwYTY1ODVjZTJlIj5UaVhtbERlY2xhcmF0aW9uPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2EwOTYwYmI3NDI4YjNmMzQxZGE0NjI0NDIyOTYwNGQ3MyI+VGlYbWxVbmtub3duPC9hPiwgYW5kIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTQ5Njg2NjFjYWI0YTFmNDRhMjMzMjljNmY4ZGIxOTA3Ij5UaVhtbERvY3VtZW50PC9hPi48L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTFmMDU4MjhkMDIzMTUwNzA2ZWViMTZkNmZiM2Y2MzU1Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6Rmlyc3RDaGlsZCIgcmVmPSJhMWYwNTgyOGQwMjMxNTA3MDZlZWIxNmQ2ZmIzZjYzNTUiIGFyZ3M9Iihjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorUmV0dXJuIGEgcG9pbnRlciB0byB0aGUgRG9jdW1lbnQgdGhpcyBub2RlIGxpdmVzIGluLiAKKzxwPgorUmV0dXJucyBudWxsIGlmIG5vdCBpbiBhIGRvY3VtZW50LiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEyOSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Okluc2VydEFmdGVyQ2hpbGQiIHJlZj0iYTI5IiBhcmdzPSIoVGlYbWxOb2RlICphZnRlclRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBUaVhtbE5vZGU6OkZpcnN0Q2hpbGQgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+dmFsdWU8L2VtPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD4gY29uc3Q8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBUaVhtbE5vZGU6Okluc2VydEFmdGVyQ2hpbGQgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lIiBub3dyYXA+IDxlbT5hZnRlclRoaXM8L2VtPiwgPC90ZD4KKyAgICAgICAgPC90cj4KKyAgICAgICAgPHRyPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCBhbGlnbj0icmlnaHQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICZhbXA7Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZSIgbm93cmFwPiA8ZW0+YWRkVGhpczwvZW0+PC90ZD4KKyAgICAgICAgPC90cj4KKyAgICAgICAgPHRyPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgY29sc3Bhbj0iMiI+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPlRoZSBmaXJzdCBjaGlsZCBvZiB0aGlzIG5vZGUgd2l0aCB0aGUgbWF0Y2hpbmcgJ3ZhbHVlJy4gPC9wPgotPHA+V2lsbCBiZSBudWxsIGlmIG5vbmUgZm91bmQuIDwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhODBlMzk3ZmE5NzNjZjUzMjNlMzNiMDcxNTRiMDI0ZjMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpHZXREb2N1bWVudCIgcmVmPSJhODBlMzk3ZmE5NzNjZjUzMjNlMzNiMDcxNTRiMDI0ZjMiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8cD4KK0FkZCBhIG5ldyBub2RlIHJlbGF0ZWQgdG8gdGhpcy4gCis8cD4KK0FkZHMgYSBjaGlsZCBhZnRlciB0aGUgc3BlY2lmaWVkIGNoaWxkLiBSZXR1cm5zIGEgcG9pbnRlciB0byB0aGUgbmV3IG9iamVjdCBvciBOVUxMIGlmIGFuIGVycm9yIG9jY3VyZWQuICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTI4Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6SW5zZXJ0QmVmb3JlQ2hpbGQiIHJlZj0iYTI4IiBhcmdzPSIoVGlYbWxOb2RlICpiZWZvcmVUaGlzLCBjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKSIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPmNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+KiBUaVhtbE5vZGU6OkdldERvY3VtZW50IDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj48L3RkPgotICAgICAgICAgIDx0ZD4mbmJzcDspJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQ+IGNvbnN0PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogVGlYbWxOb2RlOjpJbnNlcnRCZWZvcmVDaGlsZCAgICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+KCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPmJlZm9yZVRoaXM8L2VtPiwgPC90ZD4KKyAgICAgICAgPC90cj4KKyAgICAgICAgPHRyPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCBhbGlnbj0icmlnaHQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICZhbXA7Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZSIgbm93cmFwPiA8ZW0+YWRkVGhpczwvZW0+PC90ZD4KKyAgICAgICAgPC90cj4KKyAgICAgICAgPHRyPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgY29sc3Bhbj0iMiI+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPlJldHVybiBhIHBvaW50ZXIgdG8gdGhlIERvY3VtZW50IHRoaXMgbm9kZSBsaXZlcyBpbi4gPC9wPgotPHA+UmV0dXJucyBudWxsIGlmIG5vdCBpbiBhIGRvY3VtZW50LiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWQ5Yjc1ZTU0ZWMxOTMwMWM4YjRkNWZmNTgzZDBiM2Q1Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6SW5zZXJ0QWZ0ZXJDaGlsZCIgcmVmPSJhZDliNzVlNTRlYzE5MzAxYzhiNGQ1ZmY1ODNkMGIzZDUiIGFyZ3M9IihUaVhtbE5vZGUgKmFmdGVyVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcykiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgorPHA+CitBZGQgYSBuZXcgbm9kZSByZWxhdGVkIHRvIHRoaXMuIAorPHA+CitBZGRzIGEgY2hpbGQgYmVmb3JlIHRoZSBzcGVjaWZpZWQgY2hpbGQuIFJldHVybnMgYSBwb2ludGVyIHRvIHRoZSBuZXcgb2JqZWN0IG9yIE5VTEwgaWYgYW4gZXJyb3Igb2NjdXJlZC4gICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMjYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpJbnNlcnRFbmRDaGlsZCIgcmVmPSJhMjYiIGFyZ3M9Iihjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKSIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogVGlYbWxOb2RlOjpJbnNlcnRBZnRlckNoaWxkIDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+YWZ0ZXJUaGlzPC9lbT4sIDwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFta2V5Ij48L3RkPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gJmFtcDsmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmFkZFRoaXM8L2VtPjwvdGQ+PHRkPiZuYnNwOzwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQ+KTwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIFRpWG1sTm9kZTo6SW5zZXJ0RW5kQ2hpbGQgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICZhbXA7Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZTEiIHZhbGlnbj0idG9wIiBub3dyYXA+IDxlbT5hZGRUaGlzPC9lbT4gICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+Jm5ic3A7KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5BZGQgYSBuZXcgbm9kZSByZWxhdGVkIHRvIHRoaXMuIDwvcD4KLTxwPkFkZHMgYSBjaGlsZCBhZnRlciB0aGUgc3BlY2lmaWVkIGNoaWxkLiBSZXR1cm5zIGEgcG9pbnRlciB0byB0aGUgbmV3IG9iamVjdCBvciBOVUxMIGlmIGFuIGVycm9yIG9jY3VyZWQuIDwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMGMxNDZmYTJmZmYwMTU3YjY4MTU5NDEwMmY0OGNiYzciPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpJbnNlcnRCZWZvcmVDaGlsZCIgcmVmPSJhMGMxNDZmYTJmZmYwMTU3YjY4MTU5NDEwMmY0OGNiYzciIGFyZ3M9IihUaVhtbE5vZGUgKmJlZm9yZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorQWRkIGEgbmV3IG5vZGUgcmVsYXRlZCB0byB0aGlzLiAKKzxwPgorQWRkcyBhIGNoaWxkIHBhc3QgdGhlIExhc3RDaGlsZC4gUmV0dXJucyBhIHBvaW50ZXIgdG8gdGhlIG5ldyBvYmplY3Qgb3IgTlVMTCBpZiBhbiBlcnJvciBvY2N1cmVkLiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEyMCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Okl0ZXJhdGVDaGlsZHJlbiIgcmVmPSJhMjAiIGFyZ3M9Iihjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCAiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIFRpWG1sTm9kZTo6SW5zZXJ0QmVmb3JlQ2hpbGQgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5iZWZvcmVUaGlzPC9lbT4sIDwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFta2V5Ij48L3RkPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gJmFtcDsmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmFkZFRoaXM8L2VtPjwvdGQ+PHRkPiZuYnNwOzwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQ+KTwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIFRpWG1sTm9kZTo6SXRlcmF0ZUNoaWxkcmVuICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZTEiIHZhbGlnbj0idG9wIiBub3dyYXA+IDxlbT5wcmV2aW91czwvZW0+ICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPiZuYnNwOykmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcD4gY29uc3Q8L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+QWRkIGEgbmV3IG5vZGUgcmVsYXRlZCB0byB0aGlzLiA8L3A+Ci08cD5BZGRzIGEgY2hpbGQgYmVmb3JlIHRoZSBzcGVjaWZpZWQgY2hpbGQuIFJldHVybnMgYSBwb2ludGVyIHRvIHRoZSBuZXcgb2JqZWN0IG9yIE5VTEwgaWYgYW4gZXJyb3Igb2NjdXJlZC4gPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFkN2Q0NjMwZTFhMmE5MTZlZGRhMTZiZTIyNDQ4YThiYSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Okluc2VydEVuZENoaWxkIiByZWY9ImFkN2Q0NjMwZTFhMmE5MTZlZGRhMTZiZTIyNDQ4YThiYSIgYXJncz0iKGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBUaVhtbE5vZGU6Okluc2VydEVuZENoaWxkIDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gJmFtcDsmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmFkZFRoaXM8L2VtPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICA8L3RyPgotICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KLQotPHA+QWRkIGEgbmV3IG5vZGUgcmVsYXRlZCB0byB0aGlzLiA8L3A+Ci08cD5BZGRzIGEgY2hpbGQgcGFzdCB0aGUgTGFzdENoaWxkLiBSZXR1cm5zIGEgcG9pbnRlciB0byB0aGUgbmV3IG9iamVjdCBvciBOVUxMIGlmIGFuIGVycm9yIG9jY3VyZWQuIDwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhODYyMTE5NmJhMzcwNWZhMjI2YmVmNGE3NjFjYzUxYjYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpJdGVyYXRlQ2hpbGRyZW4iIHJlZj0iYTg2MjExOTZiYTM3MDVmYTIyNmJlZjRhNzYxY2M1MWI2IiBhcmdzPSIoY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBUaVhtbE5vZGU6Okl0ZXJhdGVDaGlsZHJlbiA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPnByZXZpb3VzPC9lbT48L3RkPgotICAgICAgICAgIDx0ZD4mbmJzcDspJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQ+IGNvbnN0PC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+Ci0KLTxwPkFuIGFsdGVybmF0ZSB3YXkgdG8gd2FsayB0aGUgY2hpbGRyZW4gb2YgYSBub2RlLiA8L3A+Ci08cD5PbmUgd2F5IHRvIGl0ZXJhdGUgb3ZlciBub2RlcyBpczogPC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLQkJCWZvciggY2hpbGQgPSBwYXJlbnQtJmd0O0ZpcnN0Q2hpbGQoKTsgY2hpbGQ7IGNoaWxkID0gY2hpbGQtJmd0O05leHRTaWJsaW5nKCkgKQotCQk8L3ByZT48L2Rpdj48cD5JdGVyYXRlQ2hpbGRyZW4gZG9lcyB0aGUgc2FtZSB0aGluZyB3aXRoIHRoZSBzeW50YXg6IDwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci0JCQljaGlsZCA9IDA7Cis8cD4KK0FuIGFsdGVybmF0ZSB3YXkgdG8gd2FsayB0aGUgY2hpbGRyZW4gb2YgYSBub2RlLiAKKzxwPgorT25lIHdheSB0byBpdGVyYXRlIG92ZXIgbm9kZXMgaXM6IDxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CQkJZm9yKCBjaGlsZCA9IHBhcmVudC0mZ3Q7Rmlyc3RDaGlsZCgpOyBjaGlsZDsgY2hpbGQgPSBjaGlsZC0mZ3Q7TmV4dFNpYmxpbmcoKSApCisJCTwvcHJlPjwvZGl2PjxwPgorSXRlcmF0ZUNoaWxkcmVuIGRvZXMgdGhlIHNhbWUgdGhpbmcgd2l0aCB0aGUgc3ludGF4OiA8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgkJCWNoaWxkID0gMDsKIAkJCXdoaWxlKCBjaGlsZCA9IHBhcmVudC0mZ3Q7SXRlcmF0ZUNoaWxkcmVuKCBjaGlsZCApICkKLQkJPC9wcmU+PC9kaXY+PHA+SXRlcmF0ZUNoaWxkcmVuIHRha2VzIHRoZSBwcmV2aW91cyBjaGlsZCBhcyBpbnB1dCBhbmQgZmluZHMgdGhlIG5leHQgb25lLiBJZiB0aGUgcHJldmlvdXMgY2hpbGQgaXMgbnVsbCwgaXQgcmV0dXJucyB0aGUgZmlyc3QuIEl0ZXJhdGVDaGlsZHJlbiB3aWxsIHJldHVybiBudWxsIHdoZW4gZG9uZS4gPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE1ZDI5NDQyYWU0NmRlNmQwMTY4NDI5MTU2MTk3YmZjNiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OkxpbmtFbmRDaGlsZCIgcmVmPSJhNWQyOTQ0MmFlNDZkZTZkMDE2ODQyOTE1NjE5N2JmYzYiIGFyZ3M9IihUaVhtbE5vZGUgKmFkZFRoaXMpIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKwkJPC9wcmU+PC9kaXY+PHA+CitJdGVyYXRlQ2hpbGRyZW4gdGFrZXMgdGhlIHByZXZpb3VzIGNoaWxkIGFzIGlucHV0IGFuZCBmaW5kcyB0aGUgbmV4dCBvbmUuIElmIHRoZSBwcmV2aW91cyBjaGlsZCBpcyBudWxsLCBpdCByZXR1cm5zIHRoZSBmaXJzdC4gSXRlcmF0ZUNoaWxkcmVuIHdpbGwgcmV0dXJuIG51bGwgd2hlbiBkb25lLiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEyNyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OkxpbmtFbmRDaGlsZCIgcmVmPSJhMjciIGFyZ3M9IihUaVhtbE5vZGUgKmFkZFRoaXMpIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBUaVhtbE5vZGU6OkxpbmtFbmRDaGlsZCA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmFkZFRoaXM8L2VtPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBUaVhtbE5vZGU6OkxpbmtFbmRDaGlsZCAgICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+KCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUxIiB2YWxpZ249InRvcCIgbm93cmFwPiA8ZW0+YWRkVGhpczwvZW0+ICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPiZuYnNwOykmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcD48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+QWRkIGEgbmV3IG5vZGUgcmVsYXRlZCB0byB0aGlzLiA8L3A+Ci08cD5BZGRzIGEgY2hpbGQgcGFzdCB0aGUgTGFzdENoaWxkLjwvcD4KLTxwPk5PVEU6IHRoZSBub2RlIHRvIGJlIGFkZGVkIGlzIHBhc3NlZCBieSBwb2ludGVyLCBhbmQgd2lsbCBiZSBoZW5jZWZvcnRoIG93bmVkIChhbmQgZGVsZXRlZCkgYnkgdGlueVhtbC4gVGhpcyBtZXRob2QgaXMgZWZmaWNpZW50IGFuZCBhdm9pZHMgYW4gZXh0cmEgY29weSwgYnV0IHNob3VsZCBiZSB1c2VkIHdpdGggY2FyZSBhcyBpdCB1c2VzIGEgZGlmZmVyZW50IG1lbW9yeSBtb2RlbCB0aGFuIHRoZSBvdGhlciBpbnNlcnQgZnVuY3Rpb25zLjwvcD4KLTxkbCBjbGFzcz0ic2VlIj48ZHQ+PGI+U2VlIGFsc286PC9iPjwvZHQ+PGRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZDdkNDYzMGUxYTJhOTE2ZWRkYTE2YmUyMjQ0OGE4YmEiIHRpdGxlPSJBZGQgYSBuZXcgbm9kZSByZWxhdGVkIHRvIHRoaXMuIj5JbnNlcnRFbmRDaGlsZDwvYT4gPC9kZD48L2RsPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEwNzFiYTc3ZmQ3YWI3OTQwMmZhODRiN2U5Yjg2MDdiMyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Ok5leHRTaWJsaW5nRWxlbWVudCIgcmVmPSJhMDcxYmE3N2ZkN2FiNzk0MDJmYTg0YjdlOWI4NjA3YjMiIGFyZ3M9Iihjb25zdCBjaGFyICopIGNvbnN0ICIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8cD4KK0FkZCBhIG5ldyBub2RlIHJlbGF0ZWQgdG8gdGhpcy4gCis8cD4KK0FkZHMgYSBjaGlsZCBwYXN0IHRoZSBMYXN0Q2hpbGQuPHA+CitOT1RFOiB0aGUgbm9kZSB0byBiZSBhZGRlZCBpcyBwYXNzZWQgYnkgcG9pbnRlciwgYW5kIHdpbGwgYmUgaGVuY2Vmb3J0aCBvd25lZCAoYW5kIGRlbGV0ZWQpIGJ5IHRpbnlYbWwuIFRoaXMgbWV0aG9kIGlzIGVmZmljaWVudCBhbmQgYXZvaWRzIGFuIGV4dHJhIGNvcHksIGJ1dCBzaG91bGQgYmUgdXNlZCB3aXRoIGNhcmUgYXMgaXQgdXNlcyBhIGRpZmZlcmVudCBtZW1vcnkgbW9kZWwgdGhhbiB0aGUgb3RoZXIgaW5zZXJ0IGZ1bmN0aW9ucy48cD4KKzxkbCBjb21wYWN0PjxkdD48Yj5TZWUgYWxzbzo8L2I+PC9kdD48ZGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNiI+SW5zZXJ0RW5kQ2hpbGQ8L2E+PC9kZD48L2RsPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTQ2Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6TmV4dFNpYmxpbmdFbGVtZW50IiByZWY9ImE0NiIgYXJncz0iKGNvbnN0IGNoYXIgKikgY29uc3QgIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+KiBUaVhtbE5vZGU6Ok5leHRTaWJsaW5nRWxlbWVudCA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+Y29uc3QgY2hhciAqJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+PC90ZD4KLSAgICAgICAgICA8dGQ+Jm5ic3A7KSZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkPiBjb25zdDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4qIFRpWG1sTm9kZTo6TmV4dFNpYmxpbmdFbGVtZW50ICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUxIiB2YWxpZ249InRvcCIgbm93cmFwPiAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4mbmJzcDspJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+IGNvbnN0PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPkNvbnZlbmllbmNlIGZ1bmN0aW9uIHRvIGdldCB0aHJvdWdoIGVsZW1lbnRzLiA8L3A+Ci08cD5DYWxscyBOZXh0U2libGluZyBhbmQgVG9FbGVtZW50LiBXaWxsIHNraXAgYWxsIG5vbi1FbGVtZW50IG5vZGVzLiBSZXR1cm5zIDAgaWYgdGhlcmUgaXMgbm90IGFub3RoZXIgZWxlbWVudC4gPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE3M2FjZjkyOWQ0OWQxMGJkMGU1ZmIzZDMxYjAzNzJkMSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6Ok5leHRTaWJsaW5nRWxlbWVudCIgcmVmPSJhNzNhY2Y5MjlkNDlkMTBiZDBlNWZiM2QzMWIwMzcyZDEiIGFyZ3M9IigpIGNvbnN0ICIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8cD4KK0NvbnZlbmllbmNlIGZ1bmN0aW9uIHRvIGdldCB0aHJvdWdoIGVsZW1lbnRzLiAKKzxwPgorQ2FsbHMgTmV4dFNpYmxpbmcgYW5kIFRvRWxlbWVudC4gV2lsbCBza2lwIGFsbCBub24tRWxlbWVudCBub2Rlcy4gUmV0dXJucyAwIGlmIHRoZXJlIGlzIG5vdCBhbm90aGVyIGVsZW1lbnQuICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTQ0Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6TmV4dFNpYmxpbmdFbGVtZW50IiByZWY9ImE0NCIgYXJncz0iKCkgY29uc3QgIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+KiBUaVhtbE5vZGU6Ok5leHRTaWJsaW5nRWxlbWVudCA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+PC90ZD4KLSAgICAgICAgICA8dGQ+Jm5ic3A7KSZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkPiBjb25zdDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4qIFRpWG1sTm9kZTo6TmV4dFNpYmxpbmdFbGVtZW50ICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZTEiIHZhbGlnbj0idG9wIiBub3dyYXA+ICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPiZuYnNwOykmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcD4gY29uc3Q8L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+Q29udmVuaWVuY2UgZnVuY3Rpb24gdG8gZ2V0IHRocm91Z2ggZWxlbWVudHMuIDwvcD4KLTxwPkNhbGxzIE5leHRTaWJsaW5nIGFuZCBUb0VsZW1lbnQuIFdpbGwgc2tpcCBhbGwgbm9uLUVsZW1lbnQgbm9kZXMuIFJldHVybnMgMCBpZiB0aGVyZSBpcyBub3QgYW5vdGhlciBlbGVtZW50LiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTBjNDllNzM5YTE3Yjk5MzgwNTBjMjJjZDg5NjE3ZmJkIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6UmVwbGFjZUNoaWxkIiByZWY9ImEwYzQ5ZTczOWExN2I5OTM4MDUwYzIyY2Q4OTYxN2ZiZCIgYXJncz0iKFRpWG1sTm9kZSAqcmVwbGFjZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO3dpdGhUaGlzKSIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8cD4KK0NvbnZlbmllbmNlIGZ1bmN0aW9uIHRvIGdldCB0aHJvdWdoIGVsZW1lbnRzLiAKKzxwPgorQ2FsbHMgTmV4dFNpYmxpbmcgYW5kIFRvRWxlbWVudC4gV2lsbCBza2lwIGFsbCBub24tRWxlbWVudCBub2Rlcy4gUmV0dXJucyAwIGlmIHRoZXJlIGlzIG5vdCBhbm90aGVyIGVsZW1lbnQuICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTMwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6UmVwbGFjZUNoaWxkIiByZWY9ImEzMCIgYXJncz0iKFRpWG1sTm9kZSAqcmVwbGFjZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO3dpdGhUaGlzKSIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogVGlYbWxOb2RlOjpSZXBsYWNlQ2hpbGQgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAqJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5yZXBsYWNlVGhpczwvZW0+LCA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBUaVhtbE5vZGU6OlJlcGxhY2VDaGlsZCAgICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+KCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPnJlcGxhY2VUaGlzPC9lbT4sIDwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFta2V5Ij48L3RkPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5jb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gJmFtcDsmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPndpdGhUaGlzPC9lbT48L3RkPjx0ZD4mbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCBhbGlnbj0icmlnaHQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICZhbXA7Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZSIgbm93cmFwPiA8ZW0+d2l0aFRoaXM8L2VtPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQ+KTwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj4pJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBjb2xzcGFuPSIyIj48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+UmVwbGFjZSBhIGNoaWxkIG9mIHRoaXMgbm9kZS4gPC9wPgotPHA+UmV0dXJucyBhIHBvaW50ZXIgdG8gdGhlIG5ldyBvYmplY3Qgb3IgTlVMTCBpZiBhbiBlcnJvciBvY2N1cmVkLiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTJhMzgzMjljYTVkM2YyOGY5OGNlOTMyYjgyOTlhZTkwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6U2V0VmFsdWUiIHJlZj0iYTJhMzgzMjljYTVkM2YyOGY5OGNlOTMyYjgyOTlhZTkwIiBhcmdzPSIoY29uc3QgY2hhciAqX3ZhbHVlKSIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Cis8cD4KK1JlcGxhY2UgYSBjaGlsZCBvZiB0aGlzIG5vZGUuIAorPHA+CitSZXR1cm5zIGEgcG9pbnRlciB0byB0aGUgbmV3IG9iamVjdCBvciBOVUxMIGlmIGFuIGVycm9yIG9jY3VyZWQuICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpTZXRWYWx1ZSIgcmVmPSJhMyIgYXJncz0iKGNvbnN0IGNoYXIgKl92YWx1ZSkiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj52b2lkIFRpWG1sTm9kZTo6U2V0VmFsdWUgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+X3ZhbHVlPC9lbT48L3RkPgotICAgICAgICAgIDx0ZD4mbmJzcDspJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj52b2lkIFRpWG1sTm9kZTo6U2V0VmFsdWUgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+Y29uc3QgY2hhciAqJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZTEiIHZhbGlnbj0idG9wIiBub3dyYXA+IDxlbT5fdmFsdWU8L2VtPiAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4mbmJzcDspJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5DaGFuZ2VzIHRoZSB2YWx1ZSBvZiB0aGUgbm9kZS4gPC9wPgotPHA+RGVmaW5lZCBhczogPC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLQkJRG9jdW1lbnQ6CWZpbGVuYW1lIG9mIHRoZSB4bWwgZmlsZQorPHA+CitDaGFuZ2VzIHRoZSB2YWx1ZSBvZiB0aGUgbm9kZS4gCis8cD4KK0RlZmluZWQgYXM6IDxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CQlEb2N1bWVudDoJZmlsZW5hbWUgb2YgdGhlIHhtbCBmaWxlCiAJCUVsZW1lbnQ6CW5hbWUgb2YgdGhlIGVsZW1lbnQKIAkJQ29tbWVudDoJdGhlIGNvbW1lbnQgdGV4dAogCQlVbmtub3duOgl0aGUgdGFnIGNvbnRlbnRzCiAJCVRleHQ6CQl0aGUgdGV4dCBzdHJpbmcKLQkJPC9wcmU+PC9kaXY+IAotPHA+UmVmZXJlbmNlZCBieSA8YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGhfc291cmNlLmh0bWwjbDAxMTY4Ij5UaVhtbENvbW1lbnQ6OlRpWG1sQ29tbWVudCgpPC9hPiwgYW5kIDxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCNsMDEyMjAiPlRpWG1sVGV4dDo6VGlYbWxUZXh0KCk8L2E+LjwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNTdiOTlkNWM5N2Q2N2E0MmI5NzUyZjUyMTBhMWJhNWUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpUeXBlIiByZWY9ImE1N2I5OWQ1Yzk3ZDY3YTQyYjk3NTJmNTIxMGExYmE1ZSIgYXJncz0iKCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKwkJPC9wcmU+PC9kaXY+ICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTU2Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6VHlwZSIgcmVmPSJhNTYiIGFyZ3M9IigpIGNvbnN0ICIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPmludCBUaVhtbE5vZGU6OlR5cGUgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD4gY29uc3Q8Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPnZpcnR1YWwgaW50IFRpWG1sTm9kZTo6VHlwZSAgICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+KCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUxIiB2YWxpZ249InRvcCIgbm93cmFwPiAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4mbmJzcDspJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+IGNvbnN0PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5RdWVyeSB0aGUgdHlwZSAoYXMgYW4gZW51bWVyYXRlZCB2YWx1ZSwgYWJvdmUpIG9mIHRoaXMgbm9kZS4gPC9wPgotPHA+VGhlIHBvc3NpYmxlIHR5cGVzIGFyZTogVElOWVhNTF9ET0NVTUVOVCwgVElOWVhNTF9FTEVNRU5ULCBUSU5ZWE1MX0NPTU1FTlQsIFRJTllYTUxfVU5LTk9XTiwgVElOWVhNTF9URVhULCBhbmQgVElOWVhNTF9ERUNMQVJBVElPTi4gPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE3Nzk0M2ViOTBkMTJjMjg5MmIxMzM3YTlmNTkxOGI0MSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlZhbHVlIiByZWY9ImE3Nzk0M2ViOTBkMTJjMjg5MmIxMzM3YTlmNTkxOGI0MSIgYXJncz0iKCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKzxwPgorUXVlcnkgdGhlIHR5cGUgKGFzIGFuIGVudW1lcmF0ZWQgdmFsdWUsIGFib3ZlKSBvZiB0aGlzIG5vZGUuIAorPHA+CitUaGUgcG9zc2libGUgdHlwZXMgYXJlOiBET0NVTUVOVCwgRUxFTUVOVCwgQ09NTUVOVCwgVU5LTk9XTiwgVEVYVCwgYW5kIERFQ0xBUkFUSU9OLiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImExIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6VmFsdWUiIHJlZj0iYTEiIGFyZ3M9IigpIGNvbnN0ICIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPmNvbnN0IGNoYXIqIFRpWG1sTm9kZTo6VmFsdWUgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD4gY29uc3Q8Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmNvbnN0IGNoYXIqIFRpWG1sTm9kZTo6VmFsdWUgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lMSIgdmFsaWduPSJ0b3AiIG5vd3JhcD4gICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+Jm5ic3A7KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPiBjb25zdDxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPgogICAgICAgICA8L3RyPgogICAgICAgPC90YWJsZT4KLTwvZGl2PgotPGRpdiBjbGFzcz0ibWVtZG9jIj4KKyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzx0YWJsZSBjZWxsc3BhY2luZz0iNSIgY2VsbHBhZGRpbmc9IjAiIGJvcmRlcj0iMCI+CisgIDx0cj4KKyAgICA8dGQ+CisgICAgICAmbmJzcDsKKyAgICA8L3RkPgorICAgIDx0ZD4KIAotPHA+VGhlIG1lYW5pbmcgb2YgJ3ZhbHVlJyBjaGFuZ2VzIGZvciB0aGUgc3BlY2lmaWMgdHlwZSBvZiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+LiA8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotCQlEb2N1bWVudDoJZmlsZW5hbWUgb2YgdGhlIHhtbCBmaWxlCis8cD4KK1RoZSBtZWFuaW5nIG9mICd2YWx1ZScgY2hhbmdlcyBmb3IgdGhlIHNwZWNpZmljIHR5cGUgb2YgVGlYbWxOb2RlLiAKKzxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JCURvY3VtZW50OglmaWxlbmFtZSBvZiB0aGUgeG1sIGZpbGUKIAkJRWxlbWVudDoJbmFtZSBvZiB0aGUgZWxlbWVudAogCQlDb21tZW50Ogl0aGUgY29tbWVudCB0ZXh0CiAJCVVua25vd246CXRoZSB0YWcgY29udGVudHMKIAkJVGV4dDoJCXRoZSB0ZXh0IHN0cmluZwotCQk8L3ByZT48L2Rpdj48cD5UaGUgc3ViY2xhc3NlcyB3aWxsIHdyYXAgdGhpcyBmdW5jdGlvbi4gPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE2ZDllNTA1NjE5ZDM5YmY1MGJmZDk2MDljOTE2OWVhNSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlZhbHVlU3RyIiByZWY9ImE2ZDllNTA1NjE5ZDM5YmY1MGJmZDk2MDljOTE2OWVhNSIgYXJncz0iKCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KKwkJPC9wcmU+PC9kaXY+PHA+CitUaGUgc3ViY2xhc3NlcyB3aWxsIHdyYXAgdGhpcyBmdW5jdGlvbi4gICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhMiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbE5vZGU6OlZhbHVlU3RyIiByZWY9ImEyIiBhcmdzPSIoKSBjb25zdCAiIC0tPjxwPgorPHRhYmxlIGNsYXNzPSJtZFRhYmxlIiBjZWxscGFkZGluZz0iMiIgY2VsbHNwYWNpbmc9IjAiPgorICA8dHI+CisgICAgPHRkIGNsYXNzPSJtZFJvdyI+CisgICAgICA8dGFibGUgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBib3JkZXI9IjAiPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj5jb25zdCBzdGQ6OnN0cmluZyZhbXA7IFRpWG1sTm9kZTo6VmFsdWVTdHIgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD4gY29uc3Q8Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPmNvbnN0IHN0ZDo6c3RyaW5nJmFtcDsgVGlYbWxOb2RlOjpWYWx1ZVN0ciAgICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+KCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUxIiB2YWxpZ249InRvcCIgbm93cmFwPiAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4mbmJzcDspJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+IGNvbnN0PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5SZXR1cm4gPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3Nzk0M2ViOTBkMTJjMjg5MmIxMzM3YTlmNTkxOGI0MSIgdGl0bGU9IlRoZSBtZWFuaW5nIG9mICYjMzk7dmFsdWUmIzM5OyBjaGFuZ2VzIGZvciB0aGUgc3BlY2lmaWMgdHlwZSBvZiBUaVhtbE5vZGUuIj5WYWx1ZSgpPC9hPiBhcyBhIHN0ZDo6c3RyaW5nLiA8L3A+Ci08cD5JZiB5b3Ugb25seSB1c2UgU1RMLCB0aGlzIGlzIG1vcmUgZWZmaWNpZW50IHRoYW4gY2FsbGluZyA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTc3OTQzZWI5MGQxMmMyODkyYjEzMzdhOWY1OTE4YjQxIiB0aXRsZT0iVGhlIG1lYW5pbmcgb2YgJiMzOTt2YWx1ZSYjMzk7IGNoYW5nZXMgZm9yIHRoZSBzcGVjaWZpYyB0eXBlIG9mIFRpWG1sTm9kZS4iPlZhbHVlKCk8L2E+LiBPbmx5IGF2YWlsYWJsZSBpbiBTVEwgbW9kZS4gPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGhyLz48aDI+RnJpZW5kcyBBbmQgUmVsYXRlZCBGdW5jdGlvbiBEb2N1bWVudGF0aW9uPC9oMj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhODZjZDQ5Y2ZiMTdhODQ0YzAwMTBiMzEzNmFjOTY2YzciPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpvcGVyYXRvciZsdDsmbHQ7IiByZWY9ImE4NmNkNDljZmIxN2E4NDRjMDAxMGIzMTM2YWM5NjZjNyIgYXJncz0iKHN0ZDo6b3N0cmVhbSAmYW1wO291dCwgY29uc3QgVGlYbWxOb2RlICZhbXA7YmFzZSkiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgorPHA+CitSZXR1cm4gPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExIj5WYWx1ZSgpPC9hPiBhcyBhIHN0ZDo6c3RyaW5nLiAKKzxwPgorSWYgeW91IG9ubHkgdXNlIFNUTCwgdGhpcyBpcyBtb3JlIGVmZmljaWVudCB0aGFuIGNhbGxpbmcgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExIj5WYWx1ZSgpPC9hPi4gT25seSBhdmFpbGFibGUgaW4gU1RMIG1vZGUuICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGhyPjxoMj5GcmllbmRzIEFuZCBSZWxhdGVkIEZ1bmN0aW9uIERvY3VtZW50YXRpb248L2gyPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0ibjMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxOb2RlOjpvcGVyYXRvciZsdDsmbHQ7IiByZWY9Im4zIiBhcmdzPSIoc3RkOjpvc3RyZWFtICZhbXA7b3V0LCBjb25zdCBUaVhtbE5vZGUgJmFtcDtiYXNlKSIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPnN0ZDo6b3N0cmVhbSZhbXA7IG9wZXJhdG9yJmx0OyZsdDsgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPnN0ZDo6b3N0cmVhbSAmYW1wOyZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+b3V0PC9lbT4sIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5zdGQ6Om9zdHJlYW0mYW1wOyBvcGVyYXRvciZsdDsmbHQ7ICAgICAgICAgICA8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIHZhbGlnbj0idG9wIj4oJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPnN0ZDo6b3N0cmVhbSAmYW1wOyZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPm91dDwvZW0+LCA8L3RkPgogICAgICAgICA8L3RyPgogICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbWtleSI+PC90ZD4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICZhbXA7Jm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5iYXNlPC9lbT48L3RkPjx0ZD4mbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCBhbGlnbj0icmlnaHQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXA+Y29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICZhbXA7Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZSIgbm93cmFwPiA8ZW0+YmFzZTwvZW0+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZD4pPC90ZD4KLSAgICAgICAgICA8dGQ+PC90ZD48dGQ+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIj4pJm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBjb2xzcGFuPSIyIj48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPkFuIG91dHB1dCBzdHJlYW0gb3BlcmF0b3IsIGZvciBldmVyeSBjbGFzcy4gPC9wPgotPHA+Tm90ZSB0aGF0IHRoaXMgb3V0cHV0cyB3aXRob3V0IGFueSBuZXdsaW5lcyBvciBmb3JtYXR0aW5nLCBhcyBvcHBvc2VkIHRvIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGRlNTZiM2YyZWYxNGM2NTA5MWEzYjkxNjQzN2I1MTIiIHRpdGxlPSJBbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbSBvciB0aGUgc3RyaW5nIGNsYXNzIChUaVhtbFN0cmluZy4uLiI+UHJpbnQoKTwvYT4sIHdoaWNoIGluY2x1ZGVzIHRhYnMgYW5kIG5ldyBsaW5lcy48L3A+Ci08cD5UaGUgb3BlcmF0b3ImbHQ7Jmx0OyBhbmQgb3BlcmF0b3ImZ3Q7Jmd0OyBhcmUgbm90IGNvbXBsZXRlbHkgc3ltbWV0cmljLiBXcml0aW5nIGEgbm9kZSB0byBhIHN0cmVhbSBpcyB2ZXJ5IHdlbGwgZGVmaW5lZC4gWW91J2xsIGdldCBhIG5pY2Ugc3RyZWFtIG9mIG91dHB1dCwgd2l0aG91dCBhbnkgZXh0cmEgd2hpdGVzcGFjZSBvciBuZXdsaW5lcy48L3A+Ci08cD5CdXQgcmVhZGluZyBpcyBub3QgYXMgd2VsbCBkZWZpbmVkLiAoQXMgaXQgYWx3YXlzIGlzLikgSWYgeW91IGNyZWF0ZSBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiAoZm9yIGV4YW1wbGUpIGFuZCByZWFkIHRoYXQgZnJvbSBhbiBpbnB1dCBzdHJlYW0sIHRoZSB0ZXh0IG5lZWRzIHRvIGRlZmluZSBhbiBlbGVtZW50IG9yIGp1bmsgd2lsbCByZXN1bHQuIFRoaXMgaXMgdHJ1ZSBvZiBhbGwgaW5wdXQgc3RyZWFtcywgYnV0IGl0J3Mgd29ydGgga2VlcGluZyBpbiBtaW5kLjwvcD4KLTxwPkEgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgdGl0bGU9IkFsd2F5cyB0aGUgdG9wIGxldmVsIG5vZGUuIj5UaVhtbERvY3VtZW50PC9hPiB3aWxsIHJlYWQgbm9kZXMgdW50aWwgaXQgcmVhZHMgYSByb290IGVsZW1lbnQsIGFuZCBhbGwgdGhlIGNoaWxkcmVuIG9mIHRoYXQgcm9vdCBlbGVtZW50LiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWI1N2JkNDI2NTYzYzkyNjg0NGY2NWE3ODQxMmUxOGI5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6b3BlcmF0b3ImZ3Q7Jmd0OyIgcmVmPSJhYjU3YmQ0MjY1NjNjOTI2ODQ0ZjY1YTc4NDEyZTE4YjkiIGFyZ3M9IihzdGQ6OmlzdHJlYW0gJmFtcDtpbiwgVGlYbWxOb2RlICZhbXA7YmFzZSkiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgorPHA+CitBbiBvdXRwdXQgc3RyZWFtIG9wZXJhdG9yLCBmb3IgZXZlcnkgY2xhc3MuIAorPHA+CitOb3RlIHRoYXQgdGhpcyBvdXRwdXRzIHdpdGhvdXQgYW55IG5ld2xpbmVzIG9yIGZvcm1hdHRpbmcsIGFzIG9wcG9zZWQgdG8gPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EyIj5QcmludCgpPC9hPiwgd2hpY2ggaW5jbHVkZXMgdGFicyBhbmQgbmV3IGxpbmVzLjxwPgorVGhlIG9wZXJhdG9yJmx0OyZsdDsgYW5kIG9wZXJhdG9yJmd0OyZndDsgYXJlIG5vdCBjb21wbGV0ZWx5IHN5bW1ldHJpYy4gV3JpdGluZyBhIG5vZGUgdG8gYSBzdHJlYW0gaXMgdmVyeSB3ZWxsIGRlZmluZWQuIFlvdSdsbCBnZXQgYSBuaWNlIHN0cmVhbSBvZiBvdXRwdXQsIHdpdGhvdXQgYW55IGV4dHJhIHdoaXRlc3BhY2Ugb3IgbmV3bGluZXMuPHA+CitCdXQgcmVhZGluZyBpcyBub3QgYXMgd2VsbCBkZWZpbmVkLiAoQXMgaXQgYWx3YXlzIGlzLikgSWYgeW91IGNyZWF0ZSBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAoZm9yIGV4YW1wbGUpIGFuZCByZWFkIHRoYXQgZnJvbSBhbiBpbnB1dCBzdHJlYW0sIHRoZSB0ZXh0IG5lZWRzIHRvIGRlZmluZSBhbiBlbGVtZW50IG9yIGp1bmsgd2lsbCByZXN1bHQuIFRoaXMgaXMgdHJ1ZSBvZiBhbGwgaW5wdXQgc3RyZWFtcywgYnV0IGl0J3Mgd29ydGgga2VlcGluZyBpbiBtaW5kLjxwPgorQSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPiB3aWxsIHJlYWQgbm9kZXMgdW50aWwgaXQgcmVhZHMgYSByb290IGVsZW1lbnQsIGFuZCBhbGwgdGhlIGNoaWxkcmVuIG9mIHRoYXQgcm9vdCBlbGVtZW50LiAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxhIGNsYXNzPSJhbmNob3IiIG5hbWU9Im4yIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sTm9kZTo6b3BlcmF0b3ImZ3Q7Jmd0OyIgcmVmPSJuMiIgYXJncz0iKHN0ZDo6aXN0cmVhbSAmYW1wO2luLCBUaVhtbE5vZGUgJmFtcDtiYXNlKSIgLS0+PHA+Cis8dGFibGUgY2xhc3M9Im1kVGFibGUiIGNlbGxwYWRkaW5nPSIyIiBjZWxsc3BhY2luZz0iMCI+CisgIDx0cj4KKyAgICA8dGQgY2xhc3M9Im1kUm93Ij4KKyAgICAgIDx0YWJsZSBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIGJvcmRlcj0iMCI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPnN0ZDo6aXN0cmVhbSZhbXA7IG9wZXJhdG9yJmd0OyZndDsgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPnN0ZDo6aXN0cmVhbSAmYW1wOyZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+aW48L2VtPiwgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgdmFsaWduPSJ0b3AiPnN0ZDo6aXN0cmVhbSZhbXA7IG9wZXJhdG9yJmd0OyZndDsgICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPigmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcCB2YWxpZ249InRvcCI+c3RkOjppc3RyZWFtICZhbXA7Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kbmFtZSIgbm93cmFwPiA8ZW0+aW48L2VtPiwgPC90ZD4KICAgICAgICAgPC90cj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1rZXkiPjwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAmYW1wOyZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+YmFzZTwvZW0+PC90ZD48dGQ+Jm5ic3A7PC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiBub3dyYXAgYWxpZ249InJpZ2h0Ij48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAmYW1wOyZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZG5hbWUiIG5vd3JhcD4gPGVtPmJhc2U8L2VtPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQ+KTwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCI+KSZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgY29sc3Bhbj0iMiI+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+CiAgICAgICAgIDwvdHI+CiAgICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgorICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPHRhYmxlIGNlbGxzcGFjaW5nPSI1IiBjZWxscGFkZGluZz0iMCIgYm9yZGVyPSIwIj4KKyAgPHRyPgorICAgIDx0ZD4KKyAgICAgICZuYnNwOworICAgIDwvdGQ+CisgICAgPHRkPgogCi08cD5BbiBpbnB1dCBzdHJlYW0gb3BlcmF0b3IsIGZvciBldmVyeSBjbGFzcy4gPC9wPgotPHA+VG9sZXJhbnQgb2YgbmV3bGluZXMgYW5kIGZvcm1hdHRpbmcsIGJ1dCBkb2Vzbid0IGV4cGVjdCB0aGVtLiA8L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08aHIvPlRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGlzIGNsYXNzIHdhcyBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIGZpbGU6PHVsPgotPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPjwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKKzxwPgorQW4gaW5wdXQgc3RyZWFtIG9wZXJhdG9yLCBmb3IgZXZlcnkgY2xhc3MuIAorPHA+CitUb2xlcmFudCBvZiBuZXdsaW5lcyBhbmQgZm9ybWF0dGluZywgYnV0IGRvZXNuJ3QgZXhwZWN0IHRoZW0uICAgIDwvdGQ+CisgIDwvdHI+Cis8L3RhYmxlPgorPGhyPlRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGlzIGNsYXNzIHdhcyBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIGZpbGU6PHVsPgorPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aC1zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPjwvdWw+Cis8aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9jbGFzc1RpWG1sTm9kZS5wbmcgYi9kb2NzL2NsYXNzVGlYbWxOb2RlLnBuZwppbmRleCA3N2VmODc2Li42YTY2M2NmIDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxOb2RlLnBuZworKysgYi9kb2NzL2NsYXNzVGlYbWxOb2RlLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kb2NzL2NsYXNzVGlYbWxQcmludGVyLW1lbWJlcnMuaHRtbCBiL2RvY3MvY2xhc3NUaVhtbFByaW50ZXItbWVtYmVycy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiMWU2Zjc1Li4wMDAwMDAwCi0tLSBhL2RvY3MvY2xhc3NUaVhtbFByaW50ZXItbWVtYmVycy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IE1lbWJlciBMaXN0PC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotPGgxPlRpWG1sUHJpbnRlciBNZW1iZXIgTGlzdDwvaDE+VGhpcyBpcyB0aGUgY29tcGxldGUgbGlzdCBvZiBtZW1iZXJzIGZvciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwiPlRpWG1sUHJpbnRlcjwvYT4sIGluY2x1ZGluZyBhbGwgaW5oZXJpdGVkIG1lbWJlcnMuPHRhYmxlPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTg1OWVlZGU5NTk3ZDNlMDM1NWI3Nzc1N2JlNDg3MzVlIj5DU3RyPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sIj5UaVhtbFByaW50ZXI8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2FiYjMzZWM3ZDRiYWQ2YWFlYjU3ZjQzMDQzOTRiMTMzZCI+SW5kZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sIj5UaVhtbFByaW50ZXI8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2ExMWYxYjQ4MDRhNDYwYjE3NWVjMjQ0ZWI1NzI0ZDk2ZCI+TGluZUJyZWFrPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sIj5UaVhtbFByaW50ZXI8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2EyMTMzNzdhNDA3MGM3ZTYyNWJhZTU5NzE2YjA4OWU1ZSI+U2V0SW5kZW50PC9hPihjb25zdCBjaGFyICpfaW5kZW50KTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCI+VGlYbWxQcmludGVyPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhNGJlMWUzN2U2OWUzODU4YzU5NjM1YWE5NDcxNzRmZTYiPlNldExpbmVCcmVhazwvYT4oY29uc3QgY2hhciAqX2xpbmVCcmVhayk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwiPlRpWG1sUHJpbnRlcjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYWIyM2E5MDYyOWUzNzRjYjFjYWRjYTA5MDQ2OGJiZDE5Ij5TZXRTdHJlYW1QcmludGluZzwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCI+VGlYbWxQcmludGVyPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhZDAxMzc1YWU5MTk5YmQyZjQ4MjUyZWFkZGNlMzAzOWQiPlNpemU8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwiPlRpWG1sUHJpbnRlcjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTNiZDRkYWY0NDMwOWI0MWY1ODEzYTgzM2NhYTBkMWM5Ij5TdHI8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwiPlRpWG1sUHJpbnRlcjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYWNlMWIxNGQzM2VlZGUyNTc1YzA3NDNlMjM1MGY2YTM4Ij5WaXNpdDwvYT4oY29uc3QgVGlYbWxEZWNsYXJhdGlvbiAmYW1wO2RlY2xhcmF0aW9uKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCI+VGlYbWxQcmludGVyPC9hPjwvdGQ+PHRkPjxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTcxMWU3ZDY1ZDRhZjllYzcwOTc3NTY4ZDI0NTFmYjFjIj5WaXNpdDwvYT4oY29uc3QgVGlYbWxUZXh0ICZhbXA7dGV4dCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwiPlRpWG1sUHJpbnRlcjwvYT48L3RkPjx0ZD48Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2E4M2MxM2Q2Yjk4MDA2NGIzMGY5ODlmOWEzNTQ5ODk3OSI+VmlzaXQ8L2E+KGNvbnN0IFRpWG1sQ29tbWVudCAmYW1wO2NvbW1lbnQpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sIj5UaVhtbFByaW50ZXI8L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhZDJkY2E2ZGQxMDZlODk4MmZkM2M3ZGIxZjMzMzA5NzAiPlZpc2l0PC9hPihjb25zdCBUaVhtbFVua25vd24gJmFtcDt1bmtub3duKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCI+VGlYbWxQcmludGVyPC9hPjwvdGQ+PHRkPjxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTc5OWY0ZjAzODg1NzBjYmI1NGMwZDNjMzQ1ZmVmN2MxIj5WaXNpdEVudGVyPC9hPihjb25zdCBUaVhtbERvY3VtZW50ICZhbXA7ZG9jKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCI+VGlYbWxQcmludGVyPC9hPjwvdGQ+PHRkPjxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTBjNWU3YmY4NjIyODM4NDE3YTBkMGJmYjhmNDMzODU0Ij5WaXNpdEVudGVyPC9hPihjb25zdCBUaVhtbEVsZW1lbnQgJmFtcDtlbGVtZW50LCBjb25zdCBUaVhtbEF0dHJpYnV0ZSAqZmlyc3RBdHRyaWJ1dGUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sIj5UaVhtbFByaW50ZXI8L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhNjZiMzNlZGQ3NmM1MzhiNDYyZjc4OWI3OTdhNGZkZjIiPlZpc2l0RXhpdDwvYT4oY29uc3QgVGlYbWxEb2N1bWVudCAmYW1wO2RvYyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwiPlRpWG1sUHJpbnRlcjwvYT48L3RkPjx0ZD48Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2ExODUzY2YyZjZlNjNhZDRiNDIzMmI0ODM1ZTBhY2FmMCI+VmlzaXRFeGl0PC9hPihjb25zdCBUaVhtbEVsZW1lbnQgJmFtcDtlbGVtZW50KTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCI+VGlYbWxQcmludGVyPC9hPjwvdGQ+PHRkPjxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotPC90YWJsZT48L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbFByaW50ZXIuaHRtbCBiL2RvY3MvY2xhc3NUaVhtbFByaW50ZXIuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjhiZTFlOC4uMDAwMDAwMAotLS0gYS9kb2NzL2NsYXNzVGlYbWxQcmludGVyLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxODEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IFRpWG1sUHJpbnRlciBDbGFzcyBSZWZlcmVuY2U8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci08aDE+VGlYbWxQcmludGVyIENsYXNzIFJlZmVyZW5jZTwvaDE+PCEtLSBkb3h5dGFnOiBjbGFzcz0iVGlYbWxQcmludGVyIiAtLT48IS0tIGRveHl0YWc6IGluaGVyaXRzPSJUaVhtbFZpc2l0b3IiIC0tPgotPHA+UHJpbnQgdG8gbWVtb3J5IGZ1bmN0aW9uYWxpdHkuICAKLTxhIGhyZWY9IiNfZGV0YWlscyI+TW9yZS4uLjwvYT48L3A+Ci0KLTxwPjxjb2RlPiNpbmNsdWRlICZsdDs8YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGhfc291cmNlLmh0bWwiPnRpbnl4bWwuaDwvYT4mZ3Q7PC9jb2RlPjwvcD4KLTxkaXYgY2xhc3M9ImR5bmhlYWRlciI+Ci1Jbmhlcml0YW5jZSBkaWFncmFtIGZvciBUaVhtbFByaW50ZXI6PC9kaXY+Ci08ZGl2IGNsYXNzPSJkeW5zZWN0aW9uIj4KLSA8ZGl2IGNsYXNzPSJjZW50ZXIiPgotICA8aW1nIHNyYz0iY2xhc3NUaVhtbFByaW50ZXIucG5nIiB1c2VtYXA9IiNUaVhtbFByaW50ZXJfbWFwIiBhbHQ9IiIvPgotICA8bWFwIGlkPSJUaVhtbFByaW50ZXJfbWFwIiBuYW1lPSJUaVhtbFByaW50ZXJfbWFwIj4KLTxhcmVhIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwiIGFsdD0iVGlYbWxWaXNpdG9yIiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDAsODEsMjQiLz4KLTwvbWFwPgotIDwvZGl2PgotPC9kaXY+Ci0KLTxwPjxhIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLW1lbWJlcnMuaHRtbCI+TGlzdCBvZiBhbGwgbWVtYmVycy48L2E+PC9wPgotPHRhYmxlIGJvcmRlcj0iMCIgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIj4KLTx0cj48dGQgY29sc3Bhbj0iMiI+PGgyPlB1YmxpYyBNZW1iZXIgRnVuY3Rpb25zPC9oMj48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE3OTlmNGYwMzg4NTcwY2JiNTRjMGQzYzM0NWZlZjdjMSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFByaW50ZXI6OlZpc2l0RW50ZXIiIHJlZj0iYTc5OWY0ZjAzODg1NzBjYmI1NGMwZDNjMzQ1ZmVmN2MxIiBhcmdzPSIoY29uc3QgVGlYbWxEb2N1bWVudCAmYW1wO2RvYykiIC0tPgotdmlydHVhbCBib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhNzk5ZjRmMDM4ODU3MGNiYjU0YzBkM2MzNDVmZWY3YzEiPlZpc2l0RW50ZXI8L2E+IChjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPiAmYW1wO2RvYyk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5WaXNpdCBhIGRvY3VtZW50LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTY2YjMzZWRkNzZjNTM4YjQ2MmY3ODliNzk3YTRmZGYyIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sUHJpbnRlcjo6VmlzaXRFeGl0IiByZWY9ImE2NmIzM2VkZDc2YzUzOGI0NjJmNzg5Yjc5N2E0ZmRmMiIgYXJncz0iKGNvbnN0IFRpWG1sRG9jdW1lbnQgJmFtcDtkb2MpIiAtLT4KLXZpcnR1YWwgYm9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTY2YjMzZWRkNzZjNTM4YjQ2MmY3ODliNzk3YTRmZGYyIj5WaXNpdEV4aXQ8L2E+IChjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPiAmYW1wO2RvYyk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5WaXNpdCBhIGRvY3VtZW50LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTBjNWU3YmY4NjIyODM4NDE3YTBkMGJmYjhmNDMzODU0Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sUHJpbnRlcjo6VmlzaXRFbnRlciIgcmVmPSJhMGM1ZTdiZjg2MjI4Mzg0MTdhMGQwYmZiOGY0MzM4NTQiIGFyZ3M9Iihjb25zdCBUaVhtbEVsZW1lbnQgJmFtcDtlbGVtZW50LCBjb25zdCBUaVhtbEF0dHJpYnV0ZSAqZmlyc3RBdHRyaWJ1dGUpIiAtLT4KLXZpcnR1YWwgYm9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTBjNWU3YmY4NjIyODM4NDE3YTBkMGJmYjhmNDMzODU0Ij5WaXNpdEVudGVyPC9hPiAoY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+ICZhbXA7ZWxlbWVudCwgY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPiAqZmlyc3RBdHRyaWJ1dGUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+VmlzaXQgYW4gZWxlbWVudC4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImExODUzY2YyZjZlNjNhZDRiNDIzMmI0ODM1ZTBhY2FmMCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFByaW50ZXI6OlZpc2l0RXhpdCIgcmVmPSJhMTg1M2NmMmY2ZTYzYWQ0YjQyMzJiNDgzNWUwYWNhZjAiIGFyZ3M9Iihjb25zdCBUaVhtbEVsZW1lbnQgJmFtcDtlbGVtZW50KSIgLS0+Ci12aXJ0dWFsIGJvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2ExODUzY2YyZjZlNjNhZDRiNDIzMmI0ODM1ZTBhY2FmMCI+VmlzaXRFeGl0PC9hPiAoY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+ICZhbXA7ZWxlbWVudCk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5WaXNpdCBhbiBlbGVtZW50LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWNlMWIxNGQzM2VlZGUyNTc1YzA3NDNlMjM1MGY2YTM4Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sUHJpbnRlcjo6VmlzaXQiIHJlZj0iYWNlMWIxNGQzM2VlZGUyNTc1YzA3NDNlMjM1MGY2YTM4IiBhcmdzPSIoY29uc3QgVGlYbWxEZWNsYXJhdGlvbiAmYW1wO2RlY2xhcmF0aW9uKSIgLS0+Ci12aXJ0dWFsIGJvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2FjZTFiMTRkMzNlZWRlMjU3NWMwNzQzZTIzNTBmNmEzOCI+VmlzaXQ8L2E+IChjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPiAmYW1wO2RlY2xhcmF0aW9uKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlZpc2l0IGEgZGVjbGFyYXRpb24uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNzExZTdkNjVkNGFmOWVjNzA5Nzc1NjhkMjQ1MWZiMWMiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxQcmludGVyOjpWaXNpdCIgcmVmPSJhNzExZTdkNjVkNGFmOWVjNzA5Nzc1NjhkMjQ1MWZiMWMiIGFyZ3M9Iihjb25zdCBUaVhtbFRleHQgJmFtcDt0ZXh0KSIgLS0+Ci12aXJ0dWFsIGJvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2E3MTFlN2Q2NWQ0YWY5ZWM3MDk3NzU2OGQyNDUxZmIxYyI+VmlzaXQ8L2E+IChjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT4gJmFtcDt0ZXh0KTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlZpc2l0IGEgdGV4dCBub2RlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTgzYzEzZDZiOTgwMDY0YjMwZjk4OWY5YTM1NDk4OTc5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sUHJpbnRlcjo6VmlzaXQiIHJlZj0iYTgzYzEzZDZiOTgwMDY0YjMwZjk4OWY5YTM1NDk4OTc5IiBhcmdzPSIoY29uc3QgVGlYbWxDb21tZW50ICZhbXA7Y29tbWVudCkiIC0tPgotdmlydHVhbCBib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhODNjMTNkNmI5ODAwNjRiMzBmOTg5ZjlhMzU0OTg5NzkiPlZpc2l0PC9hPiAoY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIj5UaVhtbENvbW1lbnQ8L2E+ICZhbXA7Y29tbWVudCk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5WaXNpdCBhIGNvbW1lbnQgbm9kZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFkMmRjYTZkZDEwNmU4OTgyZmQzYzdkYjFmMzMzMDk3MCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFByaW50ZXI6OlZpc2l0IiByZWY9ImFkMmRjYTZkZDEwNmU4OTgyZmQzYzdkYjFmMzMzMDk3MCIgYXJncz0iKGNvbnN0IFRpWG1sVW5rbm93biAmYW1wO3Vua25vd24pIiAtLT4KLXZpcnR1YWwgYm9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYWQyZGNhNmRkMTA2ZTg5ODJmZDNjN2RiMWYzMzMwOTcwIj5WaXNpdDwvYT4gKGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPiAmYW1wO3Vua25vd24pPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+VmlzaXQgYW4gdW5rbm93biBub2RlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj52b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhMjEzMzc3YTQwNzBjN2U2MjViYWU1OTcxNmIwODllNWUiPlNldEluZGVudDwvYT4gKGNvbnN0IGNoYXIgKl9pbmRlbnQpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+U2V0IHRoZSBpbmRlbnQgY2hhcmFjdGVycyBmb3IgcHJpbnRpbmcuICA8YSBocmVmPSIjYTIxMzM3N2E0MDcwYzdlNjI1YmFlNTk3MTZiMDg5ZTVlIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFiYjMzZWM3ZDRiYWQ2YWFlYjU3ZjQzMDQzOTRiMTMzZCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFByaW50ZXI6OkluZGVudCIgcmVmPSJhYmIzM2VjN2Q0YmFkNmFhZWI1N2Y0MzA0Mzk0YjEzM2QiIGFyZ3M9IigpIiAtLT4KLWNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYWJiMzNlYzdkNGJhZDZhYWViNTdmNDMwNDM5NGIxMzNkIj5JbmRlbnQ8L2E+ICgpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UXVlcnkgdGhlIGluZGVudGlvbiBzdHJpbmcuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZvaWQmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2E0YmUxZTM3ZTY5ZTM4NThjNTk2MzVhYTk0NzE3NGZlNiI+U2V0TGluZUJyZWFrPC9hPiAoY29uc3QgY2hhciAqX2xpbmVCcmVhayk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5TZXQgdGhlIGxpbmUgYnJlYWtpbmcgc3RyaW5nLiAgPGEgaHJlZj0iI2E0YmUxZTM3ZTY5ZTM4NThjNTk2MzVhYTk0NzE3NGZlNiI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhMTFmMWI0ODA0YTQ2MGIxNzVlYzI0NGViNTcyNGQ5NmQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxQcmludGVyOjpMaW5lQnJlYWsiIHJlZj0iYTExZjFiNDgwNGE0NjBiMTc1ZWMyNDRlYjU3MjRkOTZkIiBhcmdzPSIoKSIgLS0+Ci1jb25zdCBjaGFyICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2ExMWYxYjQ4MDRhNDYwYjE3NWVjMjQ0ZWI1NzI0ZDk2ZCI+TGluZUJyZWFrPC9hPiAoKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlF1ZXJ5IHRoZSBjdXJyZW50IGxpbmUgYnJlYWtpbmcgc3RyaW5nLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj52b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhYjIzYTkwNjI5ZTM3NGNiMWNhZGNhMDkwNDY4YmJkMTkiPlNldFN0cmVhbVByaW50aW5nPC9hPiAoKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlN3aXRjaCBvdmVyIHRvICJzdHJlYW0gcHJpbnRpbmciIHdoaWNoIGlzIHRoZSBtb3N0IGRlbnNlIGZvcm1hdHRpbmcgd2l0aG91dCBsaW5lYnJlYWtzLiAgPGEgaHJlZj0iI2FiMjNhOTA2MjllMzc0Y2IxY2FkY2EwOTA0NjhiYmQxOSI+PC9hPjxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhODU5ZWVkZTk1OTdkM2UwMzU1Yjc3NzU3YmU0ODczNWUiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxQcmludGVyOjpDU3RyIiByZWY9ImE4NTllZWRlOTU5N2QzZTAzNTViNzc3NTdiZTQ4NzM1ZSIgYXJncz0iKCkiIC0tPgotY29uc3QgY2hhciAqJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhODU5ZWVkZTk1OTdkM2UwMzU1Yjc3NzU3YmU0ODczNWUiPkNTdHI8L2E+ICgpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIHRoZSByZXN1bHQuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhZDAxMzc1YWU5MTk5YmQyZjQ4MjUyZWFkZGNlMzAzOWQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxQcmludGVyOjpTaXplIiByZWY9ImFkMDEzNzVhZTkxOTliZDJmNDgyNTJlYWRkY2UzMDM5ZCIgYXJncz0iKCkiIC0tPgotc2l6ZV90Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhZDAxMzc1YWU5MTk5YmQyZjQ4MjUyZWFkZGNlMzAzOWQiPlNpemU8L2E+ICgpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIHRoZSBsZW5ndGggb2YgdGhlIHJlc3VsdCBzdHJpbmcuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhM2JkNGRhZjQ0MzA5YjQxZjU4MTNhODMzY2FhMGQxYzkiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxQcmludGVyOjpTdHIiIHJlZj0iYTNiZDRkYWY0NDMwOWI0MWY1ODEzYTgzM2NhYTBkMWM5IiBhcmdzPSIoKSIgLS0+Ci1jb25zdCBzdGQ6OnN0cmluZyAmYW1wOyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTNiZDRkYWY0NDMwOWI0MWY1ODEzYTgzM2NhYTBkMWM5Ij5TdHI8L2E+ICgpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UmV0dXJuIHRoZSByZXN1bHQuIDxici8+PC90ZD48L3RyPgotPC90YWJsZT4KLTxoci8+PGEgbmFtZT0iX2RldGFpbHMiPjwvYT48aDI+RGV0YWlsZWQgRGVzY3JpcHRpb248L2gyPgotPHA+UHJpbnQgdG8gbWVtb3J5IGZ1bmN0aW9uYWxpdHkuIDwvcD4KLTxwPlRoZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwiIHRpdGxlPSJQcmludCB0byBtZW1vcnkgZnVuY3Rpb25hbGl0eS4iPlRpWG1sUHJpbnRlcjwvYT4gaXMgdXNlZnVsIHdoZW4geW91IG5lZWQgdG86PC9wPgotPG9sIHR5cGU9IjEiPgotPGxpPlByaW50IHRvIG1lbW9yeSAoZXNwZWNpYWxseSBpbiBub24tU1RMIG1vZGUpPC9saT4KLTxsaT5Db250cm9sIGZvcm1hdHRpbmcgKGxpbmUgZW5kaW5ncywgZXRjLik8L2xpPgotPC9vbD4KLTxwPldoZW4gY29uc3RydWN0ZWQsIHRoZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwiIHRpdGxlPSJQcmludCB0byBtZW1vcnkgZnVuY3Rpb25hbGl0eS4iPlRpWG1sUHJpbnRlcjwvYT4gaXMgaW4gaXRzIGRlZmF1bHQgInByZXR0eSBwcmludGluZyIgbW9kZS4gQmVmb3JlIGNhbGxpbmcgQWNjZXB0KCkgeW91IGNhbiBjYWxsIG1ldGhvZHMgdG8gY29udHJvbCB0aGUgcHJpbnRpbmcgb2YgdGhlIFhNTCBkb2N1bWVudC4gQWZ0ZXIgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjYzBmODhiNzQ2MmM2Y2I3MzgwOWQ0MTBhNGY1YmI4NiIgdGl0bGU9IkFjY2VwdCBhIGhpZXJjaGljYWwgdmlzaXQgdGhlIG5vZGVzIGluIHRoZSBUaW55WE1MIERPTS4iPlRpWG1sTm9kZTo6QWNjZXB0KCk8L2E+IGlzIGNhbGxlZCwgdGhlIHByaW50ZWQgZG9jdW1lbnQgY2FuIGJlIGFjY2Vzc2VkIHZpYSB0aGUgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2E4NTllZWRlOTU5N2QzZTAzNTViNzc3NTdiZTQ4NzM1ZSIgdGl0bGU9IlJldHVybiB0aGUgcmVzdWx0LiI+Q1N0cigpPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2EzYmQ0ZGFmNDQzMDliNDFmNTgxM2E4MzNjYWEwZDFjOSIgdGl0bGU9IlJldHVybiB0aGUgcmVzdWx0LiI+U3RyKCk8L2E+LCBhbmQgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2FkMDEzNzVhZTkxOTliZDJmNDgyNTJlYWRkY2UzMDM5ZCIgdGl0bGU9IlJldHVybiB0aGUgbGVuZ3RoIG9mIHRoZSByZXN1bHQgc3RyaW5nLiI+U2l6ZSgpPC9hPiBtZXRob2RzLjwvcD4KLTxwPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCIgdGl0bGU9IlByaW50IHRvIG1lbW9yeSBmdW5jdGlvbmFsaXR5LiI+VGlYbWxQcmludGVyPC9hPiB1c2VzIHRoZSBWaXNpdG9yIEFQSS4gPC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLQlUaVhtbFByaW50ZXIgcHJpbnRlcjsKLQlwcmludGVyLlNldEluZGVudCggIlx0IiApOwotCi0JZG9jLkFjY2VwdCggJmFtcDtwcmludGVyICk7Ci0JZnByaW50Ziggc3Rkb3V0LCAiJXMiLCBwcmludGVyLkNTdHIoKSApOwotCTwvcHJlPjwvZGl2PiA8aHIvPjxoMj5NZW1iZXIgRnVuY3Rpb24gRG9jdW1lbnRhdGlvbjwvaDI+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTIxMzM3N2E0MDcwYzdlNjI1YmFlNTk3MTZiMDg5ZTVlIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sUHJpbnRlcjo6U2V0SW5kZW50IiByZWY9ImEyMTMzNzdhNDA3MGM3ZTYyNWJhZTU5NzE2YjA4OWU1ZSIgYXJncz0iKGNvbnN0IGNoYXIgKl9pbmRlbnQpIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+dm9pZCBUaVhtbFByaW50ZXI6OlNldEluZGVudCA8L3RkPgotICAgICAgICAgIDx0ZD4oPC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtdHlwZSI+Y29uc3QgY2hhciAqJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5faW5kZW50PC9lbT48L3RkPgotICAgICAgICAgIDx0ZD4mbmJzcDspJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgotCi08cD5TZXQgdGhlIGluZGVudCBjaGFyYWN0ZXJzIGZvciBwcmludGluZy4gPC9wPgotPHA+QnkgZGVmYXVsdCA0IHNwYWNlcyBidXQgdGFiICgpIGlzIGFsc28gdXNlZnVsLCBvciBudWxsL2VtcHR5IHN0cmluZyBmb3Igbm8gaW5kZW50YXRpb24uIDwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxhIGNsYXNzPSJhbmNob3IiIGlkPSJhNGJlMWUzN2U2OWUzODU4YzU5NjM1YWE5NDcxNzRmZTYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxQcmludGVyOjpTZXRMaW5lQnJlYWsiIHJlZj0iYTRiZTFlMzdlNjllMzg1OGM1OTYzNWFhOTQ3MTc0ZmU2IiBhcmdzPSIoY29uc3QgY2hhciAqX2xpbmVCcmVhaykiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj52b2lkIFRpWG1sUHJpbnRlcjo6U2V0TGluZUJyZWFrIDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5jb25zdCBjaGFyICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPl9saW5lQnJlYWs8L2VtPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+Ci0KLTxwPlNldCB0aGUgbGluZSBicmVha2luZyBzdHJpbmcuIDwvcD4KLTxwPkJ5IGRlZmF1bHQgc2V0IHRvIG5ld2xpbmUgKDxici8+Ci0pLiBTb21lIG9wZXJhdGluZyBzeXN0ZW1zIHByZWZlciBvdGhlciBjaGFyYWN0ZXJzLCBvciBjYW4gYmUgc2V0IHRvIHRoZSBudWxsL2VtcHR5IHN0cmluZyBmb3Igbm8gaW5kZW5hdGlvbi4gPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFiMjNhOTA2MjllMzc0Y2IxY2FkY2EwOTA0NjhiYmQxOSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFByaW50ZXI6OlNldFN0cmVhbVByaW50aW5nIiByZWY9ImFiMjNhOTA2MjllMzc0Y2IxY2FkY2EwOTA0NjhiYmQxOSIgYXJncz0iKCkiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJtZW1uYW1lIj52b2lkIFRpWG1sUHJpbnRlcjo6U2V0U3RyZWFtUHJpbnRpbmcgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPjwvdGQ+Ci0gICAgICAgICAgPHRkPiZuYnNwOykmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+Ci0KLTxwPlN3aXRjaCBvdmVyIHRvICJzdHJlYW0gcHJpbnRpbmciIHdoaWNoIGlzIHRoZSBtb3N0IGRlbnNlIGZvcm1hdHRpbmcgd2l0aG91dCBsaW5lYnJlYWtzLiA8L3A+Ci08cD5Db21tb24gd2hlbiB0aGUgWE1MIGlzIG5lZWRlZCBmb3IgbmV0d29yayB0cmFuc21pc3Npb24uIDwvcD4KLQotPC9kaXY+Ci08L2Rpdj4KLTxoci8+VGhlIGRvY3VtZW50YXRpb24gZm9yIHRoaXMgY2xhc3Mgd2FzIGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgZmlsZTo8dWw+Ci08bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+PC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbFByaW50ZXIucG5nIGIvZG9jcy9jbGFzc1RpWG1sUHJpbnRlci5wbmcKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZhNWZmOGUuLjAwMDAwMDAKLS0tIGEvZG9jcy9jbGFzc1RpWG1sUHJpbnRlci5wbmcKKysrIC9kZXYvbnVsbApCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kb2NzL2NsYXNzVGlYbWxUZXh0LW1lbWJlcnMuaHRtbCBiL2RvY3MvY2xhc3NUaVhtbFRleHQtbWVtYmVycy5odG1sCmluZGV4IDExZjdlZjYuLmNlOWJjNGUgMTAwNjQ0Ci0tLSBhL2RvY3MvY2xhc3NUaVhtbFRleHQtbWVtYmVycy5odG1sCisrKyBiL2RvY3MvY2xhc3NUaVhtbFRleHQtbWVtYmVycy5odG1sCkBAIC0xLDExMSArMSw4NCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PWlzby04ODU5LTEiPgogPHRpdGxlPlRpbnlYbWw6IE1lbWJlciBMaXN0PC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotPGgxPlRpWG1sVGV4dCBNZW1iZXIgTGlzdDwvaDE+VGhpcyBpcyB0aGUgY29tcGxldGUgbGlzdCBvZiBtZW1iZXJzIGZvciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT4sIGluY2x1ZGluZyBhbGwgaW5oZXJpdGVkIG1lbWJlcnMuPHRhYmxlPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTg0ODNkNDQxNWNlOWRlNmM0ZmE4ZjYzZDA2N2Q1ZGU2Ij5BY2NlcHQ8L2E+KFRpWG1sVmlzaXRvciAqY29udGVudCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhZDFhNmE2YjgzZmEyMjcxMDIyZGQ5N2MwNzJhMmI1ODYiPkNEQVRBPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzA4ZTdmOTUzZGY2MWQ0ZDJkMTJmNzMxNzE1NTBhNGIiPkNsZWFyPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTBjNDExZTkzYTI3NTM3MzY5NDc5ZDAzNGNjODJkYTNiIj5DbG9uZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT48L3RkPjx0ZD48Y29kZT4gW3Byb3RlY3RlZCwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWI1NGJmYjliNzBmZTZkZDI3NmU3YjI3OWNhYjdmMDAzIj5Db2x1bW48L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E2YmQ4YzMxNWMxYWNiMDllMzQxMDdiODczNjUwNTk0OCI+RW5jb2RlU3RyaW5nPC9hPihjb25zdCBUSVhNTF9TVFJJTkcgJmFtcDtzdHIsIFRJWE1MX1NUUklORyAqb3V0KTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbc3RhdGljXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDRjOGVlZTI2YmJlMmQxYjI3NjIwMzhkZjlkZGUyZjAiPkZpcnN0Q2hpbGQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExZjA1ODI4ZDAyMzE1MDcwNmVlYjE2ZDZmYjNmNjM1NSI+Rmlyc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiYzhiZjMyYmU2NDE5ZWM0NTNhNzMxODY4ZGUxOTU1NCI+Rmlyc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDdmNjIwMGE1OTU2YzcyM2M1YjUyZDcwZjI5YzQ2ZjYiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEwZDI2NjljY2I1ZTI5ZTAyZmNiMGU0NDA4Njg1ZWY2Ij5GaXJzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWY0ZmI2NTJmNmJkNzlhZTBkNWNlN2QwZjdkM2MwZmJhIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhY2NkYTJjNmI0NWMyNWJiNWE2ZjljMzQwN2E2NDRlNjEiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBjaGFyICpfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMjdhZDRiYmQ5MDA3M2M1ZGZjOTMxYjA3MzE0ZjVmNyI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTdmMWQ3MjkxODgwNTM0YzFlNWNkZWIzOTJkOGMxZjQ1Ij5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4MGUzOTdmYTk3M2NmNTMyM2UzM2IwNzE1NGIwMjRmMyI+R2V0RG9jdW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTY1NTlhNTMwY2E2NzYzZmMzMDFhMTRkNzdlZDI4YzE3Ij5HZXRVc2VyRGF0YTwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDAxMjAyMTBlNDY4MGVmMjA4ODYwMTc1M2NlMGVkZTQiPkdldFVzZXJEYXRhPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZDliNzVlNTRlYzE5MzAxYzhiNGQ1ZmY1ODNkMGIzZDUiPkluc2VydEFmdGVyQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqYWZ0ZXJUaGlzLCBjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwYzE0NmZhMmZmZjAxNTdiNjgxNTk0MTAyZjQ4Y2JjNyI+SW5zZXJ0QmVmb3JlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqYmVmb3JlVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZDdkNDYzMGUxYTJhOTE2ZWRkYTE2YmUyMjQ0OGE4YmEiPkluc2VydEVuZENoaWxkPC9hPihjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FkNGIxNDcyNTMxYzY0N2EyNWIxODQwYTg3YWU0MjQzOCI+SXNXaGl0ZVNwYWNlQ29uZGVuc2VkPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTg2MjExOTZiYTM3MDVmYTIyNmJlZjRhNzYxY2M1MWI2Ij5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FkZmFlZjM1YTA3NmI5MzQzYWRjMTQyMDc1NzM3NmMzOSI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBjaGFyICp2YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTFjYmFhZjhlODJjMDlhZDc2M2Q1MjYxNmQ3NTcyNGRmIj5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE2ZTlhZDUzZTJmNTQ0NWIxNGJmMzI1YzkwYWE4NjJjIj5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjQzMmQyYjI0OTVmNmNhZjljYjQyNzhkZjcwNmEwMzEiPkxhc3RDaGlsZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYmFkNWJmMTA1OWM0ODEyN2I5NTg3MTFlZjg5ZThlNWQiPkxhc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqX3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjU2ZDBjZGJmY2ZlY2NhZTgzZjNhMWM5NzQ3YThiNjMiPkxhc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjk3NzJjOTIwMmY3MDU1M2Y5NDBiMTVjMDZiMDdiZTMiPkxhc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1ZDI5NDQyYWU0NmRlNmQwMTY4NDI5MTU2MTk3YmZjNiI+TGlua0VuZENoaWxkPC9hPihUaVhtbE5vZGUgKmFkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTFiOTRkMmY3ZmE3YWIyNWE1YThlOGQ0MzQwYzQ0OWM5Ij5OZXh0U2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTc1N2MxZjRkMDFlOGM5NTk2ZmZkYmQ1NjFjNzZhZWEiPk5leHRTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWY4NTRiYWViYTM4NGY1ZmU5ODU5ZjVhZWUwM2I1NDhlIj5OZXh0U2libGluZzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTJlNjFjMGI4OWE3N2UzNmEwZThjNjA0OTAwMDNjYjQ2Ij5OZXh0U2libGluZzwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzNhY2Y5MjlkNDlkMTBiZDBlNWZiM2QzMWIwMzcyZDEiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDcxYmE3N2ZkN2FiNzk0MDJmYTg0YjdlOWI4NjA3YjMiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzU3MmQwYWY5ZDFlNjk2ZWUzZjA1ZDhiYjVlYmI0NjMiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTA2OTU4ZTM0NDA2NzI5YTRlNGM1MzI2ZWEzOWQwODEiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FlZWQyMWFkMzA2MzBlZjZlN2ZhZjA5NjEyN2VkYzlmMyI+Tm9DaGlsZHJlbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgzNmVkZWQ0OTIwYWI5ZTllZjI4NDk2ZjQ4Y2Q5NWEyIj5Ob2RlVHlwZTwvYT4gZW51bSBuYW1lPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTg2Y2Q0OWNmYjE3YTg0NGMwMDEwYjMxMzZhYzk2NmM3Ij5vcGVyYXRvciZsdDsmbHQ7PC9hPihzdGQ6Om9zdHJlYW0gJmFtcDtvdXQsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MmVmMTdlNzA4MGRmMjQ5MGNmODdiZGUzODA2ODVhYiI+b3BlcmF0b3ImbHQ7Jmx0OzwvYT4oc3RkOjpzdHJpbmcgJmFtcDtvdXQsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiNTdiZDQyNjU2M2M5MjY4NDRmNjVhNzg0MTJlMThiOSI+b3BlcmF0b3ImZ3Q7Jmd0OzwvYT4oc3RkOjppc3RyZWFtICZhbXA7aW4sIFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiNjQzMDQzMTMyZmZkNzk0Zjg2MDI2ODVkMzRhOTgyZSI+UGFyZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjMmNkODkyNzY4NzI2MjcwZTUxMWIyYWIzMmRlNGQxMCI+UHJldmlvdXNTaWJsaW5nPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNWJkZDQ5MzI3ZWVjMWU2MDliN2QyMmFmNzA2YjgzMTYiPlByZXZpb3VzU2libGluZzwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjU4Mjc2ZjU3ZDM1ZDVkNDI1NmQxZGMxYTJjMzk4YWIiPlByZXZpb3VzU2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhY2M4YTA0MzRjN2Y0MDFkNGEzYjZkZWU3N2MxYTU5MTIiPlByZXZpb3VzU2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2EwY2FmYmY2ZjIzNmM3ZjAyZDEyYjJiZmZjMmI3OTc2YiI+UHJpbnQ8L2E+KEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPjwvdGQ+PHRkPjxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWUxOWQ4NTEwZWZjOTA1OTY1NTJmNGZlZWFjOWE4ZmJmIj5SZW1vdmVDaGlsZDwvYT4oVGlYbWxOb2RlICpyZW1vdmVUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwYzQ5ZTczOWExN2I5OTM4MDUwYzIyY2Q4OTYxN2ZiZCI+UmVwbGFjZUNoaWxkPC9hPihUaVhtbE5vZGUgKnJlcGxhY2VUaGlzLCBjb25zdCBUaVhtbE5vZGUgJmFtcDt3aXRoVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMDI0YmNlYjA3MDE4OGRmOTJjMmE4ZDg4NTJkZDA4NTMiPlJvdzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYWNiMTdmZjdjNWQwOWIyYzgzOTM5MzQ0NWEzZGU1ZWE5Ij5TZXRDREFUQTwvYT4oYm9vbCBfY2RhdGEpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwZjc5OWVjNjQ1YmZiOGQ4YTk2OWU4MzQ3OGYzNzljMSI+U2V0Q29uZGVuc2VXaGl0ZVNwYWNlPC9hPihib29sIGNvbmRlbnNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FjNmIzZTBmNzkwOTMwZDQ5NzBlYzMwNzY0ZTkzN2I1ZCI+U2V0VXNlckRhdGE8L2E+KHZvaWQgKnVzZXIpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyYTM4MzI5Y2E1ZDNmMjhmOThjZTkzMmI4Mjk5YWU5MCI+U2V0VmFsdWU8L2E+KGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI1OThkNWY0NDgwNDJjMWFiYmVhZTQ1MDNkZDQ1ZmYyIj5TZXRWYWx1ZTwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2FmNjU5ZTc3YzZiODdkNjg0ODI3ZjM1YThmNDg5NTk2MCI+VGlYbWxUZXh0PC9hPihjb25zdCBjaGFyICppbml0VmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E0Mzk3OTJmNjE4M2EzZDNmYjZmMmJjMmIxNmZhNTY5MSI+VGlYbWxUZXh0PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO2luaXRWYWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWEwYTUwODZmOWVhZWU5MTBiYmZkYzdmOTc1ZTI2NTc0Ij5Ub0NvbW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzODNlMDZhMDc4N2Y3MDYzOTUzOTM0ODY3OTkwZjg0OSI+VG9Db21tZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E5ZjQzZTY5ODRmYzdkNGFmZDZlYjMyNzE0YzZiN2I3MiI+VG9EZWNsYXJhdGlvbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQwMjcxMzZjYTgyMGZmNGE2MzZiNjA3MjMxYjZhNmRmIj5Ub0RlY2xhcmF0aW9uPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4YTRjZGE0YjE1YzI5ZjY0Y2ZmNDE5MzA5YWViZWQwOCI+VG9Eb2N1bWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTZhNGM4YWMyOGVlN2E3NDVkMDU5ZGI2NjkxZTAzYmFlIj5Ub0RvY3VtZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MmFiZWQ5NmRjOTY2N2FiOWUwYTJhMjc1MzAxYmIxYyI+VG9FbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYTY1ZDAwMDIyMzE4N2QyMmE0ZGNlYmQ3NDc5ZTllYmMiPlRvRWxlbWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhODk1YmYzNGZmYWQxN2Y3NDM5YWIyYTUyYjk2NTE2NDgiPlRvVGV4dDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYWU3YzNhOGZkM2U0ZGJmNmMwYzQzNjNhOTQzZDcyZjViIj5Ub1RleHQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWZkNzIwNWNmMzFkN2EzNzY5MjlmOGEzNjkzMDYyN2EyIj5Ub1Vua25vd248L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwNmRlNWFmODUyNjY4YzdlNGFmMGQwOWMyMDVmMGIwZCI+VG9Vbmtub3duPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1N2I5OWQ1Yzk3ZDY3YTQyYjk3NTJmNTIxMGExYmE1ZSI+VHlwZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWIyNDJjMDE1OTAxOTFmNjQ0NTY5ZmE4OWEwODBkOTdjIj51c2VyRGF0YTwvYT48L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW3Byb3RlY3RlZF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTc3OTQzZWI5MGQxMmMyODkyYjEzMzdhOWY1OTE4YjQxIj5WYWx1ZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTZkOWU1MDU2MTlkMzliZjUwYmZkOTYwOWM5MTY5ZWE1Ij5WYWx1ZVN0cjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotPC90YWJsZT48L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOworPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPkNsYXNzJm5ic3A7TWVtYmVyczwvYT48L2Rpdj4KKzxoMT5UaVhtbFRleHQgTWVtYmVyIExpc3Q8L2gxPlRoaXMgaXMgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgbWVtYmVycyBmb3IgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+LCBpbmNsdWRpbmcgYWxsIGluaGVyaXRlZCBtZW1iZXJzLjxwPjx0YWJsZT4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E2Ij5DREFUQTwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNSI+Q2xlYXI8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNiMCI+Q2xvbmU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtwcm90ZWN0ZWQsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E0Ij5Db2x1bW48L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4Ij5GaXJzdENoaWxkPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTAiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTEiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNiI+Rmlyc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTciPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTAiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MiI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTQiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTciPkdldERvY3VtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyOSI+SW5zZXJ0QWZ0ZXJDaGlsZDwvYT4oVGlYbWxOb2RlICphZnRlclRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI4Ij5JbnNlcnRCZWZvcmVDaGlsZDwvYT4oVGlYbWxOb2RlICpiZWZvcmVUaGlzLCBjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNiI+SW5zZXJ0RW5kQ2hpbGQ8L2E+KGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjZTEiPklzV2hpdGVTcGFjZUNvbmRlbnNlZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCBzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyMCI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjIiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oY29uc3QgY2hhciAqdmFsdWUsIGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNCI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNSI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSwgVGlYbWxOb2RlICpwcmV2aW91cyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEzIj5MYXN0Q2hpbGQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE1Ij5MYXN0Q2hpbGQ8L2E+KGNvbnN0IGNoYXIgKnZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExOCI+TGFzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExOSI+TGFzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI3Ij5MaW5rRW5kQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqYWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzgiPk5leHRTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzOSI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDAiPk5leHRTaWJsaW5nPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDIiPk5leHRTaWJsaW5nPC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NCI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NiI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0OCI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0OSI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU5Ij5Ob0NoaWxkcmVuPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCN3NyI+Tm9kZVR5cGU8L2E+IGVudW0gbmFtZTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI24zIj5vcGVyYXRvciZsdDsmbHQ7PC9hPihzdGQ6Om9zdHJlYW0gJmFtcDtvdXQsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI240Ij5vcGVyYXRvciZsdDsmbHQ7PC9hPihzdGQ6OnN0cmluZyAmYW1wO291dCwgY29uc3QgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjIiPm9wZXJhdG9yJmd0OyZndDs8L2E+KHN0ZDo6aXN0cmVhbSAmYW1wO2luLCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNiI+UGFyZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMiI+UHJldmlvdXNTaWJsaW5nPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzQiPlByZXZpb3VzU2libGluZzwvYT4oY29uc3QgY2hhciAqKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzYiPlByZXZpb3VzU2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzciPlByZXZpb3VzU2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E1Ij5QcmludDwvYT4oRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzEiPlJlbW92ZUNoaWxkPC9hPihUaVhtbE5vZGUgKnJlbW92ZVRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMwIj5SZXBsYWNlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqcmVwbGFjZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO3dpdGhUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EzIj5Sb3c8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E3Ij5TZXRDREFUQTwvYT4oYm9vbCBfY2RhdGEpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2UwIj5TZXRDb25kZW5zZVdoaXRlU3BhY2U8L2E+KGJvb2wgY29uZGVuc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMiPlNldFZhbHVlPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0Ij5TZXRWYWx1ZTwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2EwIj5UaVhtbFRleHQ8L2E+KGNvbnN0IGNoYXIgKmluaXRWYWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTIiPlRpWG1sVGV4dDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtpbml0VmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MiI+VG9Db21tZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjgiPlRvQ29tbWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjUiPlRvRGVjbGFyYXRpb248L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MSI+VG9EZWNsYXJhdGlvbjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjAiPlRvRG9jdW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NiI+VG9Eb2N1bWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjEiPlRvRWxlbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY3Ij5Ub0VsZW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY0Ij5Ub1RleHQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MCI+VG9UZXh0PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MyI+VG9Vbmtub3duPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjkiPlRvVW5rbm93bjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTYiPlR5cGU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI3AxIj51c2VyRGF0YTwvYT48L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW3Byb3RlY3RlZF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEiPlZhbHVlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMiI+VmFsdWVTdHI8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKzwvdGFibGU+PGhyIHNpemU9IjEiPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFNhdCBPY3QgOCAxNDoxNTozMCAyMDA1IGZvciBUaW55WG1sIGJ5Jm5ic3A7CiA8YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgorPGltZyBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iIGFsaWduPSJtaWRkbGUiIGJvcmRlcj0iMCI+PC9hPiAxLjQuNCA8L3NtYWxsPjwvYWRkcmVzcz4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbFRleHQuaHRtbCBiL2RvY3MvY2xhc3NUaVhtbFRleHQuaHRtbAppbmRleCBmZTMxMTU0Li5kNmUzYWI1IDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxUZXh0Lmh0bWwKKysrIGIvZG9jcy9jbGFzc1RpWG1sVGV4dC5odG1sCkBAIC0xLDE0OSArMSw5MyBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PWlzby04ODU5LTEiPgogPHRpdGxlPlRpbnlYbWw6IFRpWG1sVGV4dCBDbGFzcyBSZWZlcmVuY2U8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci08aDE+VGlYbWxUZXh0IENsYXNzIFJlZmVyZW5jZTwvaDE+PCEtLSBkb3h5dGFnOiBjbGFzcz0iVGlYbWxUZXh0IiAtLT48IS0tIGRveHl0YWc6IGluaGVyaXRzPSJUaVhtbE5vZGUiIC0tPgotPHA+WE1MIHRleHQuICAKLTxhIGhyZWY9IiNfZGV0YWlscyI+TW9yZS4uLjwvYT48L3A+Ci0KLTxwPjxjb2RlPiNpbmNsdWRlICZsdDs8YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGhfc291cmNlLmh0bWwiPnRpbnl4bWwuaDwvYT4mZ3Q7PC9jb2RlPjwvcD4KLTxkaXYgY2xhc3M9ImR5bmhlYWRlciI+Ci1Jbmhlcml0YW5jZSBkaWFncmFtIGZvciBUaVhtbFRleHQ6PC9kaXY+Ci08ZGl2IGNsYXNzPSJkeW5zZWN0aW9uIj4KLSA8ZGl2IGNsYXNzPSJjZW50ZXIiPgotICA8aW1nIHNyYz0iY2xhc3NUaVhtbFRleHQucG5nIiB1c2VtYXA9IiNUaVhtbFRleHRfbWFwIiBhbHQ9IiIvPgotICA8bWFwIGlkPSJUaVhtbFRleHRfbWFwIiBuYW1lPSJUaVhtbFRleHRfbWFwIj4KLTxhcmVhIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIGFsdD0iVGlYbWxOb2RlIiBzaGFwZT0icmVjdCIgY29vcmRzPSIwLDU2LDczLDgwIi8+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIiBhbHQ9IlRpWG1sQmFzZSIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMCwwLDczLDI0Ii8+Cis8bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+Cis8L2hlYWQ+PGJvZHk+Cis8IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNC40IC0tPgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJpbmRleC5odG1sIj5NYWluJm5ic3A7UGFnZTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJoaWVyYXJjaHkuaHRtbCI+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPkNsYXNzJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmaWxlcy5odG1sIj5GaWxlJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+Q2xhc3MmbmJzcDtNZW1iZXJzPC9hPjwvZGl2PgorPGgxPlRpWG1sVGV4dCBDbGFzcyBSZWZlcmVuY2U8L2gxPjwhLS0gZG94eXRhZzogY2xhc3M9IlRpWG1sVGV4dCIgLS0+PCEtLSBkb3h5dGFnOiBpbmhlcml0cz0iVGlYbWxOb2RlIiAtLT5YTUwgdGV4dC4gIAorPGEgaHJlZj0iI19kZXRhaWxzIj5Nb3JlLi4uPC9hPgorPHA+Cis8Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoLXNvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT4KKzxwPgorPHA+SW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxUZXh0OgorPHA+PGNlbnRlcj48aW1nIHNyYz0iY2xhc3NUaVhtbFRleHQucG5nIiB1c2VtYXA9IiNUaVhtbFRleHRfbWFwIiBib3JkZXI9IjAiIGFsdD0iIj48L2NlbnRlcj4KKzxtYXAgbmFtZT0iVGlYbWxUZXh0X21hcCI+Cis8YXJlYSBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiBhbHQ9IlRpWG1sTm9kZSIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMCw1Niw3Myw4MCI+Cis8YXJlYSBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIiBhbHQ9IlRpWG1sQmFzZSIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMCwwLDczLDI0Ij4KIDwvbWFwPgotIDwvZGl2PgotPC9kaXY+Cis8YSBocmVmPSJjbGFzc1RpWG1sVGV4dC1tZW1iZXJzLmh0bWwiPkxpc3Qgb2YgYWxsIG1lbWJlcnMuPC9hPjx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+Cis8dHI+PHRkPjwvdGQ+PC90cj4KKzx0cj48dGQgY29sc3Bhbj0iMiI+PGJyPjxoMj5QdWJsaWMgTWVtYmVyIEZ1bmN0aW9uczwvaDI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2EwIj5UaVhtbFRleHQ8L2E+IChjb25zdCBjaGFyICppbml0VmFsdWUpPC90ZD48L3RyPgogCi08cD48YSBocmVmPSJjbGFzc1RpWG1sVGV4dC1tZW1iZXJzLmh0bWwiPkxpc3Qgb2YgYWxsIG1lbWJlcnMuPC9hPjwvcD4KLTx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+Ci08dHI+PHRkIGNvbHNwYW49IjIiPjxoMj5QdWJsaWMgTWVtYmVyIEZ1bmN0aW9uczwvaDI+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYWY2NTllNzdjNmI4N2Q2ODQ4MjdmMzVhOGY0ODk1OTYwIj5UaVhtbFRleHQ8L2E+IChjb25zdCBjaGFyICppbml0VmFsdWUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29uc3RydWN0b3IgZm9yIHRleHQgZWxlbWVudC4gIDxhIGhyZWY9IiNhZjY1OWU3N2M2Yjg3ZDY4NDgyN2YzNWE4ZjQ4OTU5NjAiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTQzOTc5MmY2MTgzYTNkM2ZiNmYyYmMyYjE2ZmE1NjkxIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVGV4dDo6VGlYbWxUZXh0IiByZWY9ImE0Mzk3OTJmNjE4M2EzZDNmYjZmMmJjMmIxNmZhNTY5MSIgYXJncz0iKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7aW5pdFZhbHVlKSIgLS0+Ci0mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E0Mzk3OTJmNjE4M2EzZDNmYjZmMmJjMmIxNmZhNTY5MSI+VGlYbWxUZXh0PC9hPiAoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtpbml0VmFsdWUpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29uc3RydWN0b3IuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPnZpcnR1YWwgdm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTBjYWZiZjZmMjM2YzdmMDJkMTJiMmJmZmMyYjc5NzZiIj5QcmludDwvYT4gKEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkFsbCBUaW55WG1sIGNsYXNzZXMgY2FuIHByaW50IHRoZW1zZWx2ZXMgdG8gYSBmaWxlc3RyZWFtIG9yIHRoZSBzdHJpbmcgY2xhc3MgKFRpWG1sU3RyaW5nIGluIG5vbi1TVEwgbW9kZSwgc3RkOjpzdHJpbmcgaW4gU1RMIG1vZGUuICA8YSBocmVmPSIjYTBjYWZiZjZmMjM2YzdmMDJkMTJiMmJmZmMyYjc5NzZiIj48L2E+PGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFkMWE2YTZiODNmYTIyNzEwMjJkZDk3YzA3MmEyYjU4NiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFRleHQ6OkNEQVRBIiByZWY9ImFkMWE2YTZiODNmYTIyNzEwMjJkZDk3YzA3MmEyYjU4NiIgYXJncz0iKCkgY29uc3QgIiAtLT4KLWJvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2FkMWE2YTZiODNmYTIyNzEwMjJkZDk3YzA3MmEyYjU4NiI+Q0RBVEE8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlF1ZXJpZXMgd2hldGhlciB0aGlzIHJlcHJlc2VudHMgdGV4dCB1c2luZyBhIENEQVRBIHNlY3Rpb24uIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhY2IxN2ZmN2M1ZDA5YjJjODM5MzkzNDQ1YTNkZTVlYTkiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxUZXh0OjpTZXRDREFUQSIgcmVmPSJhY2IxN2ZmN2M1ZDA5YjJjODM5MzkzNDQ1YTNkZTVlYTkiIGFyZ3M9Iihib29sIF9jZGF0YSkiIC0tPgotdm9pZCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYWNiMTdmZjdjNWQwOWIyYzgzOTM5MzQ0NWEzZGU1ZWE5Ij5TZXRDREFUQTwvYT4gKGJvb2wgX2NkYXRhKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlR1cm5zIG9uIG9yIG9mZiBhIENEQVRBIHJlcHJlc2VudGF0aW9uIG9mIHRleHQuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhODk1YmYzNGZmYWQxN2Y3NDM5YWIyYTUyYjk2NTE2NDgiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxUZXh0OjpUb1RleHQiIHJlZj0iYTg5NWJmMzRmZmFkMTdmNzQzOWFiMmE1MmI5NjUxNjQ4IiBhcmdzPSIoKSBjb25zdCAiIC0tPgotdmlydHVhbCBjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTg5NWJmMzRmZmFkMTdmNzQzOWFiMmE1MmI5NjUxNjQ4Ij5Ub1RleHQ8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWU3YzNhOGZkM2U0ZGJmNmMwYzQzNjNhOTQzZDcyZjViIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVGV4dDo6VG9UZXh0IiByZWY9ImFlN2MzYThmZDNlNGRiZjZjMGM0MzYzYTk0M2Q3MmY1YiIgYXJncz0iKCkiIC0tPgotdmlydHVhbCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYWU3YzNhOGZkM2U0ZGJmNmMwYzQzNjNhOTQzZDcyZjViIj5Ub1RleHQ8L2E+ICgpPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhODQ4M2Q0NDE1Y2U5ZGU2YzRmYThmNjNkMDY3ZDVkZTYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxUZXh0OjpBY2NlcHQiIHJlZj0iYTg0ODNkNDQxNWNlOWRlNmM0ZmE4ZjYzZDA2N2Q1ZGU2IiBhcmdzPSIoVGlYbWxWaXNpdG9yICpjb250ZW50KSBjb25zdCAiIC0tPgotdmlydHVhbCBib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhODQ4M2Q0NDE1Y2U5ZGU2YzRmYThmNjNkMDY3ZDVkZTYiPkFjY2VwdDwvYT4gKDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCI+VGlYbWxWaXNpdG9yPC9hPiAqY29udGVudCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+V2FsayB0aGUgWE1MIHRyZWUgdmlzaXRpbmcgdGhpcyBub2RlIGFuZCBhbGwgb2YgaXRzIGNoaWxkcmVuLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY29sc3Bhbj0iMiI+PGgyPlByb3RlY3RlZCBNZW1iZXIgRnVuY3Rpb25zPC9oMj48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEwYzQxMWU5M2EyNzUzNzM2OTQ3OWQwMzRjYzgyZGEzYiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFRleHQ6OkNsb25lIiByZWY9ImEwYzQxMWU5M2EyNzUzNzM2OTQ3OWQwMzRjYzgyZGEzYiIgYXJncz0iKCkgY29uc3QgIiAtLT4KLXZpcnR1YWwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2EwYzQxMWU5M2EyNzUzNzM2OTQ3OWQwMzRjYzgyZGEzYiI+Q2xvbmU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPltpbnRlcm5hbCB1c2VdIENyZWF0ZXMgYSBuZXcgRWxlbWVudCBhbmQgcmV0dXJucyBpdC4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNvbHNwYW49IjIiPjxoMj5GcmllbmRzPC9oMj48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImFiNjU5MmUzMmNiOTEzMmJlNTE3Y2MxMmE3MDU2NGM0YiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFRleHQ6OlRpWG1sRWxlbWVudCIgcmVmPSJhYjY1OTJlMzJjYjkxMzJiZTUxN2NjMTJhNzA1NjRjNGIiIGFyZ3M9IiIgLS0+Ci1jbGFzcyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYWI2NTkyZTMyY2I5MTMyYmU1MTdjYzEyYTcwNTY0YzRiIj5UaVhtbEVsZW1lbnQ8L2E+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29uc3RydWN0b3IgZm9yIHRleHQgZWxlbWVudC4gIDxhIGhyZWY9IiNhMCI+PC9hPjxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImEyIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVGV4dDo6VGlYbWxUZXh0IiByZWY9ImEyIiBhcmdzPSIoY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtpbml0VmFsdWUpIiAtLT4KKyZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTIiPlRpWG1sVGV4dDwvYT4gKGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7aW5pdFZhbHVlKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+Q29uc3RydWN0b3IuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE1Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVGV4dDo6UHJpbnQiIHJlZj0iYTUiIGFyZ3M9IihGSUxFICpjZmlsZSwgaW50IGRlcHRoKSBjb25zdCAiIC0tPgordmlydHVhbCB2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhNSI+UHJpbnQ8L2E+IChGSUxFICpjZmlsZSwgaW50IGRlcHRoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPldyaXRlIHRoaXMgdGV4dCBvYmplY3QgdG8gYSBGSUxFIHN0cmVhbS4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxUZXh0OjpDREFUQSIgcmVmPSJhNiIgYXJncz0iKCkiIC0tPgorYm9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTYiPkNEQVRBPC9hPiAoKTwvdGQ+PC90cj4KKworPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+UXVlcmllcyB3aGV0aGVyIHRoaXMgcmVwcmVzZW50cyB0ZXh0IHVzaW5nIGEgQ0RBVEEgc2VjdGlvbi4gPGJyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTciPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxUZXh0OjpTZXRDREFUQSIgcmVmPSJhNyIgYXJncz0iKGJvb2wgX2NkYXRhKSIgLS0+Cit2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhNyI+U2V0Q0RBVEE8L2E+IChib29sIF9jZGF0YSk8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlR1cm5zIG9uIG9yIG9mZiBhIENEQVRBIHJlcHJlc2VudGF0aW9uIG9mIHRleHQuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNvbHNwYW49IjIiPjxicj48aDI+UHJvdGVjdGVkIE1lbWJlciBGdW5jdGlvbnM8L2gyPjwvdGQ+PC90cj4KKzx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBub3dyYXAgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYjAiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxUZXh0OjpDbG9uZSIgcmVmPSJiMCIgYXJncz0iKCkgY29uc3QgIiAtLT4KK3ZpcnR1YWwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2IwIj5DbG9uZTwvYT4gKCkgY29uc3QgPC90ZD48L3RyPgorCis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5baW50ZXJuYWwgdXNlXSBDcmVhdGVzIGEgbmV3IEVsZW1lbnQgYW5kIHJldHVybnMgaXQuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNvbHNwYW49IjIiPjxicj48aDI+RnJpZW5kczwvaDI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJuMCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFRleHQ6OlRpWG1sRWxlbWVudCIgcmVmPSJuMCIgYXJncz0iIiAtLT4KK2NsYXNzJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNuMCI+VGlYbWxFbGVtZW50PC9hPjwvdGQ+PC90cj4KKwogPC90YWJsZT4KLTxoci8+PGEgbmFtZT0iX2RldGFpbHMiPjwvYT48aDI+RGV0YWlsZWQgRGVzY3JpcHRpb248L2gyPgotPHA+WE1MIHRleHQuIDwvcD4KLTxwPkEgdGV4dCBub2RlIGNhbiBoYXZlIDIgd2F5cyB0byBvdXRwdXQgdGhlIG5leHQuICJub3JtYWwiIG91dHB1dCBhbmQgQ0RBVEEuIEl0IHdpbGwgZGVmYXVsdCB0byB0aGUgbW9kZSBpdCB3YXMgcGFyc2VkIGZyb20gdGhlIFhNTCBmaWxlIGFuZCB5b3UgZ2VuZXJhbGx5IHdhbnQgdG8gbGVhdmUgaXQgYWxvbmUsIGJ1dCB5b3UgY2FuIGNoYW5nZSB0aGUgb3V0cHV0IG1vZGUgd2l0aCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYWNiMTdmZjdjNWQwOWIyYzgzOTM5MzQ0NWEzZGU1ZWE5IiB0aXRsZT0iVHVybnMgb24gb3Igb2ZmIGEgQ0RBVEEgcmVwcmVzZW50YXRpb24gb2YgdGV4dC4iPlNldENEQVRBKCk8L2E+IGFuZCBxdWVyeSBpdCB3aXRoIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhZDFhNmE2YjgzZmEyMjcxMDIyZGQ5N2MwNzJhMmI1ODYiIHRpdGxlPSJRdWVyaWVzIHdoZXRoZXIgdGhpcyByZXByZXNlbnRzIHRleHQgdXNpbmcgYSBDREFUQSBzZWN0aW9uLiI+Q0RBVEEoKTwvYT4uIDwvcD4KLTxoci8+PGgyPkNvbnN0cnVjdG9yICZhbXA7IERlc3RydWN0b3IgRG9jdW1lbnRhdGlvbjwvaDI+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWY2NTllNzdjNmI4N2Q2ODQ4MjdmMzVhOGY0ODk1OTYwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVGV4dDo6VGlYbWxUZXh0IiByZWY9ImFmNjU5ZTc3YzZiODdkNjg0ODI3ZjM1YThmNDg5NTk2MCIgYXJncz0iKGNvbnN0IGNoYXIgKmluaXRWYWx1ZSkiIC0tPgotPGRpdiBjbGFzcz0ibWVtaXRlbSI+Ci08ZGl2IGNsYXNzPSJtZW1wcm90byI+Ci0gICAgICA8dGFibGUgY2xhc3M9Im1lbW5hbWUiPgorPGhyPjxhIG5hbWU9Il9kZXRhaWxzIj48L2E+PGgyPkRldGFpbGVkIERlc2NyaXB0aW9uPC9oMj4KK1hNTCB0ZXh0LiAKKzxwPgorQSB0ZXh0IG5vZGUgY2FuIGhhdmUgMiB3YXlzIHRvIG91dHB1dCB0aGUgbmV4dC4gIm5vcm1hbCIgb3V0cHV0IGFuZCBDREFUQS4gSXQgd2lsbCBkZWZhdWx0IHRvIHRoZSBtb2RlIGl0IHdhcyBwYXJzZWQgZnJvbSB0aGUgWE1MIGZpbGUgYW5kIHlvdSBnZW5lcmFsbHkgd2FudCB0byBsZWF2ZSBpdCBhbG9uZSwgYnV0IHlvdSBjYW4gY2hhbmdlIHRoZSBvdXRwdXQgbW9kZSB3aXRoIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhNyI+U2V0Q0RBVEEoKTwvYT4gYW5kIHF1ZXJ5IGl0IHdpdGggPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E2Ij5DREFUQSgpPC9hPi4KKzxwPgorPGhyPjxoMj5Db25zdHJ1Y3RvciAmYW1wOyBEZXN0cnVjdG9yIERvY3VtZW50YXRpb248L2gyPgorPGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iYTAiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxUZXh0OjpUaVhtbFRleHQiIHJlZj0iYTAiIGFyZ3M9Iihjb25zdCBjaGFyICppbml0VmFsdWUpIiAtLT48cD4KKzx0YWJsZSBjbGFzcz0ibWRUYWJsZSIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIj4KKyAgPHRyPgorICAgIDx0ZCBjbGFzcz0ibWRSb3ciPgorICAgICAgPHRhYmxlIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgYm9yZGVyPSIwIj4KICAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+VGlYbWxUZXh0OjpUaVhtbFRleHQgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmNvbnN0IGNoYXIgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+aW5pdFZhbHVlPC9lbT48L3RkPgotICAgICAgICAgIDx0ZD4mbmJzcDspJm5ic3A7PC90ZD4KLSAgICAgICAgICA8dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5UaVhtbFRleHQ6OlRpWG1sVGV4dCAgICAgICAgICAgPC90ZD4KKyAgICAgICAgICA8dGQgY2xhc3M9Im1kIiB2YWxpZ249InRvcCI+KCZuYnNwOzwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgbm93cmFwIHZhbGlnbj0idG9wIj5jb25zdCBjaGFyICombmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWRuYW1lMSIgdmFsaWduPSJ0b3AiIG5vd3JhcD4gPGVtPmluaXRWYWx1ZTwvZW0+ICAgICAgICAgIDwvdGQ+CisgICAgICAgICAgPHRkIGNsYXNzPSJtZCIgdmFsaWduPSJ0b3AiPiZuYnNwOykmbmJzcDs8L3RkPgorICAgICAgICAgIDx0ZCBjbGFzcz0ibWQiIG5vd3JhcD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD4KICAgICAgICAgPC90cj4KICAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+CisgICAgPC90ZD4KKyAgPC90cj4KKzwvdGFibGU+Cis8dGFibGUgY2VsbHNwYWNpbmc9IjUiIGNlbGxwYWRkaW5nPSIwIiBib3JkZXI9IjAiPgorICA8dHI+CisgICAgPHRkPgorICAgICAgJm5ic3A7CisgICAgPC90ZD4KKyAgICA8dGQ+CiAKLTxwPkNvbnN0cnVjdG9yIGZvciB0ZXh0IGVsZW1lbnQuIDwvcD4KLTxwPkJ5IGRlZmF1bHQsIGl0IGlzIHRyZWF0ZWQgYXMgbm9ybWFsLCBlbmNvZGVkIHRleHQuIElmIHlvdSB3YW50IGl0IGJlIG91dHB1dCBhcyBhIENEQVRBIHRleHQgZWxlbWVudCwgc2V0IHRoZSBwYXJhbWV0ZXIgX2NkYXRhIHRvICd0cnVlJyA8L3A+Ci0KLTxwPlJlZmVyZW5jZXMgPGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sI2wwMDUwOCI+VGlYbWxOb2RlOjpTZXRWYWx1ZSgpPC9hPi48L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08aHIvPjxoMj5NZW1iZXIgRnVuY3Rpb24gRG9jdW1lbnRhdGlvbjwvaDI+Ci08YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTBjYWZiZjZmMjM2YzdmMDJkMTJiMmJmZmMyYjc5NzZiIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVGV4dDo6UHJpbnQiIHJlZj0iYTBjYWZiZjZmMjM2YzdmMDJkMTJiMmJmZmMyYjc5NzZiIiBhcmdzPSIoRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgIiAtLT4KLTxkaXYgY2xhc3M9Im1lbWl0ZW0iPgotPGRpdiBjbGFzcz0ibWVtcHJvdG8iPgotICAgICAgPHRhYmxlIGNsYXNzPSJtZW1uYW1lIj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0ibWVtbmFtZSI+dmlydHVhbCB2b2lkIFRpWG1sVGV4dDo6UHJpbnQgPC90ZD4KLSAgICAgICAgICA8dGQ+KDwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPkZJTEUgKiZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+Y2ZpbGU8L2VtPiwgPC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgICAgPHRyPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1rZXkiPjwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbXR5cGUiPmludCZuYnNwOzwvdGQ+Ci0gICAgICAgICAgPHRkIGNsYXNzPSJwYXJhbW5hbWUiPiA8ZW0+ZGVwdGg8L2VtPjwvdGQ+PHRkPiZuYnNwOzwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQ+PC90ZD4KLSAgICAgICAgICA8dGQ+KTwvdGQ+Ci0gICAgICAgICAgPHRkPjwvdGQ+PHRkPjwvdGQ+PHRkPiBjb25zdDxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD4KLSAgICAgICAgPC90cj4KLSAgICAgIDwvdGFibGU+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9Im1lbWRvYyI+Ci0KLTxwPkFsbCBUaW55WG1sIGNsYXNzZXMgY2FuIHByaW50IHRoZW1zZWx2ZXMgdG8gYSBmaWxlc3RyZWFtIG9yIHRoZSBzdHJpbmcgY2xhc3MgKFRpWG1sU3RyaW5nIGluIG5vbi1TVEwgbW9kZSwgc3RkOjpzdHJpbmcgaW4gU1RMIG1vZGUuIDwvcD4KLTxwPikgRWl0aGVyIG9yIGJvdGggY2ZpbGUgYW5kIHN0ciBjYW4gYmUgbnVsbC48L3A+Ci08cD5UaGlzIGlzIGEgZm9ybWF0dGVkIHByaW50LCBhbmQgd2lsbCBpbnNlcnQgdGFicyBhbmQgbmV3bGluZXMuPC9wPgotPHA+KEZvciBhbiB1bmZvcm1hdHRlZCBzdHJlYW0sIHVzZSB0aGUgJmx0OyZsdDsgb3BlcmF0b3IuKSA8L3A+Ci0KLTxwPkltcGxlbWVudHMgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwZGU1NmIzZjJlZjE0YzY1MDkxYTNiOTE2NDM3YjUxMiI+VGlYbWxCYXNlPC9hPi48L3A+Ci0KLTwvZGl2PgotPC9kaXY+Ci08aHIvPlRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGlzIGNsYXNzIHdhcyBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIGZpbGU6PHVsPgotPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPjwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKKzxwPgorQ29uc3RydWN0b3IgZm9yIHRleHQgZWxlbWVudC4gCis8cD4KK0J5IGRlZmF1bHQsIGl0IGlzIHRyZWF0ZWQgYXMgbm9ybWFsLCBlbmNvZGVkIHRleHQuIElmIHlvdSB3YW50IGl0IGJlIG91dHB1dCBhcyBhIENEQVRBIHRleHQgZWxlbWVudCwgc2V0IHRoZSBwYXJhbWV0ZXIgX2NkYXRhIHRvICd0cnVlJyAgICA8L3RkPgorICA8L3RyPgorPC90YWJsZT4KKzxocj5UaGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhpcyBjbGFzcyB3YXMgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBmaWxlOjx1bD4KKzxsaT48YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGgtc291cmNlLmh0bWwiPnRpbnl4bWwuaDwvYT48L3VsPgorPGhyIHNpemU9IjEiPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFNhdCBPY3QgOCAxNDoxNTozMCAyMDA1IGZvciBUaW55WG1sIGJ5Jm5ic3A7CiA8YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgorPGltZyBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iIGFsaWduPSJtaWRkbGUiIGJvcmRlcj0iMCI+PC9hPiAxLjQuNCA8L3NtYWxsPjwvYWRkcmVzcz4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbFRleHQucG5nIGIvZG9jcy9jbGFzc1RpWG1sVGV4dC5wbmcKaW5kZXggY2NkMWMzNC4uYzllNzFkNCAxMDA2NDQKLS0tIGEvZG9jcy9jbGFzc1RpWG1sVGV4dC5wbmcKKysrIGIvZG9jcy9jbGFzc1RpWG1sVGV4dC5wbmcKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZG9jcy9jbGFzc1RpWG1sVW5rbm93bi1tZW1iZXJzLmh0bWwgYi9kb2NzL2NsYXNzVGlYbWxVbmtub3duLW1lbWJlcnMuaHRtbAppbmRleCA1MTJkNGFlLi44ZDk0YTA0IDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxVbmtub3duLW1lbWJlcnMuaHRtbAorKysgYi9kb2NzL2NsYXNzVGlYbWxVbmtub3duLW1lbWJlcnMuaHRtbApAQCAtMSwxMDcgKzEsODAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iPgorPGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1pc28tODg1OS0xIj4KIDx0aXRsZT5UaW55WG1sOiBNZW1iZXIgTGlzdDwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLTxoMT5UaVhtbFVua25vd24gTWVtYmVyIExpc3Q8L2gxPlRoaXMgaXMgdGhlIGNvbXBsZXRlIGxpc3Qgb2YgbWVtYmVycyBmb3IgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+LCBpbmNsdWRpbmcgYWxsIGluaGVyaXRlZCBtZW1iZXJzLjx0YWJsZT4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2FkNzEyMmU1MTM1NTgxYjNjODMyYTFhMzIxNzc2MGE5MyI+QWNjZXB0PC9hPihUaVhtbFZpc2l0b3IgKmNvbnRlbnQpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPjwvdGQ+PHRkPjxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcwOGU3Zjk1M2RmNjFkNGQyZDEyZjczMTcxNTUwYTRiIj5DbGVhcjwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2EwOTYwYmI3NDI4YjNmMzQxZGE0NjI0NDIyOTYwNGQ3MyI+Q2xvbmU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjU0YmZiOWI3MGZlNmRkMjc2ZTdiMjc5Y2FiN2YwMDMiPkNvbHVtbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTZiZDhjMzE1YzFhY2IwOWUzNDEwN2I4NzM2NTA1OTQ4Ij5FbmNvZGVTdHJpbmc8L2E+KGNvbnN0IFRJWE1MX1NUUklORyAmYW1wO3N0ciwgVElYTUxfU1RSSU5HICpvdXQpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtzdGF0aWNdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NGM4ZWVlMjZiYmUyZDFiMjc2MjAzOGRmOWRkZTJmMCI+Rmlyc3RDaGlsZDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTFmMDU4MjhkMDIzMTUwNzA2ZWViMTZkNmZiM2Y2MzU1Ij5GaXJzdENoaWxkPC9hPihjb25zdCBjaGFyICp2YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWJjOGJmMzJiZTY0MTllYzQ1M2E3MzE4NjhkZTE5NTU0Ij5GaXJzdENoaWxkPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwN2Y2MjAwYTU5NTZjNzIzYzViNTJkNzBmMjljNDZmNiI+Rmlyc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTBkMjY2OWNjYjVlMjllMDJmY2IwZTQ0MDg2ODVlZjYiPkZpcnN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjRmYjY1MmY2YmQ3OWFlMGQ1Y2U3ZDBmN2QzYzBmYmEiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjY2RhMmM2YjQ1YzI1YmI1YTZmOWMzNDA3YTY0NGU2MSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKl92YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMyN2FkNGJiZDkwMDczYzVkZmM5MzFiMDczMTRmNWY3Ij5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhN2YxZDcyOTE4ODA1MzRjMWU1Y2RlYjM5MmQ4YzFmNDUiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgwZTM5N2ZhOTczY2Y1MzIzZTMzYjA3MTU0YjAyNGYzIj5HZXREb2N1bWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNjU1OWE1MzBjYTY3NjNmYzMwMWExNGQ3N2VkMjhjMTciPkdldFVzZXJEYXRhPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FkMDEyMDIxMGU0NjgwZWYyMDg4NjAxNzUzY2UwZWRlNCI+R2V0VXNlckRhdGE8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FkOWI3NWU1NGVjMTkzMDFjOGI0ZDVmZjU4M2QwYjNkNSI+SW5zZXJ0QWZ0ZXJDaGlsZDwvYT4oVGlYbWxOb2RlICphZnRlclRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTBjMTQ2ZmEyZmZmMDE1N2I2ODE1OTQxMDJmNDhjYmM3Ij5JbnNlcnRCZWZvcmVDaGlsZDwvYT4oVGlYbWxOb2RlICpiZWZvcmVUaGlzLCBjb25zdCBUaVhtbE5vZGUgJmFtcDthZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FkN2Q0NjMwZTFhMmE5MTZlZGRhMTZiZTIyNDQ4YThiYSI+SW5zZXJ0RW5kQ2hpbGQ8L2E+KGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWQ0YjE0NzI1MzFjNjQ3YTI1YjE4NDBhODdhZTQyNDM4Ij5Jc1doaXRlU3BhY2VDb25kZW5zZWQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgc3RhdGljXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODYyMTE5NmJhMzcwNWZhMjI2YmVmNGE3NjFjYzUxYjYiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWRmYWVmMzVhMDc2YjkzNDNhZGMxNDIwNzU3Mzc2YzM5Ij5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IGNoYXIgKnZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMWNiYWFmOGU4MmMwOWFkNzYzZDUyNjE2ZDc1NzI0ZGYiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUsIGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTZlOWFkNTNlMmY1NDQ1YjE0YmYzMjVjOTBhYTg2MmMiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUsIGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NDMyZDJiMjQ5NWY2Y2FmOWNiNDI3OGRmNzA2YTAzMSI+TGFzdENoaWxkPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiYWQ1YmYxMDU5YzQ4MTI3Yjk1ODcxMWVmODllOGU1ZCI+TGFzdENoaWxkPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNTZkMGNkYmZjZmVjY2FlODNmM2ExYzk3NDdhOGI2MyI+TGFzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2OTc3MmM5MjAyZjcwNTUzZjk0MGIxNWMwNmIwN2JlMyI+TGFzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTVkMjk0NDJhZTQ2ZGU2ZDAxNjg0MjkxNTYxOTdiZmM2Ij5MaW5rRW5kQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqYWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMWI5NGQyZjdmYTdhYjI1YTVhOGU4ZDQzNDBjNDQ5YzkiPk5leHRTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNzU3YzFmNGQwMWU4Yzk1OTZmZmRiZDU2MWM3NmFlYSI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjg1NGJhZWJhMzg0ZjVmZTk4NTlmNWFlZTAzYjU0OGUiPk5leHRTaWJsaW5nPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMmU2MWMwYjg5YTc3ZTM2YTBlOGM2MDQ5MDAwM2NiNDYiPk5leHRTaWJsaW5nPC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3M2FjZjkyOWQ0OWQxMGJkMGU1ZmIzZDMxYjAzNzJkMSI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwNzFiYTc3ZmQ3YWI3OTQwMmZhODRiN2U5Yjg2MDdiMyI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3NTcyZDBhZjlkMWU2OTZlZTNmMDVkOGJiNWViYjQ2MyI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MDY5NThlMzQ0MDY3MjlhNGU0YzUzMjZlYTM5ZDA4MSI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWVlZDIxYWQzMDYzMGVmNmU3ZmFmMDk2MTI3ZWRjOWYzIj5Ob0NoaWxkcmVuPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODM2ZWRlZDQ5MjBhYjllOWVmMjg0OTZmNDhjZDk1YTIiPk5vZGVUeXBlPC9hPiBlbnVtIG5hbWU8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODZjZDQ5Y2ZiMTdhODQ0YzAwMTBiMzEzNmFjOTY2YzciPm9wZXJhdG9yJmx0OyZsdDs8L2E+KHN0ZDo6b3N0cmVhbSAmYW1wO291dCwgY29uc3QgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUyZWYxN2U3MDgwZGYyNDkwY2Y4N2JkZTM4MDY4NWFiIj5vcGVyYXRvciZsdDsmbHQ7PC9hPihzdGQ6OnN0cmluZyAmYW1wO291dCwgY29uc3QgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWI1N2JkNDI2NTYzYzkyNjg0NGY2NWE3ODQxMmUxOGI5Ij5vcGVyYXRvciZndDsmZ3Q7PC9hPihzdGQ6OmlzdHJlYW0gJmFtcDtpbiwgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWI2NDMwNDMxMzJmZmQ3OTRmODYwMjY4NWQzNGE5ODJlIj5QYXJlbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWMyY2Q4OTI3Njg3MjYyNzBlNTExYjJhYjMyZGU0ZDEwIj5QcmV2aW91c1NpYmxpbmc8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1YmRkNDkzMjdlZWMxZTYwOWI3ZDIyYWY3MDZiODMxNiI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NTgyNzZmNTdkMzVkNWQ0MjU2ZDFkYzFhMmMzOThhYiI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjYzhhMDQzNGM3ZjQwMWQ0YTNiNmRlZTc3YzFhNTkxMiI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYTMxYmEwODlhNDBmYjVhMTg2OTc1MGZjZTA5YjBiYWNiIj5QcmludDwvYT4oRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+PC90ZD48dGQ+PGNvZGU+IFt2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZTE5ZDg1MTBlZmM5MDU5NjU1MmY0ZmVlYWM5YThmYmYiPlJlbW92ZUNoaWxkPC9hPihUaVhtbE5vZGUgKnJlbW92ZVRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTBjNDllNzM5YTE3Yjk5MzgwNTBjMjJjZDg5NjE3ZmJkIj5SZXBsYWNlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqcmVwbGFjZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO3dpdGhUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwMjRiY2ViMDcwMTg4ZGY5MmMyYThkODg1MmRkMDg1MyI+Um93PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGY3OTllYzY0NWJmYjhkOGE5NjllODM0NzhmMzc5YzEiPlNldENvbmRlbnNlV2hpdGVTcGFjZTwvYT4oYm9vbCBjb25kZW5zZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgc3RhdGljXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYzZiM2UwZjc5MDkzMGQ0OTcwZWMzMDc2NGU5MzdiNWQiPlNldFVzZXJEYXRhPC9hPih2b2lkICp1c2VyKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMmEzODMyOWNhNWQzZjI4Zjk4Y2U5MzJiODI5OWFlOTAiPlNldFZhbHVlPC9hPihjb25zdCBjaGFyICpfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNTk4ZDVmNDQ4MDQyYzFhYmJlYWU0NTAzZGQ0NWZmMiI+U2V0VmFsdWU8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYTBhNTA4NmY5ZWFlZTkxMGJiZmRjN2Y5NzVlMjY1NzQiPlRvQ29tbWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM4M2UwNmEwNzg3ZjcwNjM5NTM5MzQ4Njc5OTBmODQ5Ij5Ub0NvbW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTlmNDNlNjk4NGZjN2Q0YWZkNmViMzI3MTRjNmI3YjcyIj5Ub0RlY2xhcmF0aW9uPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDAyNzEzNmNhODIwZmY0YTYzNmI2MDcyMzFiNmE2ZGYiPlRvRGVjbGFyYXRpb248L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYThhNGNkYTRiMTVjMjlmNjRjZmY0MTkzMDlhZWJlZDA4Ij5Ub0RvY3VtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNmE0YzhhYzI4ZWU3YTc0NWQwNTlkYjY2OTFlMDNiYWUiPlRvRG9jdW1lbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcyYWJlZDk2ZGM5NjY3YWI5ZTBhMmEyNzUzMDFiYjFjIj5Ub0VsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FhNjVkMDAwMjIzMTg3ZDIyYTRkY2ViZDc0NzllOWViYyI+VG9FbGVtZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E5NWE0NmE1MmM1MjU5OTJkNmI0ZWUwOGJlYjE0Y2Q2OSI+VG9UZXh0PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhM2RkZmJjYWM3OGZiZWEwNDFmYWQ1N2U1YzZkNjBhMDMiPlRvVGV4dDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCNhYjAzMTNlNWZlNzc5ODdkNzQ2YWMxYTk3YTI1NDQxOWQiPlRvVW5rbm93bjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiPlRpWG1sVW5rbm93bjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYTY3YzlmZDIyOTQwZThjNDdmNzA2YTcyY2RkMmUzMzJjIj5Ub1Vua25vd248L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiPlRpWG1sVW5rbm93bjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU3Yjk5ZDVjOTdkNjdhNDJiOTc1MmY1MjEwYTFiYTVlIj5UeXBlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjI0MmMwMTU5MDE5MWY2NDQ1NjlmYTg5YTA4MGQ5N2MiPnVzZXJEYXRhPC9hPjwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbcHJvdGVjdGVkXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzc5NDNlYjkwZDEyYzI4OTJiMTMzN2E5ZjU5MThiNDEiPlZhbHVlPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNmQ5ZTUwNTYxOWQzOWJmNTBiZmQ5NjA5YzkxNjllYTUiPlZhbHVlU3RyPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+Ci08L3RhYmxlPjwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Cis8bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+Cis8L2hlYWQ+PGJvZHk+Cis8IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNC40IC0tPgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJpbmRleC5odG1sIj5NYWluJm5ic3A7UGFnZTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJoaWVyYXJjaHkuaHRtbCI+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPkNsYXNzJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmaWxlcy5odG1sIj5GaWxlJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+Q2xhc3MmbmJzcDtNZW1iZXJzPC9hPjwvZGl2PgorPGgxPlRpWG1sVW5rbm93biBNZW1iZXIgTGlzdDwvaDE+VGhpcyBpcyB0aGUgY29tcGxldGUgbGlzdCBvZiBtZW1iZXJzIGZvciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiPlRpWG1sVW5rbm93bjwvYT4sIGluY2x1ZGluZyBhbGwgaW5oZXJpdGVkIG1lbWJlcnMuPHA+PHRhYmxlPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUiPkNsZWFyPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYTQiPkNsb25lPC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPjwvdGQ+PHRkPjxjb2RlPiBbdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTQiPkNvbHVtbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgiPkZpcnN0Q2hpbGQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMCI+Rmlyc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMSI+Rmlyc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE2Ij5GaXJzdENoaWxkPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNyI+Rmlyc3RDaGlsZDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MCI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUyIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3QgY2hhciAqdmFsdWUpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NCI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU1Ij5GaXJzdENoaWxkRWxlbWVudDwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NyI+R2V0RG9jdW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI5Ij5JbnNlcnRBZnRlckNoaWxkPC9hPihUaVhtbE5vZGUgKmFmdGVyVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjgiPkluc2VydEJlZm9yZUNoaWxkPC9hPihUaVhtbE5vZGUgKmJlZm9yZVRoaXMsIGNvbnN0IFRpWG1sTm9kZSAmYW1wO2FkZFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI2Ij5JbnNlcnRFbmRDaGlsZDwvYT4oY29uc3QgVGlYbWxOb2RlICZhbXA7YWRkVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNlMSI+SXNXaGl0ZVNwYWNlQ29uZGVuc2VkPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHN0YXRpY108L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTIwIj5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IFRpWG1sTm9kZSAqcHJldmlvdXMpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyMiI+SXRlcmF0ZUNoaWxkcmVuPC9hPihjb25zdCBjaGFyICp2YWx1ZSwgY29uc3QgVGlYbWxOb2RlICpwcmV2aW91cykgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI0Ij5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBjb25zdCBUaVhtbE5vZGUgKnByZXZpb3VzKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI1Ij5JdGVyYXRlQ2hpbGRyZW48L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlLCBUaVhtbE5vZGUgKnByZXZpb3VzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTMiPkxhc3RDaGlsZDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTUiPkxhc3RDaGlsZDwvYT4oY29uc3QgY2hhciAqdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE4Ij5MYXN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE5Ij5MYXN0Q2hpbGQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjciPkxpbmtFbmRDaGlsZDwvYT4oVGlYbWxOb2RlICphZGRUaGlzKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzOCI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM5Ij5OZXh0U2libGluZzwvYT4oY29uc3Qgc3RkOjpzdHJpbmcgJmFtcDtfdmFsdWUpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MCI+TmV4dFNpYmxpbmc8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MiI+TmV4dFNpYmxpbmc8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ0Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ2Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IGNoYXIgKikgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ4Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ5Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KGNvbnN0IHN0ZDo6c3RyaW5nICZhbXA7X3ZhbHVlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTkiPk5vQ2hpbGRyZW48L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI3c3Ij5Ob2RlVHlwZTwvYT4gZW51bSBuYW1lPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjMiPm9wZXJhdG9yJmx0OyZsdDs8L2E+KHN0ZDo6b3N0cmVhbSAmYW1wO291dCwgY29uc3QgVGlYbWxOb2RlICZhbXA7YmFzZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2ZyaWVuZF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjQiPm9wZXJhdG9yJmx0OyZsdDs8L2E+KHN0ZDo6c3RyaW5nICZhbXA7b3V0LCBjb25zdCBUaVhtbE5vZGUgJmFtcDtiYXNlKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbZnJpZW5kXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNuMiI+b3BlcmF0b3ImZ3Q7Jmd0OzwvYT4oc3RkOjppc3RyZWFtICZhbXA7aW4sIFRpWG1sTm9kZSAmYW1wO2Jhc2UpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtmcmllbmRdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2Ij5QYXJlbnQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMyIj5QcmV2aW91c1NpYmxpbmc8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzNCI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBjaGFyICopIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzNiI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzNyI+UHJldmlvdXNTaWJsaW5nPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYTUiPlByaW50PC9hPihGSUxFICpjZmlsZSwgaW50IGRlcHRoKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiPlRpWG1sVW5rbm93bjwvYT48L3RkPjx0ZD48Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMSI+UmVtb3ZlQ2hpbGQ8L2E+KFRpWG1sTm9kZSAqcmVtb3ZlVGhpcyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzAiPlJlcGxhY2VDaGlsZDwvYT4oVGlYbWxOb2RlICpyZXBsYWNlVGhpcywgY29uc3QgVGlYbWxOb2RlICZhbXA7d2l0aFRoaXMpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTMiPlJvdzwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjZTAiPlNldENvbmRlbnNlV2hpdGVTcGFjZTwvYT4oYm9vbCBjb25kZW5zZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgc3RhdGljXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMyI+U2V0VmFsdWU8L2E+KGNvbnN0IGNoYXIgKl92YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQiPlNldFZhbHVlPC9hPihjb25zdCBzdGQ6OnN0cmluZyAmYW1wO192YWx1ZSk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYyIj5Ub0NvbW1lbnQ8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2OCI+VG9Db21tZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NSI+VG9EZWNsYXJhdGlvbjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcxIj5Ub0RlY2xhcmF0aW9uPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MCI+VG9Eb2N1bWVudDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY2Ij5Ub0RvY3VtZW50PC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MSI+VG9FbGVtZW50PC9hPigpIGNvbnN0IDwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjciPlRvRWxlbWVudDwvYT4oKTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjQiPlRvVGV4dDwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcwIj5Ub1RleHQ8L2E+KCk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYzIj5Ub1Vua25vd248L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2OSI+VG9Vbmtub3duPC9hPigpPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NiI+VHlwZTwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgorICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjcDEiPnVzZXJEYXRhPC9hPjwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjwvdGQ+PHRkPjxjb2RlPiBbcHJvdGVjdGVkXTwvY29kZT48L3RkPjwvdHI+CisgIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMSI+VmFsdWU8L2E+KCkgY29uc3QgPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmVdPC9jb2RlPjwvdGQ+PC90cj4KKyAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyIj5WYWx1ZVN0cjwvYT4oKSBjb25zdCA8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZV08L2NvZGU+PC90ZD48L3RyPgorPC90YWJsZT48aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9jbGFzc1RpWG1sVW5rbm93bi5odG1sIGIvZG9jcy9jbGFzc1RpWG1sVW5rbm93bi5odG1sCmluZGV4IDE3YjM4NzAuLmE2NjYxZDMgMTAwNjQ0Ci0tLSBhL2RvY3MvY2xhc3NUaVhtbFVua25vd24uaHRtbAorKysgYi9kb2NzL2NsYXNzVGlYbWxVbmtub3duLmh0bWwKQEAgLTEsMTExICsxLDQzIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIj4KKzxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9aXNvLTg4NTktMSI+CiA8dGl0bGU+VGlueVhtbDogVGlYbWxVbmtub3duIENsYXNzIFJlZmVyZW5jZTwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLTxoMT5UaVhtbFVua25vd24gQ2xhc3MgUmVmZXJlbmNlPC9oMT48IS0tIGRveHl0YWc6IGNsYXNzPSJUaVhtbFVua25vd24iIC0tPjwhLS0gZG94eXRhZzogaW5oZXJpdHM9IlRpWG1sTm9kZSIgLS0+Ci08cD5BbnkgdGFnIHRoYXQgdGlueVhtbCBkb2Vzbid0IHJlY29nbml6ZSBpcyBzYXZlZCBhcyBhbiB1bmtub3duLiAgCi08YSBocmVmPSIjX2RldGFpbHMiPk1vcmUuLi48L2E+PC9wPgotCi08cD48Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT48L3A+Ci08ZGl2IGNsYXNzPSJkeW5oZWFkZXIiPgotSW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxVbmtub3duOjwvZGl2PgotPGRpdiBjbGFzcz0iZHluc2VjdGlvbiI+Ci0gPGRpdiBjbGFzcz0iY2VudGVyIj4KLSAgPGltZyBzcmM9ImNsYXNzVGlYbWxVbmtub3duLnBuZyIgdXNlbWFwPSIjVGlYbWxVbmtub3duX21hcCIgYWx0PSIiLz4KLSAgPG1hcCBpZD0iVGlYbWxVbmtub3duX21hcCIgbmFtZT0iVGlYbWxVbmtub3duX21hcCI+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiBhbHQ9IlRpWG1sTm9kZSIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMCw1Niw5NCw4MCIvPgotPGFyZWEgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCIgYWx0PSJUaVhtbEJhc2UiIHNoYXBlPSJyZWN0IiBjb29yZHM9IjAsMCw5NCwyNCIvPgorPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPkNsYXNzJm5ic3A7TWVtYmVyczwvYT48L2Rpdj4KKzxoMT5UaVhtbFVua25vd24gQ2xhc3MgUmVmZXJlbmNlPC9oMT48IS0tIGRveHl0YWc6IGNsYXNzPSJUaVhtbFVua25vd24iIC0tPjwhLS0gZG94eXRhZzogaW5oZXJpdHM9IlRpWG1sTm9kZSIgLS0+QW55IHRhZyB0aGF0IHRpbnlYbWwgZG9lc24ndCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4gIAorPGEgaHJlZj0iI19kZXRhaWxzIj5Nb3JlLi4uPC9hPgorPHA+Cis8Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoLXNvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT4KKzxwPgorPHA+SW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxVbmtub3duOgorPHA+PGNlbnRlcj48aW1nIHNyYz0iY2xhc3NUaVhtbFVua25vd24ucG5nIiB1c2VtYXA9IiNUaVhtbFVua25vd25fbWFwIiBib3JkZXI9IjAiIGFsdD0iIj48L2NlbnRlcj4KKzxtYXAgbmFtZT0iVGlYbWxVbmtub3duX21hcCI+Cis8YXJlYSBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiBhbHQ9IlRpWG1sTm9kZSIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMCw1Niw5NCw4MCI+Cis8YXJlYSBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIiBhbHQ9IlRpWG1sQmFzZSIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMCwwLDk0LDI0Ij4KIDwvbWFwPgotIDwvZGl2PgotPC9kaXY+Cis8YSBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi1tZW1iZXJzLmh0bWwiPkxpc3Qgb2YgYWxsIG1lbWJlcnMuPC9hPjx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCI+Cis8dHI+PHRkPjwvdGQ+PC90cj4KKzx0cj48dGQgY29sc3Bhbj0iMiI+PGJyPjxoMj5QdWJsaWMgTWVtYmVyIEZ1bmN0aW9uczwvaDI+PC90ZD48L3RyPgorPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcCBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJhNCI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFVua25vd246OkNsb25lIiByZWY9ImE0IiBhcmdzPSIoKSBjb25zdCAiIC0tPgordmlydHVhbCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYTQiPkNsb25lPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+CiAKLTxwPjxhIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLW1lbWJlcnMuaHRtbCI+TGlzdCBvZiBhbGwgbWVtYmVycy48L2E+PC9wPgotPHRhYmxlIGJvcmRlcj0iMCIgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIj4KLTx0cj48dGQgY29sc3Bhbj0iMiI+PGgyPlB1YmxpYyBNZW1iZXIgRnVuY3Rpb25zPC9oMj48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEwOTYwYmI3NDI4YjNmMzQxZGE0NjI0NDIyOTYwNGQ3MyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFVua25vd246OkNsb25lIiByZWY9ImEwOTYwYmI3NDI4YjNmMzQxZGE0NjI0NDIyOTYwNGQ3MyIgYXJncz0iKCkgY29uc3QgIiAtLT4KLXZpcnR1YWwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2EwOTYwYmI3NDI4YjNmMzQxZGE0NjI0NDIyOTYwNGQ3MyI+Q2xvbmU8L2E+ICgpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNyZWF0ZXMgYSBjb3B5IG9mIHRoaXMgVW5rbm93biBhbmQgcmV0dXJucyBpdC4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+dmlydHVhbCB2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCNhMzFiYTA4OWE0MGZiNWExODY5NzUwZmNlMDliMGJhY2IiPlByaW50PC9hPiAoRklMRSAqY2ZpbGUsIGludCBkZXB0aCkgY29uc3QgPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+QWxsIFRpbnlYbWwgY2xhc3NlcyBjYW4gcHJpbnQgdGhlbXNlbHZlcyB0byBhIGZpbGVzdHJlYW0gb3IgdGhlIHN0cmluZyBjbGFzcyAoVGlYbWxTdHJpbmcgaW4gbm9uLVNUTCBtb2RlLCBzdGQ6OnN0cmluZyBpbiBTVEwgbW9kZS4gIDxhIGhyZWY9IiNhMzFiYTA4OWE0MGZiNWExODY5NzUwZmNlMDliMGJhY2IiPjwvYT48YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWIwMzEzZTVmZTc3OTg3ZDc0NmFjMWE5N2EyNTQ0MTlkIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVW5rbm93bjo6VG9Vbmtub3duIiByZWY9ImFiMDMxM2U1ZmU3Nzk4N2Q3NDZhYzFhOTdhMjU0NDE5ZCIgYXJncz0iKCkgY29uc3QgIiAtLT4KLXZpcnR1YWwgY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2FiMDMxM2U1ZmU3Nzk4N2Q3NDZhYzFhOTdhMjU0NDE5ZCI+VG9Vbmtub3duPC9hPiAoKSBjb25zdCA8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImE2N2M5ZmQyMjk0MGU4YzQ3ZjcwNmE3MmNkZDJlMzMyYyI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFVua25vd246OlRvVW5rbm93biIgcmVmPSJhNjdjOWZkMjI5NDBlOGM0N2Y3MDZhNzJjZGQyZTMzMmMiIGFyZ3M9IigpIiAtLT4KLXZpcnR1YWwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+ICombmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2E2N2M5ZmQyMjk0MGU4YzQ3ZjcwNmE3MmNkZDJlMzMyYyI+VG9Vbmtub3duPC9hPiAoKTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWQ3MTIyZTUxMzU1ODFiM2M4MzJhMWEzMjE3NzYwYTkzIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVW5rbm93bjo6QWNjZXB0IiByZWY9ImFkNzEyMmU1MTM1NTgxYjNjODMyYTFhMzIxNzc2MGE5MyIgYXJncz0iKFRpWG1sVmlzaXRvciAqY29udGVudCkgY29uc3QgIiAtLT4KLXZpcnR1YWwgYm9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYWQ3MTIyZTUxMzU1ODFiM2M4MzJhMWEzMjE3NzYwYTkzIj5BY2NlcHQ8L2E+ICg8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwiPlRpWG1sVmlzaXRvcjwvYT4gKmNvbnRlbnQpIGNvbnN0IDwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPldhbGsgdGhlIFhNTCB0cmVlIHZpc2l0aW5nIHRoaXMgbm9kZSBhbmQgYWxsIG9mIGl0cyBjaGlsZHJlbi4gPGJyLz48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5DcmVhdGVzIGEgY29weSBvZiB0aGlzIFVua25vd24gYW5kIHJldHVybnMgaXQuIDxicj48L3RkPjwvdHI+Cis8dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgbm93cmFwIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImE1Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVW5rbm93bjo6UHJpbnQiIHJlZj0iYTUiIGFyZ3M9IihGSUxFICpjZmlsZSwgaW50IGRlcHRoKSBjb25zdCAiIC0tPgordmlydHVhbCB2b2lkJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCNhNSI+UHJpbnQ8L2E+IChGSUxFICpjZmlsZSwgaW50IGRlcHRoKSBjb25zdCA8L3RkPjwvdHI+CisKKzx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlByaW50IHRoaXMgVW5rbm93biB0byBhIEZJTEUgc3RyZWFtLiA8YnI+PC90ZD48L3RyPgogPC90YWJsZT4KLTxoci8+PGEgbmFtZT0iX2RldGFpbHMiPjwvYT48aDI+RGV0YWlsZWQgRGVzY3JpcHRpb248L2gyPgotPHA+QW55IHRhZyB0aGF0IHRpbnlYbWwgZG9lc24ndCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4gPC9wPgotPHA+SXQgaXMgYSB0YWcgb2YgdGV4dCwgYnV0IHNob3VsZCBub3QgYmUgbW9kaWZpZWQuIEl0IHdpbGwgYmUgd3JpdHRlbiBiYWNrIHRvIHRoZSBYTUwsIHVuY2hhbmdlZCwgd2hlbiB0aGUgZmlsZSBpcyBzYXZlZC48L3A+Ci08cD5EVEQgdGFncyBnZXQgdGhyb3duIGludG8gVGlYbWxVbmtub3ducy4gPC9wPgotPGhyLz48aDI+TWVtYmVyIEZ1bmN0aW9uIERvY3VtZW50YXRpb248L2gyPgotPGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEzMWJhMDg5YTQwZmI1YTE4Njk3NTBmY2UwOWIwYmFjYiI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFVua25vd246OlByaW50IiByZWY9ImEzMWJhMDg5YTQwZmI1YTE4Njk3NTBmY2UwOWIwYmFjYiIgYXJncz0iKEZJTEUgKmNmaWxlLCBpbnQgZGVwdGgpIGNvbnN0ICIgLS0+Ci08ZGl2IGNsYXNzPSJtZW1pdGVtIj4KLTxkaXYgY2xhc3M9Im1lbXByb3RvIj4KLSAgICAgIDx0YWJsZSBjbGFzcz0ibWVtbmFtZSI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9Im1lbW5hbWUiPnZpcnR1YWwgdm9pZCBUaVhtbFVua25vd246OlByaW50IDwvdGQ+Ci0gICAgICAgICAgPHRkPig8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5GSUxFICombmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmNmaWxlPC9lbT4sIDwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICAgIDx0cj4KLSAgICAgICAgICA8dGQgY2xhc3M9InBhcmFta2V5Ij48L3RkPgotICAgICAgICAgIDx0ZD48L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW10eXBlIj5pbnQmbmJzcDs8L3RkPgotICAgICAgICAgIDx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPmRlcHRoPC9lbT48L3RkPjx0ZD4mbmJzcDs8L3RkPgotICAgICAgICA8L3RyPgotICAgICAgICA8dHI+Ci0gICAgICAgICAgPHRkPjwvdGQ+Ci0gICAgICAgICAgPHRkPik8L3RkPgotICAgICAgICAgIDx0ZD48L3RkPjx0ZD48L3RkPjx0ZD4gY29uc3Q8Y29kZT4gW3ZpcnR1YWxdPC9jb2RlPjwvdGQ+Ci0gICAgICAgIDwvdHI+Ci0gICAgICA8L3RhYmxlPgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJtZW1kb2MiPgotCi08cD5BbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbSBvciB0aGUgc3RyaW5nIGNsYXNzIChUaVhtbFN0cmluZyBpbiBub24tU1RMIG1vZGUsIHN0ZDo6c3RyaW5nIGluIFNUTCBtb2RlLiA8L3A+Ci08cD4pIEVpdGhlciBvciBib3RoIGNmaWxlIGFuZCBzdHIgY2FuIGJlIG51bGwuPC9wPgotPHA+VGhpcyBpcyBhIGZvcm1hdHRlZCBwcmludCwgYW5kIHdpbGwgaW5zZXJ0IHRhYnMgYW5kIG5ld2xpbmVzLjwvcD4KLTxwPihGb3IgYW4gdW5mb3JtYXR0ZWQgc3RyZWFtLCB1c2UgdGhlICZsdDsmbHQ7IG9wZXJhdG9yLikgPC9wPgotCi08cD5JbXBsZW1lbnRzIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGRlNTZiM2YyZWYxNGM2NTA5MWEzYjkxNjQzN2I1MTIiPlRpWG1sQmFzZTwvYT4uPC9wPgotCi08L2Rpdj4KLTwvZGl2PgotPGhyLz5UaGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhpcyBjbGFzcyB3YXMgZ2VuZXJhdGVkIGZyb20gdGhlIGZvbGxvd2luZyBmaWxlOjx1bD4KLTxsaT48YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGhfc291cmNlLmh0bWwiPnRpbnl4bWwuaDwvYT48L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Cis8aHI+PGEgbmFtZT0iX2RldGFpbHMiPjwvYT48aDI+RGV0YWlsZWQgRGVzY3JpcHRpb248L2gyPgorQW55IHRhZyB0aGF0IHRpbnlYbWwgZG9lc24ndCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4gCis8cD4KK0l0IGlzIGEgdGFnIG9mIHRleHQsIGJ1dCBzaG91bGQgbm90IGJlIG1vZGlmaWVkLiBJdCB3aWxsIGJlIHdyaXR0ZW4gYmFjayB0byB0aGUgWE1MLCB1bmNoYW5nZWQsIHdoZW4gdGhlIGZpbGUgaXMgc2F2ZWQuPHA+CitEVEQgdGFncyBnZXQgdGhyb3duIGludG8gVGlYbWxVbmtub3ducy4KKzxwPgorPGhyPlRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGlzIGNsYXNzIHdhcyBnZW5lcmF0ZWQgZnJvbSB0aGUgZm9sbG93aW5nIGZpbGU6PHVsPgorPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aC1zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPjwvdWw+Cis8aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9jbGFzc1RpWG1sVW5rbm93bi5wbmcgYi9kb2NzL2NsYXNzVGlYbWxVbmtub3duLnBuZwppbmRleCBjYWEwYzIzLi4zMzhiZmFiIDEwMDY0NAotLS0gYS9kb2NzL2NsYXNzVGlYbWxVbmtub3duLnBuZworKysgYi9kb2NzL2NsYXNzVGlYbWxVbmtub3duLnBuZwpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kb2NzL2NsYXNzVGlYbWxWaXNpdG9yLW1lbWJlcnMuaHRtbCBiL2RvY3MvY2xhc3NUaVhtbFZpc2l0b3ItbWVtYmVycy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3OGYwNDM5Li4wMDAwMDAwCi0tLSBhL2RvY3MvY2xhc3NUaVhtbFZpc2l0b3ItbWVtYmVycy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNDMgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IE1lbWJlciBMaXN0PC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotPGgxPlRpWG1sVmlzaXRvciBNZW1iZXIgTGlzdDwvaDE+VGhpcyBpcyB0aGUgY29tcGxldGUgbGlzdCBvZiBtZW1iZXJzIGZvciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwiPlRpWG1sVmlzaXRvcjwvYT4sIGluY2x1ZGluZyBhbGwgaW5oZXJpdGVkIG1lbWJlcnMuPHRhYmxlPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYWZhZDcxYzcxY2U2NDczZmI5YjRiNjRjZDkyZGU0YTE5Ij5WaXNpdDwvYT4oY29uc3QgVGlYbWxEZWNsYXJhdGlvbiAmYW1wOyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwiPlRpWG1sVmlzaXRvcjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYTM5OWI4ZWJjYTVjZDE0NjY0OTc0YTMyZDJjZTAyOWU1Ij5WaXNpdDwvYT4oY29uc3QgVGlYbWxUZXh0ICZhbXA7KTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCI+VGlYbWxWaXNpdG9yPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhNTNhNjBlN2E1Mjg2MjdiMzFhZjMxNjE5NzJjYzdmYTIiPlZpc2l0PC9hPihjb25zdCBUaVhtbENvbW1lbnQgJmFtcDspPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIj5UaVhtbFZpc2l0b3I8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2E3ZTI4NGQ2MDdkMjc1YzUxZGFjMWFkYjU4MTU5Y2UyOCI+VmlzaXQ8L2E+KGNvbnN0IFRpWG1sVW5rbm93biAmYW1wOyk8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwiPlRpWG1sVmlzaXRvcjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYTA3YmFlY2I1MmRkN2Q4NzE2YWUyYTQ4YWQwOTU2ZWUwIj5WaXNpdEVudGVyPC9hPihjb25zdCBUaVhtbERvY3VtZW50ICZhbXA7KTwvdGQ+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCI+VGlYbWxWaXNpdG9yPC9hPjwvdGQ+PHRkPjxjb2RlPiBbaW5saW5lLCB2aXJ0dWFsXTwvY29kZT48L3RkPjwvdHI+Ci0gIDx0ciBjbGFzcz0ibWVtbGlzdCI+PHRkPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhZjZjNjE3OGZmYTUxN2JiZGJhOTVkNzA0OTA4NzVmZmYiPlZpc2l0RW50ZXI8L2E+KGNvbnN0IFRpWG1sRWxlbWVudCAmYW1wOywgY29uc3QgVGlYbWxBdHRyaWJ1dGUgKik8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwiPlRpWG1sVmlzaXRvcjwvYT48L3RkPjx0ZD48Y29kZT4gW2lubGluZSwgdmlydHVhbF08L2NvZGU+PC90ZD48L3RyPgotICA8dHIgY2xhc3M9Im1lbWxpc3QiPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYWEwYWRlNGYyNzA4NzQ0N2U5Mzk3NGU5NzVjMzI0NmFkIj5WaXNpdEV4aXQ8L2E+KGNvbnN0IFRpWG1sRG9jdW1lbnQgJmFtcDspPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIj5UaVhtbFZpc2l0b3I8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLSAgPHRyIGNsYXNzPSJtZW1saXN0Ij48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2FlYzJiMWY4MTE2MjI2ZDUyZjNhMWI5NWRhZmQzYTMyYyI+VmlzaXRFeGl0PC9hPihjb25zdCBUaVhtbEVsZW1lbnQgJmFtcDspPC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIj5UaVhtbFZpc2l0b3I8L2E+PC90ZD48dGQ+PGNvZGU+IFtpbmxpbmUsIHZpcnR1YWxdPC9jb2RlPjwvdGQ+PC90cj4KLTwvdGFibGU+PC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2NsYXNzVGlYbWxWaXNpdG9yLmh0bWwgYi9kb2NzL2NsYXNzVGlYbWxWaXNpdG9yLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYwYzZhMjcuLjAwMDAwMDAKLS0tIGEvZG9jcy9jbGFzc1RpWG1sVmlzaXRvci5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsODkgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IFRpWG1sVmlzaXRvciBDbGFzcyBSZWZlcmVuY2U8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci08aDE+VGlYbWxWaXNpdG9yIENsYXNzIFJlZmVyZW5jZTwvaDE+PCEtLSBkb3h5dGFnOiBjbGFzcz0iVGlYbWxWaXNpdG9yIiAtLT4KLTxwPkltcGxlbWVudHMgdGhlIGludGVyZmFjZSB0byB0aGUgIlZpc2l0b3IgcGF0dGVybiIgKHNlZSB0aGUgQWNjZXB0KCkgbWV0aG9kLiAgCi08YSBocmVmPSIjX2RldGFpbHMiPk1vcmUuLi48L2E+PC9wPgotCi08cD48Y29kZT4jaW5jbHVkZSAmbHQ7PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+Jmd0OzwvY29kZT48L3A+Ci08ZGl2IGNsYXNzPSJkeW5oZWFkZXIiPgotSW5oZXJpdGFuY2UgZGlhZ3JhbSBmb3IgVGlYbWxWaXNpdG9yOjwvZGl2PgotPGRpdiBjbGFzcz0iZHluc2VjdGlvbiI+Ci0gPGRpdiBjbGFzcz0iY2VudGVyIj4KLSAgPGltZyBzcmM9ImNsYXNzVGlYbWxWaXNpdG9yLnBuZyIgdXNlbWFwPSIjVGlYbWxWaXNpdG9yX21hcCIgYWx0PSIiLz4KLSAgPG1hcCBpZD0iVGlYbWxWaXNpdG9yX21hcCIgbmFtZT0iVGlYbWxWaXNpdG9yX21hcCI+Ci08YXJlYSBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sIiBhbHQ9IlRpWG1sUHJpbnRlciIgc2hhcGU9InJlY3QiIGNvb3Jkcz0iMCw1Niw4MSw4MCIvPgotPC9tYXA+Ci0gPC9kaXY+Ci08L2Rpdj4KLQotPHA+PGEgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3ItbWVtYmVycy5odG1sIj5MaXN0IG9mIGFsbCBtZW1iZXJzLjwvYT48L3A+Ci08dGFibGUgYm9yZGVyPSIwIiBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiPgotPHRyPjx0ZCBjb2xzcGFuPSIyIj48aDI+UHVibGljIE1lbWJlciBGdW5jdGlvbnM8L2gyPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTA3YmFlY2I1MmRkN2Q4NzE2YWUyYTQ4YWQwOTU2ZWUwIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVmlzaXRvcjo6VmlzaXRFbnRlciIgcmVmPSJhMDdiYWVjYjUyZGQ3ZDg3MTZhZTJhNDhhZDA5NTZlZTAiIGFyZ3M9Iihjb25zdCBUaVhtbERvY3VtZW50ICZhbXA7KSIgLS0+Ci12aXJ0dWFsIGJvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2EwN2JhZWNiNTJkZDdkODcxNmFlMmE0OGFkMDk1NmVlMCI+VmlzaXRFbnRlcjwvYT4gKGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+ICZhbXA7KTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlZpc2l0IGEgZG9jdW1lbnQuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhYTBhZGU0ZjI3MDg3NDQ3ZTkzOTc0ZTk3NWMzMjQ2YWQiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxWaXNpdG9yOjpWaXNpdEV4aXQiIHJlZj0iYWEwYWRlNGYyNzA4NzQ0N2U5Mzk3NGU5NzVjMzI0NmFkIiBhcmdzPSIoY29uc3QgVGlYbWxEb2N1bWVudCAmYW1wOykiIC0tPgotdmlydHVhbCBib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhYTBhZGU0ZjI3MDg3NDQ3ZTkzOTc0ZTk3NWMzMjQ2YWQiPlZpc2l0RXhpdDwvYT4gKGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+ICZhbXA7KTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlZpc2l0IGEgZG9jdW1lbnQuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhZjZjNjE3OGZmYTUxN2JiZGJhOTVkNzA0OTA4NzVmZmYiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxWaXNpdG9yOjpWaXNpdEVudGVyIiByZWY9ImFmNmM2MTc4ZmZhNTE3YmJkYmE5NWQ3MDQ5MDg3NWZmZiIgYXJncz0iKGNvbnN0IFRpWG1sRWxlbWVudCAmYW1wOywgY29uc3QgVGlYbWxBdHRyaWJ1dGUgKikiIC0tPgotdmlydHVhbCBib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhZjZjNjE3OGZmYTUxN2JiZGJhOTVkNzA0OTA4NzVmZmYiPlZpc2l0RW50ZXI8L2E+IChjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4gJmFtcDssIGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT4gKik8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5WaXNpdCBhbiBlbGVtZW50LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWVjMmIxZjgxMTYyMjZkNTJmM2ExYjk1ZGFmZDNhMzJjIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVmlzaXRvcjo6VmlzaXRFeGl0IiByZWY9ImFlYzJiMWY4MTE2MjI2ZDUyZjNhMWI5NWRhZmQzYTMyYyIgYXJncz0iKGNvbnN0IFRpWG1sRWxlbWVudCAmYW1wOykiIC0tPgotdmlydHVhbCBib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhZWMyYjFmODExNjIyNmQ1MmYzYTFiOTVkYWZkM2EzMmMiPlZpc2l0RXhpdDwvYT4gKGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiAmYW1wOyk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5WaXNpdCBhbiBlbGVtZW50LiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYWZhZDcxYzcxY2U2NDczZmI5YjRiNjRjZDkyZGU0YTE5Ij48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVmlzaXRvcjo6VmlzaXQiIHJlZj0iYWZhZDcxYzcxY2U2NDczZmI5YjRiNjRjZDkyZGU0YTE5IiBhcmdzPSIoY29uc3QgVGlYbWxEZWNsYXJhdGlvbiAmYW1wOykiIC0tPgotdmlydHVhbCBib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhZmFkNzFjNzFjZTY0NzNmYjliNGI2NGNkOTJkZTRhMTkiPlZpc2l0PC9hPiAoY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4gJmFtcDspPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+VmlzaXQgYSBkZWNsYXJhdGlvbi4gPGJyLz48L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZW1JdGVtTGVmdCIgYWxpZ249InJpZ2h0IiB2YWxpZ249InRvcCI+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImEzOTliOGViY2E1Y2QxNDY2NDk3NGEzMmQyY2UwMjllNSI+PC9hPjwhLS0gZG94eXRhZzogbWVtYmVyPSJUaVhtbFZpc2l0b3I6OlZpc2l0IiByZWY9ImEzOTliOGViY2E1Y2QxNDY2NDk3NGEzMmQyY2UwMjllNSIgYXJncz0iKGNvbnN0IFRpWG1sVGV4dCAmYW1wOykiIC0tPgotdmlydHVhbCBib29sJm5ic3A7PC90ZD48dGQgY2xhc3M9Im1lbUl0ZW1SaWdodCIgdmFsaWduPSJib3R0b20iPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhMzk5YjhlYmNhNWNkMTQ2NjQ5NzRhMzJkMmNlMDI5ZTUiPlZpc2l0PC9hPiAoY29uc3QgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+ICZhbXA7KTwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1kZXNjTGVmdCI+Jm5ic3A7PC90ZD48dGQgY2xhc3M9Im1kZXNjUmlnaHQiPlZpc2l0IGEgdGV4dCBub2RlLiA8YnIvPjwvdGQ+PC90cj4KLTx0cj48dGQgY2xhc3M9Im1lbUl0ZW1MZWZ0IiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBpZD0iYTUzYTYwZTdhNTI4NjI3YjMxYWYzMTYxOTcyY2M3ZmEyIj48L2E+PCEtLSBkb3h5dGFnOiBtZW1iZXI9IlRpWG1sVmlzaXRvcjo6VmlzaXQiIHJlZj0iYTUzYTYwZTdhNTI4NjI3YjMxYWYzMTYxOTcyY2M3ZmEyIiBhcmdzPSIoY29uc3QgVGlYbWxDb21tZW50ICZhbXA7KSIgLS0+Ci12aXJ0dWFsIGJvb2wmbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2E1M2E2MGU3YTUyODYyN2IzMWFmMzE2MTk3MmNjN2ZhMiI+VmlzaXQ8L2E+IChjb25zdCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT4gJmFtcDspPC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWRlc2NMZWZ0Ij4mbmJzcDs8L3RkPjx0ZCBjbGFzcz0ibWRlc2NSaWdodCI+VmlzaXQgYSBjb21tZW50IG5vZGUuIDxici8+PC90ZD48L3RyPgotPHRyPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIGFsaWduPSJyaWdodCIgdmFsaWduPSJ0b3AiPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJhN2UyODRkNjA3ZDI3NWM1MWRhYzFhZGI1ODE1OWNlMjgiPjwvYT48IS0tIGRveHl0YWc6IG1lbWJlcj0iVGlYbWxWaXNpdG9yOjpWaXNpdCIgcmVmPSJhN2UyODRkNjA3ZDI3NWM1MWRhYzFhZGI1ODE1OWNlMjgiIGFyZ3M9Iihjb25zdCBUaVhtbFVua25vd24gJmFtcDspIiAtLT4KLXZpcnR1YWwgYm9vbCZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYTdlMjg0ZDYwN2QyNzVjNTFkYWMxYWRiNTgxNTljZTI4Ij5WaXNpdDwvYT4gKGNvbnN0IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPiAmYW1wOyk8L3RkPjwvdHI+Ci08dHI+PHRkIGNsYXNzPSJtZGVzY0xlZnQiPiZuYnNwOzwvdGQ+PHRkIGNsYXNzPSJtZGVzY1JpZ2h0Ij5WaXNpdCBhbiB1bmtub3duIG5vZGUuIDxici8+PC90ZD48L3RyPgotPC90YWJsZT4KLTxoci8+PGEgbmFtZT0iX2RldGFpbHMiPjwvYT48aDI+RGV0YWlsZWQgRGVzY3JpcHRpb248L2gyPgotPHA+SW1wbGVtZW50cyB0aGUgaW50ZXJmYWNlIHRvIHRoZSAiVmlzaXRvciBwYXR0ZXJuIiAoc2VlIHRoZSBBY2NlcHQoKSBtZXRob2QuIDwvcD4KLTxwPikgSWYgeW91IGNhbGwgdGhlIEFjY2VwdCgpIG1ldGhvZCwgaXQgcmVxdWlyZXMgYmVpbmcgcGFzc2VkIGEgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIiB0aXRsZT0iSW1wbGVtZW50cyB0aGUgaW50ZXJmYWNlIHRvIHRoZSAmcXVvdDtWaXNpdG9yIHBhdHRlcm4mcXVvdDsgKHNlZSB0aGUgQWNjZXB0KCkgbWV0aG9kLi4uIj5UaVhtbFZpc2l0b3I8L2E+IGNsYXNzIHRvIGhhbmRsZSBjYWxsYmFja3MuIEZvciBub2RlcyB0aGF0IGNvbnRhaW4gb3RoZXIgbm9kZXMgKERvY3VtZW50LCBFbGVtZW50KSB5b3Ugd2lsbCBnZXQgY2FsbGVkIHdpdGggYSBWaXNpdEVudGVyL1Zpc2l0RXhpdCBwYWlyLiBOb2RlcyB0aGF0IGFyZSBhbHdheXMgbGVhdmVzIGFyZSBzaW1wbHkgY2FsbGVkIHdpdGggPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2FmYWQ3MWM3MWNlNjQ3M2ZiOWI0YjY0Y2Q5MmRlNGExOSIgdGl0bGU9IlZpc2l0IGEgZGVjbGFyYXRpb24uIj5WaXNpdCgpPC9hPi48L3A+Ci08cD5JZiB5b3UgcmV0dXJuICd0cnVlJyBmcm9tIGEgVmlzaXQgbWV0aG9kLCByZWN1cnNpdmUgcGFyc2luZyB3aWxsIGNvbnRpbnVlLiBJZiB5b3UgcmV0dXJuIGZhbHNlLCA8Yj5ubyBjaGlsZHJlbiBvZiB0aGlzIG5vZGUgb3IgaXRzIHNpYmlsaW5nczwvYj4gd2lsbCBiZSBWaXNpdGVkLjwvcD4KLTxwPkFsbCBmbGF2b3JzIG9mIFZpc2l0IG1ldGhvZHMgaGF2ZSBhIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gdGhhdCByZXR1cm5zICd0cnVlJyAoY29udGludWUgdmlzaXRpbmcpLiBZb3UgbmVlZCB0byBvbmx5IG92ZXJyaWRlIG1ldGhvZHMgdGhhdCBhcmUgaW50ZXJlc3RpbmcgdG8geW91LjwvcD4KLTxwPkdlbmVyYWxseSBBY2NlcHQoKSBpcyBjYWxsZWQgb24gdGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiIHRpdGxlPSJBbHdheXMgdGhlIHRvcCBsZXZlbCBub2RlLiI+VGlYbWxEb2N1bWVudDwvYT4sIGFsdGhvdWdoIGFsbCBub2RlcyBzdXBwZXJ0IFZpc2l0aW5nLjwvcD4KLTxwPllvdSBzaG91bGQgbmV2ZXIgY2hhbmdlIHRoZSBkb2N1bWVudCBmcm9tIGEgY2FsbGJhY2suPC9wPgotPGRsIGNsYXNzPSJzZWUiPjxkdD48Yj5TZWUgYWxzbzo8L2I+PC9kdD48ZGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjYzBmODhiNzQ2MmM2Y2I3MzgwOWQ0MTBhNGY1YmI4NiIgdGl0bGU9IkFjY2VwdCBhIGhpZXJjaGljYWwgdmlzaXQgdGhlIG5vZGVzIGluIHRoZSBUaW55WE1MIERPTS4iPlRpWG1sTm9kZTo6QWNjZXB0KCk8L2E+IDwvZGQ+PC9kbD4KLTxoci8+VGhlIGRvY3VtZW50YXRpb24gZm9yIHRoaXMgY2xhc3Mgd2FzIGdlbmVyYXRlZCBmcm9tIHRoZSBmb2xsb3dpbmcgZmlsZTo8dWw+Ci08bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55eG1sXzhoX3NvdXJjZS5odG1sIj50aW55eG1sLmg8L2E+PC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvY2xhc3NUaVhtbFZpc2l0b3IucG5nIGIvZG9jcy9jbGFzc1RpWG1sVmlzaXRvci5wbmcKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGI0N2UxNDUuLjAwMDAwMDAKLS0tIGEvZG9jcy9jbGFzc1RpWG1sVmlzaXRvci5wbmcKKysrIC9kZXYvbnVsbApCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kb2NzL2NsYXNzZXMuaHRtbCBiL2RvY3MvY2xhc3Nlcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4ZTI0ZTFiLi4wMDAwMDAwCi0tLSBhL2RvY3MvY2xhc3Nlcy5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzggKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IEFscGhhYmV0aWNhbCBMaXN0PC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotPGgxPkNsYXNzIEluZGV4PC9oMT48ZGl2IGNsYXNzPSJxaW5kZXgiPjxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9IiNsZXR0ZXJfVCI+VDwvYT48L2Rpdj4KLTx0YWJsZSBhbGlnbj0iY2VudGVyIiB3aWR0aD0iOTUlIiBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMCI+Ci08dHI+PHRkPjxhIG5hbWU9ImxldHRlcl9UIj48L2E+PHRhYmxlIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIwIj48dHI+PHRkPjxkaXYgY2xhc3M9ImFoIj4mbmJzcDsmbmJzcDtUJm5ic3A7Jm5ic3A7PC9kaXY+PC90ZD48L3RyPjwvdGFibGU+Ci08L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT4mbmJzcDsmbmJzcDsmbmJzcDs8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4mbmJzcDsmbmJzcDsmbmJzcDs8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwiPlRpWG1sUHJpbnRlcjwvYT4mbmJzcDsmbmJzcDsmbmJzcDs8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiPlRpWG1sVW5rbm93bjwvYT4mbmJzcDsmbmJzcDsmbmJzcDs8L3RkPjwvdHI+PHRyPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+Jm5ic3A7Jm5ic3A7Jm5ic3A7PC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4mbmJzcDsmbmJzcDsmbmJzcDs8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+Jm5ic3A7Jm5ic3A7Jm5ic3A7PC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+Jm5ic3A7Jm5ic3A7Jm5ic3A7PC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIj5UaVhtbFZpc2l0b3I8L2E+Jm5ic3A7Jm5ic3A7Jm5ic3A7PC90ZD48L3RyPjx0cj48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+Jm5ic3A7Jm5ic3A7Jm5ic3A7PC90ZD48dGQ+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT4mbmJzcDsmbmJzcDsmbmJzcDs8L3RkPjx0ZD48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4mbmJzcDsmbmJzcDsmbmJzcDs8L3RkPjwvdHI+PC90YWJsZT48ZGl2IGNsYXNzPSJxaW5kZXgiPjxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9IiNsZXR0ZXJfVCI+VDwvYT48L2Rpdj4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9kZXByZWNhdGVkLmh0bWwgYi9kb2NzL2RlcHJlY2F0ZWQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjEwNGMxMi4uMDAwMDAwMAotLS0gYS9kb2NzL2RlcHJlY2F0ZWQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDQ5ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiBEZXByZWNhdGVkIExpc3Q8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLQotCi08aDE+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImRlcHJlY2F0ZWQiPkRlcHJlY2F0ZWQgTGlzdCA8L2E+PC9oMT48cD48YSBjbGFzcz0iYW5jaG9yIiBpZD0iX2RlcHJlY2F0ZWQwMDAwMDIiPjwvYT4gPC9wPgotPGRsPgotPGR0Pk1lbWJlciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhY2I1ZmU4Mzg4YTUyNjI4OWVhNjVlODE3YTUxZTA1ZTciPlRpWG1sSGFuZGxlOjpFbGVtZW50PC9hPiAoKSBjb25zdCAgPC9kdD4KLTxkZD51c2UgVG9FbGVtZW50LiBSZXR1cm4gdGhlIGhhbmRsZSBhcyBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPi4gVGhpcyBtYXkgcmV0dXJuIG51bGwuIDwvZGQ+Ci08L2RsPgotPHA+PGEgY2xhc3M9ImFuY2hvciIgaWQ9Il9kZXByZWNhdGVkMDAwMDAxIj48L2E+IDwvcD4KLTxkbD4KLTxkdD5NZW1iZXIgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWI0NGI3MjNhOGRjOWFmNzI4MzhhMzAzYzA3OWQwMzc2Ij5UaVhtbEhhbmRsZTo6Tm9kZTwvYT4gKCkgY29uc3QgIDwvZHQ+Ci08ZGQ+dXNlIFRvTm9kZS4gUmV0dXJuIHRoZSBoYW5kbGUgYXMgYSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+LiBUaGlzIG1heSByZXR1cm4gbnVsbC4gPC9kZD4KLTwvZGw+Ci08cD48YSBjbGFzcz0iYW5jaG9yIiBpZD0iX2RlcHJlY2F0ZWQwMDAwMDMiPjwvYT4gPC9wPgotPGRsPgotPGR0Pk1lbWJlciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhOWZjNzM5YzhhMThkMTYwMDA2ZjgyNTcyZmMxNDNkMTMiPlRpWG1sSGFuZGxlOjpUZXh0PC9hPiAoKSBjb25zdCAgPC9kdD4KLTxkZD51c2UgVG9UZXh0KCkgUmV0dXJuIHRoZSBoYW5kbGUgYXMgYSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIHRpdGxlPSJYTUwgdGV4dC4iPlRpWG1sVGV4dDwvYT4uIFRoaXMgbWF5IHJldHVybiBudWxsLiA8L2RkPgotPC9kbD4KLTxwPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJfZGVwcmVjYXRlZDAwMDAwNCI+PC9hPiA8L3A+Ci08ZGw+Ci08ZHQ+TWVtYmVyIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E0OTY3NWI3NDM1N2JhMmFhZTEyNDY1N2E5YTFlZjQ2NSI+VGlYbWxIYW5kbGU6OlVua25vd248L2E+ICgpIGNvbnN0ICA8L2R0PgotPGRkPnVzZSBUb1Vua25vd24oKSBSZXR1cm4gdGhlIGhhbmRsZSBhcyBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCIgdGl0bGU9IkFueSB0YWcgdGhhdCB0aW55WG1sIGRvZXNuJiMzOTt0IHJlY29nbml6ZSBpcyBzYXZlZCBhcyBhbiB1bmtub3duLiI+VGlYbWxVbmtub3duPC9hPi4gVGhpcyBtYXkgcmV0dXJuIG51bGwuIDwvZGQ+Ci08L2RsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2RveHlnZW4uY3NzIGIvZG9jcy9kb3h5Z2VuLmNzcwppbmRleCBiMDU3YTkyLi5kZWNhZTllIDEwMDY0NAotLS0gYS9kb2NzL2RveHlnZW4uY3NzCisrKyBiL2RvY3MvZG94eWdlbi5jc3MKQEAgLTEsNTMyICsxLDMwOSBAQAotLyogVGhlIHN0YW5kYXJkIENTUyBmb3IgZG94eWdlbiAqLwotCi1ib2R5LCB0YWJsZSwgZGl2LCBwLCBkbCB7Ci0JZm9udC1mYW1pbHk6IEx1Y2lkYSBHcmFuZGUsIFZlcmRhbmEsIEdlbmV2YSwgQXJpYWwsIHNhbnMtc2VyaWY7Ci0JZm9udC1zaXplOiAxMnB4OworQk9EWSxIMSxIMixIMyxINCxINSxINixQLENFTlRFUixURCxUSCxVTCxETCxESVYgeworCWZvbnQtZmFtaWx5OiBHZW5ldmEsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7CiB9Ci0KLS8qIEBncm91cCBIZWFkaW5nIExldmVscyAqLwotCi1oMSB7CitCT0RZLFREIHsKKyAgICAgICBmb250LXNpemU6IDkwJTsKK30KK0gxIHsKIAl0ZXh0LWFsaWduOiBjZW50ZXI7Ci0JZm9udC1zaXplOiAxNTAlOworICAgICAgIGZvbnQtc2l6ZTogMTYwJTsKIH0KLQotaDIgewotCWZvbnQtc2l6ZTogMTIwJTsKK0gyIHsKKyAgICAgICBmb250LXNpemU6IDEyMCU7CiB9Ci0KLWgzIHsKLQlmb250LXNpemU6IDEwMCU7CitIMyB7CisgICAgICAgZm9udC1zaXplOiAxMDAlOwogfQotCi1kdCB7Ci0JZm9udC13ZWlnaHQ6IGJvbGQ7Ci19Ci0KLWRpdi5tdWx0aWNvbCB7Ci0JLW1vei1jb2x1bW4tZ2FwOiAxZW07Ci0JLXdlYmtpdC1jb2x1bW4tZ2FwOiAxZW07Ci0JLW1vei1jb2x1bW4tY291bnQ6IDM7Ci0JLXdlYmtpdC1jb2x1bW4tY291bnQ6IDM7Ci19Ci0KLXAuc3RhcnRsaSwgcC5zdGFydGRkLCBwLnN0YXJ0dGQgewotCW1hcmdpbi10b3A6IDJweDsKLX0KLQotcC5lbmRsaSB7Ci0JbWFyZ2luLWJvdHRvbTogMHB4OwotfQotCi1wLmVuZGRkIHsKLQltYXJnaW4tYm90dG9tOiA0cHg7Ci19Ci0KLXAuZW5kdGQgewotCW1hcmdpbi1ib3R0b206IDJweDsKLX0KLQotLyogQGVuZCAqLwotCi1jYXB0aW9uIHsKLQlmb250LXdlaWdodDogYm9sZDsKLX0KLQotc3Bhbi5sZWdlbmQgewotICAgICAgICBmb250LXNpemU6IDcwJTsKLSAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwotfQotCi1oMy52ZXJzaW9uIHsKLSAgICAgICAgZm9udC1zaXplOiA5MCU7Ci0gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKLX0KLQotZGl2LnFpbmRleCwgZGl2Lm5hdnRhYnsKLQliYWNrZ3JvdW5kLWNvbG9yOiAjZThlZWYyOwotCWJvcmRlcjogMXB4IHNvbGlkICM4NGIwYzc7CitDQVBUSU9OIHsgZm9udC13ZWlnaHQ6IGJvbGQgfQorRElWLnFpbmRleCB7CisJd2lkdGg6IDEwMCU7CisJYmFja2dyb3VuZC1jb2xvcjogI2VlZWVmZjsKKwlib3JkZXI6IDFweCBzb2xpZCAjYjBiMGIwOwogCXRleHQtYWxpZ246IGNlbnRlcjsKIAltYXJnaW46IDJweDsKIAlwYWRkaW5nOiAycHg7Ci19Ci0KLWRpdi5xaW5kZXgsIGRpdi5uYXZwYXRoIHsKLQl3aWR0aDogMTAwJTsKIAlsaW5lLWhlaWdodDogMTQwJTsKIH0KLQotZGl2Lm5hdnRhYiB7Ci0JbWFyZ2luLXJpZ2h0OiAxNXB4OworRElWLm5hdiB7CisJd2lkdGg6IDEwMCU7CisJYmFja2dyb3VuZC1jb2xvcjogI2VlZWVmZjsKKwlib3JkZXI6IDFweCBzb2xpZCAjYjBiMGIwOworCXRleHQtYWxpZ246IGNlbnRlcjsKKwltYXJnaW46IDJweDsKKwlwYWRkaW5nOiAycHg7CisJbGluZS1oZWlnaHQ6IDE0MCU7CiB9Ci0KLS8qIEBncm91cCBMaW5rIFN0eWxpbmcgKi8KLQotYSB7Ci0JY29sb3I6ICMxNTM3ODg7Ci0JZm9udC13ZWlnaHQ6IG5vcm1hbDsKK0RJVi5uYXZ0YWIgeworICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZmY7CisgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2IwYjBiMDsKKyAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7CisgICAgICAgbWFyZ2luOiAycHg7CisgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OworICAgICAgIHBhZGRpbmc6IDJweDsKK30KK1RELm5hdnRhYiB7CisgICAgICAgZm9udC1zaXplOiA3MCU7Cit9CitBLnFpbmRleCB7CisgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOworICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOworICAgICAgIGNvbG9yOiAjMUE0MTlEOworfQorQS5xaW5kZXg6dmlzaXRlZCB7CisgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOworICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOworICAgICAgIGNvbG9yOiAjMUE0MTlECit9CitBLnFpbmRleDpob3ZlciB7CiAJdGV4dC1kZWNvcmF0aW9uOiBub25lOworCWJhY2tncm91bmQtY29sb3I6ICNkZGRkZmY7CiB9Ci0KLS5jb250ZW50cyBhOnZpc2l0ZWQgewotCWNvbG9yOiAjMWI3N2M1OwotfQotCi1hOmhvdmVyIHsKLQl0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsKLX0KLQotYS5xaW5kZXggewotCWZvbnQtd2VpZ2h0OiBib2xkOwotfQotCi1hLnFpbmRleEhMIHsKK0EucWluZGV4SEwgeworCXRleHQtZGVjb3JhdGlvbjogbm9uZTsKIAlmb250LXdlaWdodDogYm9sZDsKIAliYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NmNjOwogCWNvbG9yOiAjZmZmZmZmOwogCWJvcmRlcjogMXB4IGRvdWJsZSAjOTI5NUMyOwogfQotCi0uY29udGVudHMgYS5xaW5kZXhITDp2aXNpdGVkIHsKLSAgICAgICAgY29sb3I6ICNmZmZmZmY7CitBLnFpbmRleEhMOmhvdmVyIHsKKwl0ZXh0LWRlY29yYXRpb246IG5vbmU7CisJYmFja2dyb3VuZC1jb2xvcjogIzY2NjZjYzsKKwljb2xvcjogI2ZmZmZmZjsKIH0KLQotYS5lbCB7Ci0JZm9udC13ZWlnaHQ6IGJvbGQ7Ci19Ci0KLWEuZWxSZWYgewotfQotCi1hLmNvZGUgewotCWNvbG9yOiAjMzAzMGYwOwotfQotCi1hLmNvZGVSZWYgewotCWNvbG9yOiAjMzAzMGYwOwotfQotCi0vKiBAZW5kICovCi0KLWRsLmVsIHsKLQltYXJnaW4tbGVmdDogLTFjbTsKLX0KLQorQS5xaW5kZXhITDp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NmNjOyBjb2xvcjogI2ZmZmZmZiB9CitBLmVsIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBmb250LXdlaWdodDogYm9sZCB9CitBLmVsUmVmIHsgZm9udC13ZWlnaHQ6IGJvbGQgfQorQS5jb2RlOmxpbmsgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGNvbG9yOiAjMDAwMEZGfQorQS5jb2RlOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGNvbG9yOiAjMDAwMEZGfQorQS5jb2RlUmVmOmxpbmsgeyBmb250LXdlaWdodDogbm9ybWFsOyBjb2xvcjogIzAwMDBGRn0KK0EuY29kZVJlZjp2aXNpdGVkIHsgZm9udC13ZWlnaHQ6IG5vcm1hbDsgY29sb3I6ICMwMDAwRkZ9CitBOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmZmIH0KK0RMLmVsIHsgbWFyZ2luLWxlZnQ6IC0xY20gfQogLmZyYWdtZW50IHsKLQlmb250LWZhbWlseTogbW9ub3NwYWNlLCBmaXhlZDsKLQlmb250LXNpemU6IDEwNSU7CisgICAgICAgZm9udC1mYW1pbHk6IEZpeGVkLCBtb25vc3BhY2U7CisgICAgICAgZm9udC1zaXplOiA5NSU7CiB9Ci0KLXByZS5mcmFnbWVudCB7CitQUkUuZnJhZ21lbnQgewogCWJvcmRlcjogMXB4IHNvbGlkICNDQ0NDQ0M7CiAJYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsKLQlwYWRkaW5nOiA0cHggNnB4OwotCW1hcmdpbjogNHB4IDhweCA0cHggMnB4OwotCW92ZXJmbG93OiBhdXRvOwotCXdvcmQtd3JhcDogYnJlYWstd29yZDsKLQlmb250LXNpemU6ICA5cHQ7Ci0JbGluZS1oZWlnaHQ6IDEyNSU7CisJbWFyZ2luLXRvcDogNHB4OworCW1hcmdpbi1ib3R0b206IDRweDsKKwltYXJnaW4tbGVmdDogMnB4OworCW1hcmdpbi1yaWdodDogOHB4OworCXBhZGRpbmctbGVmdDogNnB4OworCXBhZGRpbmctcmlnaHQ6IDZweDsKKwlwYWRkaW5nLXRvcDogNHB4OworCXBhZGRpbmctYm90dG9tOiA0cHg7CiB9Ci0KLWRpdi5haCB7Ci0JYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7Ci0JZm9udC13ZWlnaHQ6IGJvbGQ7Ci0JY29sb3I6ICNmZmZmZmY7Ci0JbWFyZ2luLWJvdHRvbTogM3B4OwotCW1hcmdpbi10b3A6IDNweAorRElWLmFoIHsgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7IGZvbnQtd2VpZ2h0OiBib2xkOyBjb2xvcjogI2ZmZmZmZjsgbWFyZ2luLWJvdHRvbTogM3B4OyBtYXJnaW4tdG9wOiAzcHggfQorVEQubWQgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEZCOyBmb250LXdlaWdodDogYm9sZDsgfQorVEQubWRQcmVmaXggeworICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNEY0RkI7CisgICAgICAgY29sb3I6ICM2MDYwNjA7CisJZm9udC1zaXplOiA4MCU7CiB9Ci0KLWRpdi5ncm91cEhlYWRlciB7Ci0JbWFyZ2luLWxlZnQ6IDE2cHg7Ci0JbWFyZ2luLXRvcDogMTJweDsKLQltYXJnaW4tYm90dG9tOiA2cHg7Ci0JZm9udC13ZWlnaHQ6IGJvbGQ7CitURC5tZG5hbWUxIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y0RjRGQjsgZm9udC13ZWlnaHQ6IGJvbGQ7IGNvbG9yOiAjNjAyMDIwOyB9CitURC5tZG5hbWUgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEZCOyBmb250LXdlaWdodDogYm9sZDsgY29sb3I6ICM2MDIwMjA7IHdpZHRoOiA2MDBweDsgfQorRElWLmdyb3VwSGVhZGVyIHsKKyAgICAgICBtYXJnaW4tbGVmdDogMTZweDsKKyAgICAgICBtYXJnaW4tdG9wOiAxMnB4OworICAgICAgIG1hcmdpbi1ib3R0b206IDZweDsKKyAgICAgICBmb250LXdlaWdodDogYm9sZDsKIH0KLQotZGl2Lmdyb3VwVGV4dCB7Ci0JbWFyZ2luLWxlZnQ6IDE2cHg7Ci0JZm9udC1zdHlsZTogaXRhbGljOwotfQotCi1ib2R5IHsKK0RJVi5ncm91cFRleHQgeyBtYXJnaW4tbGVmdDogMTZweDsgZm9udC1zdHlsZTogaXRhbGljOyBmb250LXNpemU6IDkwJSB9CitCT0RZIHsKIAliYWNrZ3JvdW5kOiB3aGl0ZTsKIAljb2xvcjogYmxhY2s7CiAJbWFyZ2luLXJpZ2h0OiAyMHB4OwogCW1hcmdpbi1sZWZ0OiAyMHB4OwogfQotCi10ZC5pbmRleGtleSB7Ci0JYmFja2dyb3VuZC1jb2xvcjogI2U4ZWVmMjsKK1RELmluZGV4a2V5IHsKKwliYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWZmOwogCWZvbnQtd2VpZ2h0OiBib2xkOworCXBhZGRpbmctcmlnaHQgIDogMTBweDsKKwlwYWRkaW5nLXRvcCAgICA6IDJweDsKKwlwYWRkaW5nLWxlZnQgICA6IDEwcHg7CisJcGFkZGluZy1ib3R0b20gOiAycHg7CisJbWFyZ2luLWxlZnQgICAgOiAwcHg7CisJbWFyZ2luLXJpZ2h0ICAgOiAwcHg7CisJbWFyZ2luLXRvcCAgICAgOiAycHg7CisJbWFyZ2luLWJvdHRvbSAgOiAycHg7CiAJYm9yZGVyOiAxcHggc29saWQgI0NDQ0NDQzsKLQltYXJnaW46IDJweCAwcHggMnB4IDA7Ci0JcGFkZGluZzogMnB4IDEwcHg7CiB9Ci0KLXRkLmluZGV4dmFsdWUgewotCWJhY2tncm91bmQtY29sb3I6ICNlOGVlZjI7CitURC5pbmRleHZhbHVlIHsKKwliYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWZmOworCWZvbnQtc3R5bGU6IGl0YWxpYzsKKwlwYWRkaW5nLXJpZ2h0ICA6IDEwcHg7CisJcGFkZGluZy10b3AgICAgOiAycHg7CisJcGFkZGluZy1sZWZ0ICAgOiAxMHB4OworCXBhZGRpbmctYm90dG9tIDogMnB4OworCW1hcmdpbi1sZWZ0ICAgIDogMHB4OworCW1hcmdpbi1yaWdodCAgIDogMHB4OworCW1hcmdpbi10b3AgICAgIDogMnB4OworCW1hcmdpbi1ib3R0b20gIDogMnB4OwogCWJvcmRlcjogMXB4IHNvbGlkICNDQ0NDQ0M7Ci0JcGFkZGluZzogMnB4IDEwcHg7Ci0JbWFyZ2luOiAycHggMHB4OwogfQotCi10ci5tZW1saXN0IHsKLQliYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwOworVFIubWVtbGlzdCB7CisgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwOyAKIH0KLQotcC5mb3JtdWxhRHNwIHsKLQl0ZXh0LWFsaWduOiBjZW50ZXI7CitQLmZvcm11bGFEc3AgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH0KK0lNRy5mb3JtdWxhRHNwIHsgfQorSU1HLmZvcm11bGFJbmwgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9CitTUEFOLmtleXdvcmQgICAgICAgeyBjb2xvcjogIzAwODAwMCB9CitTUEFOLmtleXdvcmR0eXBlICAgeyBjb2xvcjogIzYwNDAyMCB9CitTUEFOLmtleXdvcmRmbG93ICAgeyBjb2xvcjogI2UwODAwMCB9CitTUEFOLmNvbW1lbnQgICAgICAgeyBjb2xvcjogIzgwMDAwMCB9CitTUEFOLnByZXByb2Nlc3NvciAgeyBjb2xvcjogIzgwNjAyMCB9CitTUEFOLnN0cmluZ2xpdGVyYWwgeyBjb2xvcjogIzAwMjA4MCB9CitTUEFOLmNoYXJsaXRlcmFsICAgeyBjb2xvcjogIzAwODA4MCB9CisubWRUYWJsZSB7CisJYm9yZGVyOiAxcHggc29saWQgIzg2ODY4NjsKKwliYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNEZCOwogfQotCi1pbWcuZm9ybXVsYURzcCB7Ci0JCisubWRSb3cgeworCXBhZGRpbmc6IDhweCAxMHB4OwogfQotCi1pbWcuZm9ybXVsYUlubCB7Ci0JdmVydGljYWwtYWxpZ246IG1pZGRsZTsKLX0KLQotZGl2LmNlbnRlciB7Ci0JdGV4dC1hbGlnbjogY2VudGVyOwotICAgICAgICBtYXJnaW4tdG9wOiAwcHg7Ci0gICAgICAgIG1hcmdpbi1ib3R0b206IDBweDsKLSAgICAgICAgcGFkZGluZzogMHB4OwotfQotCi1kaXYuY2VudGVyIGltZyB7Ci0JYm9yZGVyOiAwcHg7Ci19Ci0KLWltZy5mb290ZXIgewotCWJvcmRlcjogMHB4OwotCXZlcnRpY2FsLWFsaWduOiBtaWRkbGU7Ci19Ci0KLS8qIEBncm91cCBDb2RlIENvbG9yaXphdGlvbiAqLwotCi1zcGFuLmtleXdvcmQgewotCWNvbG9yOiAjMDA4MDAwCi19Ci0KLXNwYW4ua2V5d29yZHR5cGUgewotCWNvbG9yOiAjNjA0MDIwCi19Ci0KLXNwYW4ua2V5d29yZGZsb3cgewotCWNvbG9yOiAjZTA4MDAwCi19Ci0KLXNwYW4uY29tbWVudCB7Ci0JY29sb3I6ICM4MDAwMDAKLX0KLQotc3Bhbi5wcmVwcm9jZXNzb3IgewotCWNvbG9yOiAjODA2MDIwCi19Ci0KLXNwYW4uc3RyaW5nbGl0ZXJhbCB7Ci0JY29sb3I6ICMwMDIwODAKLX0KLQotc3Bhbi5jaGFybGl0ZXJhbCB7Ci0JY29sb3I6ICMwMDgwODAKLX0KLQotc3Bhbi52aGRsZGlnaXQgeyAKLQljb2xvcjogI2ZmMDBmZiAKLX0KLQotc3Bhbi52aGRsY2hhciB7IAotCWNvbG9yOiAjMDAwMDAwIAotfQotCi1zcGFuLnZoZGxrZXl3b3JkIHsgCi0JY29sb3I6ICM3MDAwNzAgCi19Ci0KLXNwYW4udmhkbGxvZ2ljIHsgCi0JY29sb3I6ICNmZjAwMDAgCi19Ci0KLS8qIEBlbmQgKi8KLQotLnNlYXJjaCB7Ci0JY29sb3I6ICMwMDMzOTk7Ci0JZm9udC13ZWlnaHQ6IGJvbGQ7Ci19Ci0KLWZvcm0uc2VhcmNoIHsKLQltYXJnaW4tYm90dG9tOiAwcHg7Ci0JbWFyZ2luLXRvcDogMHB4OwotfQotCi1pbnB1dC5zZWFyY2ggewotCWZvbnQtc2l6ZTogNzUlOwotCWNvbG9yOiAjMDAwMDgwOwotCWZvbnQtd2VpZ2h0OiBub3JtYWw7Ci0JYmFja2dyb3VuZC1jb2xvcjogI2U4ZWVmMjsKLX0KLQotdGQudGlueSB7Ci0JZm9udC1zaXplOiA3NSU7Ci19Ci0KLS5kaXJ0YWIgewotCXBhZGRpbmc6IDRweDsKLQlib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwotCWJvcmRlcjogMXB4IHNvbGlkICM4NGIwYzc7Ci19Ci0KLXRoLmRpcnRhYiB7Ci0JYmFja2dyb3VuZDogI2U4ZWVmMjsKLQlmb250LXdlaWdodDogYm9sZDsKLX0KLQotaHIgewotCWhlaWdodDogMDsKLQlib3JkZXI6IG5vbmU7Ci0JYm9yZGVyLXRvcDogMXB4IHNvbGlkICM2NjY7Ci19Ci0KLS8qIEBncm91cCBNZW1iZXIgRGVzY3JpcHRpb25zICovCi0KLS5tZGVzY0xlZnQsIC5tZGVzY1JpZ2h0LAotLm1lbUl0ZW1MZWZ0LCAubWVtSXRlbVJpZ2h0LAotLm1lbVRlbXBsSXRlbUxlZnQsIC5tZW1UZW1wbEl0ZW1SaWdodCwgLm1lbVRlbXBsUGFyYW1zIHsKLQliYWNrZ3JvdW5kLWNvbG9yOiAjRkFGQUZBOwotCWJvcmRlcjogbm9uZTsKLQltYXJnaW46IDRweDsKLQlwYWRkaW5nOiAxcHggMCAwIDhweDsKLX0KLQotLm1kZXNjTGVmdCwgLm1kZXNjUmlnaHQgewotCXBhZGRpbmc6IDBweCA4cHggNHB4IDhweDsKLQljb2xvcjogIzU1NTsKLX0KLQotLm1lbUl0ZW1MZWZ0LCAubWVtSXRlbVJpZ2h0LCAubWVtVGVtcGxQYXJhbXMgewotCWJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjOwotfQotCi0ubWVtSXRlbUxlZnQsIC5tZW1UZW1wbEl0ZW1MZWZ0IHsKLSAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKLX0KLQotLm1lbVRlbXBsUGFyYW1zIHsKLQljb2xvcjogIzYwNjA2MDsKLSAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsKLX0KLQotLyogQGVuZCAqLwotCi0vKiBAZ3JvdXAgTWVtYmVyIERldGFpbHMgKi8KLQotLyogU3R5bGVzIGZvciBkZXRhaWxlZCBtZW1iZXIgZG9jdW1lbnRhdGlvbiAqLwotCi0ubWVtdGVtcGxhdGUgeworLm1kZXNjTGVmdCB7CisgICAgICAgcGFkZGluZzogMHB4IDhweCA0cHggOHB4OwogCWZvbnQtc2l6ZTogODAlOwotCWNvbG9yOiAjNjA2MDYwOwotCWZvbnQtd2VpZ2h0OiBub3JtYWw7Ci0JbWFyZ2luLWxlZnQ6IDNweDsKLX0KLQotLm1lbW5hdiB7Ci0JYmFja2dyb3VuZC1jb2xvcjogI2U4ZWVmMjsKLQlib3JkZXI6IDFweCBzb2xpZCAjODRiMGM3OwotCXRleHQtYWxpZ246IGNlbnRlcjsKLQltYXJnaW46IDJweDsKLQltYXJnaW4tcmlnaHQ6IDE1cHg7Ci0JcGFkZGluZzogMnB4OwotfQotCi0ubWVtaXRlbSB7Ci0JcGFkZGluZzogMDsKLQltYXJnaW4tYm90dG9tOiAxMHB4OwotfQotCi0ubWVtbmFtZSB7Ci0Jd2hpdGUtc3BhY2U6IG5vd3JhcDsKLQlmb250LXdlaWdodDogYm9sZDsKLX0KLQotLm1lbXByb3RvLCAubWVtZG9jIHsKLQlib3JkZXI6IDFweCBzb2xpZCAjODRiMGM3OwkKLX0KLQotLm1lbXByb3RvIHsKLQlwYWRkaW5nOiAwOwotCWJhY2tncm91bmQtY29sb3I6ICNkNWUxZTg7Ci0JZm9udC13ZWlnaHQ6IGJvbGQ7Ci0JLXdlYmtpdC1ib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA4cHg7Ci0JLXdlYmtpdC1ib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogOHB4OwotICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDVweCA1cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7Ci0JLW1vei1ib3JkZXItcmFkaXVzLXRvcGxlZnQ6IDhweDsKLQktbW96LWJvcmRlci1yYWRpdXMtdG9wcmlnaHQ6IDhweDsKLSAgICAgICAgLW1vei1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMTUpIDVweCA1cHggNXB4OwotCi19Ci0KLS5tZW1kb2MgewotCXBhZGRpbmc6IDJweCA1cHg7Ci0JYmFja2dyb3VuZC1jb2xvcjogI2VlZjNmNTsKLQlib3JkZXItdG9wLXdpZHRoOiAwOwotCS13ZWJraXQtYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogOHB4OwotCS13ZWJraXQtYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDhweDsKLSAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiA1cHggNXB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTUpOwotCS1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21sZWZ0OiA4cHg7Ci0JLW1vei1ib3JkZXItcmFkaXVzLWJvdHRvbXJpZ2h0OiA4cHg7Ci0gICAgICAgIC1tb3otYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjE1KSA1cHggNXB4IDVweDsKLX0KLQotLnBhcmFta2V5IHsKLQl0ZXh0LWFsaWduOiByaWdodDsKLX0KLQotLnBhcmFtdHlwZSB7Ci0Jd2hpdGUtc3BhY2U6IG5vd3JhcDsKLX0KLQotLnBhcmFtbmFtZSB7Ci0JY29sb3I6ICM2MDIwMjA7Ci0Jd2hpdGUtc3BhY2U6IG5vd3JhcDsKLX0KLS5wYXJhbW5hbWUgZW0gewotCWZvbnQtc3R5bGU6IG5vcm1hbDsKLX0KLQotLyogQGVuZCAqLwotCi0vKiBAZ3JvdXAgRGlyZWN0b3J5ICh0cmVlKSAqLwotCi0vKiBmb3IgdGhlIHRyZWUgdmlldyAqLwotCi0uZnR2dHJlZSB7Ci0JZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7Ci0JbWFyZ2luOiAwLjVlbTsKLX0KLQotLyogdGhlc2UgYXJlIGZvciB0cmVlIHZpZXcgd2hlbiB1c2VkIGFzIG1haW4gaW5kZXggKi8KLQotLmRpcmVjdG9yeSB7Ci0JZm9udC1zaXplOiA5cHQ7Ci0JZm9udC13ZWlnaHQ6IGJvbGQ7Ci19Ci0KLS5kaXJlY3RvcnkgaDMgewotCW1hcmdpbjogMHB4OwotCW1hcmdpbi10b3A6IDFlbTsKLQlmb250LXNpemU6IDExcHQ7Ci19Ci0KLS8qCi1UaGUgZm9sbG93aW5nIHR3byBzdHlsZXMgY2FuIGJlIHVzZWQgdG8gcmVwbGFjZSB0aGUgcm9vdCBub2RlIHRpdGxlCi13aXRoIGFuIGltYWdlIG9mIHlvdXIgY2hvaWNlLiAgU2ltcGx5IHVuY29tbWVudCB0aGUgbmV4dCB0d28gc3R5bGVzLAotc3BlY2lmeSB0aGUgbmFtZSBvZiB5b3VyIGltYWdlIGFuZCBiZSBzdXJlIHRvIHNldCAnaGVpZ2h0JyB0byB0aGUKLXByb3BlciBwaXhlbCBoZWlnaHQgb2YgeW91ciBpbWFnZS4KLSovCi0KLS8qCi0uZGlyZWN0b3J5IGgzLnN3YXAgewotCWhlaWdodDogNjFweDsKLQliYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwotCWJhY2tncm91bmQtaW1hZ2U6IHVybCgieW91cmltYWdlLmdpZiIpOwotfQotLmRpcmVjdG9yeSBoMy5zd2FwIHNwYW4gewotCWRpc3BsYXk6IG5vbmU7Ci19Ci0qLwotCi0uZGlyZWN0b3J5ID4gaDMgewotCW1hcmdpbi10b3A6IDA7Ci19Ci0KLS5kaXJlY3RvcnkgcCB7Ci0JbWFyZ2luOiAwcHg7Ci0Jd2hpdGUtc3BhY2U6IG5vd3JhcDsKLX0KLQotLmRpcmVjdG9yeSBkaXYgewotCWRpc3BsYXk6IG5vbmU7CisJZm9udC1zdHlsZTogaXRhbGljOworCWJhY2tncm91bmQtY29sb3I6ICNGQUZBRkE7CisJYm9yZGVyLXRvcDogMXB4IG5vbmUgI0UwRTBFMDsKKwlib3JkZXItcmlnaHQ6IDFweCBub25lICNFMEUwRTA7CisJYm9yZGVyLWJvdHRvbTogMXB4IG5vbmUgI0UwRTBFMDsKKwlib3JkZXItbGVmdDogMXB4IG5vbmUgI0UwRTBFMDsKIAltYXJnaW46IDBweDsKIH0KLQotLmRpcmVjdG9yeSBpbWcgewotCXZlcnRpY2FsLWFsaWduOiAtMzAlOwotfQotCi0vKiB0aGVzZSBhcmUgZm9yIHRyZWUgdmlldyB3aGVuIG5vdCB1c2VkIGFzIG1haW4gaW5kZXggKi8KLQotLmRpcmVjdG9yeS1hbHQgewotCWZvbnQtc2l6ZTogMTAwJTsKLQlmb250LXdlaWdodDogYm9sZDsKLX0KLQotLmRpcmVjdG9yeS1hbHQgaDMgewotCW1hcmdpbjogMHB4OwotCW1hcmdpbi10b3A6IDFlbTsKLQlmb250LXNpemU6IDExcHQ7Ci19Ci0KLS5kaXJlY3RvcnktYWx0ID4gaDMgewotCW1hcmdpbi10b3A6IDA7Ci19Ci0KLS5kaXJlY3RvcnktYWx0IHAgewotCW1hcmdpbjogMHB4OwotCXdoaXRlLXNwYWNlOiBub3dyYXA7Ci19Ci0KLS5kaXJlY3RvcnktYWx0IGRpdiB7Ci0JZGlzcGxheTogbm9uZTsKKy5tZGVzY1JpZ2h0IHsKKyAgICAgICBwYWRkaW5nOiAwcHggOHB4IDRweCA4cHg7CisJZm9udC1zaXplOiA4MCU7CisJZm9udC1zdHlsZTogaXRhbGljOworCWJhY2tncm91bmQtY29sb3I6ICNGQUZBRkE7CisJYm9yZGVyLXRvcDogMXB4IG5vbmUgI0UwRTBFMDsKKwlib3JkZXItcmlnaHQ6IDFweCBub25lICNFMEUwRTA7CisJYm9yZGVyLWJvdHRvbTogMXB4IG5vbmUgI0UwRTBFMDsKKwlib3JkZXItbGVmdDogMXB4IG5vbmUgI0UwRTBFMDsKIAltYXJnaW46IDBweDsKIH0KLQotLmRpcmVjdG9yeS1hbHQgaW1nIHsKLQl2ZXJ0aWNhbC1hbGlnbjogLTMwJTsKKy5tZW1JdGVtTGVmdCB7CisJcGFkZGluZzogMXB4IDBweCAwcHggOHB4OworCW1hcmdpbjogNHB4OworCWJvcmRlci10b3Atd2lkdGg6IDFweDsKKwlib3JkZXItcmlnaHQtd2lkdGg6IDFweDsKKwlib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7CisJYm9yZGVyLWxlZnQtd2lkdGg6IDFweDsKKwlib3JkZXItdG9wLWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci1yaWdodC1jb2xvcjogI0UwRTBFMDsKKwlib3JkZXItYm90dG9tLWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci1sZWZ0LWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci10b3Atc3R5bGU6IHNvbGlkOworCWJvcmRlci1yaWdodC1zdHlsZTogbm9uZTsKKwlib3JkZXItYm90dG9tLXN0eWxlOiBub25lOworCWJvcmRlci1sZWZ0LXN0eWxlOiBub25lOworCWJhY2tncm91bmQtY29sb3I6ICNGQUZBRkE7CisJZm9udC1zaXplOiA4MCU7CiB9Ci0KLS8qIEBlbmQgKi8KLQotYWRkcmVzcyB7Ci0JZm9udC1zdHlsZTogbm9ybWFsOwotCWNvbG9yOiAjMzMzOworLm1lbUl0ZW1SaWdodCB7CisJcGFkZGluZzogMXB4IDhweCAwcHggOHB4OworCW1hcmdpbjogNHB4OworCWJvcmRlci10b3Atd2lkdGg6IDFweDsKKwlib3JkZXItcmlnaHQtd2lkdGg6IDFweDsKKwlib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7CisJYm9yZGVyLWxlZnQtd2lkdGg6IDFweDsKKwlib3JkZXItdG9wLWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci1yaWdodC1jb2xvcjogI0UwRTBFMDsKKwlib3JkZXItYm90dG9tLWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci1sZWZ0LWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci10b3Atc3R5bGU6IHNvbGlkOworCWJvcmRlci1yaWdodC1zdHlsZTogbm9uZTsKKwlib3JkZXItYm90dG9tLXN0eWxlOiBub25lOworCWJvcmRlci1sZWZ0LXN0eWxlOiBub25lOworCWJhY2tncm91bmQtY29sb3I6ICNGQUZBRkE7CisJZm9udC1zaXplOiA4MCU7CiB9Ci0KLXRhYmxlLmRveHRhYmxlIHsKLQlib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7CisubWVtVGVtcGxJdGVtTGVmdCB7CisJcGFkZGluZzogMXB4IDBweCAwcHggOHB4OworCW1hcmdpbjogNHB4OworCWJvcmRlci10b3Atd2lkdGg6IDFweDsKKwlib3JkZXItcmlnaHQtd2lkdGg6IDFweDsKKwlib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7CisJYm9yZGVyLWxlZnQtd2lkdGg6IDFweDsKKwlib3JkZXItdG9wLWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci1yaWdodC1jb2xvcjogI0UwRTBFMDsKKwlib3JkZXItYm90dG9tLWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci1sZWZ0LWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci10b3Atc3R5bGU6IG5vbmU7CisJYm9yZGVyLXJpZ2h0LXN0eWxlOiBub25lOworCWJvcmRlci1ib3R0b20tc3R5bGU6IG5vbmU7CisJYm9yZGVyLWxlZnQtc3R5bGU6IG5vbmU7CisJYmFja2dyb3VuZC1jb2xvcjogI0ZBRkFGQTsKKwlmb250LXNpemU6IDgwJTsKIH0KLQotdGFibGUuZG94dGFibGUgdGQsIHRhYmxlLmRveHRhYmxlIHRoIHsKLQlib3JkZXI6IDFweCBzb2xpZCAjMTUzNzg4OwotCXBhZGRpbmc6IDNweCA3cHggMnB4OworLm1lbVRlbXBsSXRlbVJpZ2h0IHsKKwlwYWRkaW5nOiAxcHggOHB4IDBweCA4cHg7CisJbWFyZ2luOiA0cHg7CisJYm9yZGVyLXRvcC13aWR0aDogMXB4OworCWJvcmRlci1yaWdodC13aWR0aDogMXB4OworCWJvcmRlci1ib3R0b20td2lkdGg6IDFweDsKKwlib3JkZXItbGVmdC13aWR0aDogMXB4OworCWJvcmRlci10b3AtY29sb3I6ICNFMEUwRTA7CisJYm9yZGVyLXJpZ2h0LWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci1ib3R0b20tY29sb3I6ICNFMEUwRTA7CisJYm9yZGVyLWxlZnQtY29sb3I6ICNFMEUwRTA7CisJYm9yZGVyLXRvcC1zdHlsZTogbm9uZTsKKwlib3JkZXItcmlnaHQtc3R5bGU6IG5vbmU7CisJYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTsKKwlib3JkZXItbGVmdC1zdHlsZTogbm9uZTsKKwliYWNrZ3JvdW5kLWNvbG9yOiAjRkFGQUZBOworCWZvbnQtc2l6ZTogODAlOwogfQotCi10YWJsZS5kb3h0YWJsZSB0aCB7Ci0JYmFja2dyb3VuZC1jb2xvcjogIzI1NDc5ODsKLQljb2xvcjogI0ZGRkZGRjsKLQlmb250LXNpemU6IDExMCU7Ci0JcGFkZGluZy1ib3R0b206IDRweDsKLQlwYWRkaW5nLXRvcDogNXB4OwotCXRleHQtYWxpZ246bGVmdDsKKy5tZW1UZW1wbFBhcmFtcyB7CisJcGFkZGluZzogMXB4IDBweCAwcHggOHB4OworCW1hcmdpbjogNHB4OworCWJvcmRlci10b3Atd2lkdGg6IDFweDsKKwlib3JkZXItcmlnaHQtd2lkdGg6IDFweDsKKwlib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7CisJYm9yZGVyLWxlZnQtd2lkdGg6IDFweDsKKwlib3JkZXItdG9wLWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci1yaWdodC1jb2xvcjogI0UwRTBFMDsKKwlib3JkZXItYm90dG9tLWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci1sZWZ0LWNvbG9yOiAjRTBFMEUwOworCWJvcmRlci10b3Atc3R5bGU6IHNvbGlkOworCWJvcmRlci1yaWdodC1zdHlsZTogbm9uZTsKKwlib3JkZXItYm90dG9tLXN0eWxlOiBub25lOworCWJvcmRlci1sZWZ0LXN0eWxlOiBub25lOworICAgICAgIGNvbG9yOiAjNjA2MDYwOworCWJhY2tncm91bmQtY29sb3I6ICNGQUZBRkE7CisJZm9udC1zaXplOiA4MCU7CiB9Ci0KKy5zZWFyY2ggICAgIHsgY29sb3I6ICMwMDMzOTk7CisgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOworfQorRk9STS5zZWFyY2ggeworICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7CisgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDsKK30KK0lOUFVULnNlYXJjaCB7IGZvbnQtc2l6ZTogNzUlOworICAgICAgICAgICAgICAgY29sb3I6ICMwMDAwODA7CisgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsOworICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVmZjsKK30KK1RELnRpbnkgICAgICB7IGZvbnQtc2l6ZTogNzUlOworfQorYSB7CisJY29sb3I6ICMyNTJFNzg7Cit9CithOnZpc2l0ZWQgeworCWNvbG9yOiAjM0QyMTg1OworfQorLmRpcnRhYiB7IHBhZGRpbmc6IDRweDsKKyAgICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOworICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNiMGIwYjA7Cit9CitUSC5kaXJ0YWIgeyBiYWNrZ3JvdW5kOiAjZWVlZWZmOworICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7Cit9CitIUiB7IGhlaWdodDogMXB4OworICAgICBib3JkZXI6IG5vbmU7CisgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBibGFjazsKK30KZGlmZiAtLWdpdCBhL2RvY3MvZmlsZXMuaHRtbCBiL2RvY3MvZmlsZXMuaHRtbAppbmRleCAwMGNjNDEzLi5lODQ4YTFkIDEwMDY0NAotLS0gYS9kb2NzL2ZpbGVzLmh0bWwKKysrIGIvZG9jcy9maWxlcy5odG1sCkBAIC0xLDM2ICsxLDE2IEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIj4KKzxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9aXNvLTg4NTktMSI+CiA8dGl0bGU+VGlueVhtbDogRmlsZSBJbmRleDwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotPGgxPkZpbGUgTGlzdDwvaDE+SGVyZSBpcyBhIGxpc3Qgb2YgYWxsIGRvY3VtZW50ZWQgZmlsZXMgd2l0aCBicmllZiBkZXNjcmlwdGlvbnM6PHRhYmxlPgotICA8dHI+PHRkIGNsYXNzPSJpbmRleGtleSI+PGI+dGlueXN0ci5oPC9iPiA8YSBocmVmPSJ0aW55c3RyXzhoX3NvdXJjZS5odG1sIj5bY29kZV08L2E+PC90ZD48dGQgY2xhc3M9ImluZGV4dmFsdWUiPjwvdGQ+PC90cj4KLSAgPHRyPjx0ZCBjbGFzcz0iaW5kZXhrZXkiPjxiPnRpbnl4bWwuaDwvYj4gPGEgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCI+W2NvZGVdPC9hPjwvdGQ+PHRkIGNsYXNzPSJpbmRleHZhbHVlIj48L3RkPjwvdHI+Cis8bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+Cis8L2hlYWQ+PGJvZHk+Cis8IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNC40IC0tPgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJpbmRleC5odG1sIj5NYWluJm5ic3A7UGFnZTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJoaWVyYXJjaHkuaHRtbCI+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPkNsYXNzJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4SEwiIGhyZWY9ImZpbGVzLmh0bWwiPkZpbGUmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj5DbGFzcyZuYnNwO01lbWJlcnM8L2E+PC9kaXY+Cis8aDE+VGlueVhtbCBGaWxlIExpc3Q8L2gxPkhlcmUgaXMgYSBsaXN0IG9mIGFsbCBkb2N1bWVudGVkIGZpbGVzIHdpdGggYnJpZWYgZGVzY3JpcHRpb25zOjx0YWJsZT4KKyAgPHRyPjx0ZCBjbGFzcz0iaW5kZXhrZXkiPjxiPnRpbnlzdHIuaDwvYj4gPGEgaHJlZj0idGlueXN0cl84aC1zb3VyY2UuaHRtbCI+W2NvZGVdPC9hPjwvdGQ+PHRkIGNsYXNzPSJpbmRleHZhbHVlIj48L3RkPjwvdHI+CisgIDx0cj48dGQgY2xhc3M9ImluZGV4a2V5Ij48Yj50aW55eG1sLmg8L2I+IDxhIGhyZWY9InRpbnl4bWxfOGgtc291cmNlLmh0bWwiPltjb2RlXTwvYT48L3RkPjx0ZCBjbGFzcz0iaW5kZXh2YWx1ZSI+PC90ZD48L3RyPgogPC90YWJsZT4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Cis8aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnMuaHRtbCBiL2RvY3MvZnVuY3Rpb25zLmh0bWwKaW5kZXggNjZkOTdhNi4uNzI3NDFmMCAxMDA2NDQKLS0tIGEvZG9jcy9mdW5jdGlvbnMuaHRtbAorKysgYi9kb2NzL2Z1bmN0aW9ucy5odG1sCkBAIC0xLDgwICsxLDEzOCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PWlzby04ODU5LTEiPgogPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnM8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+PHNwYW4+RW51bWVyYXRpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19yZWxhLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtGdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwjaW5kZXhfYSI+PHNwYW4+YTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2My5odG1sI2luZGV4X2MiPjxzcGFuPmM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjQuaHRtbCNpbmRleF9kIj48c3Bhbj5kPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY1Lmh0bWwjaW5kZXhfZSI+PHNwYW4+ZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ni5odG1sI2luZGV4X2YiPjxzcGFuPmY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjcuaHRtbCNpbmRleF9nIj48c3Bhbj5nPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY5Lmh0bWwjaW5kZXhfaSI+PHNwYW4+aTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Yy5odG1sI2luZGV4X2wiPjxzcGFuPmw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmUuaHRtbCNpbmRleF9uIj48c3Bhbj5uPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZmLmh0bWwjaW5kZXhfbyI+PHNwYW4+bzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3MC5odG1sI2luZGV4X3AiPjxzcGFuPnA8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzEuaHRtbCNpbmRleF9xIj48c3Bhbj5xPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcyLmh0bWwjaW5kZXhfciI+PHNwYW4+cjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3My5odG1sI2luZGV4X3MiPjxzcGFuPnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzQuaHRtbCNpbmRleF90Ij48c3Bhbj50PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3Ni5odG1sI2luZGV4X3YiPjxzcGFuPnY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLUhlcmUgaXMgYSBsaXN0IG9mIGFsbCBkb2N1bWVudGVkIGNsYXNzIG1lbWJlcnMgd2l0aCBsaW5rcyB0byB0aGUgY2xhc3MgZG9jdW1lbnRhdGlvbiBmb3IgZWFjaCBtZW1iZXI6Cis8bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+Cis8L2hlYWQ+PGJvZHk+Cis8IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNC40IC0tPgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJpbmRleC5odG1sIj5NYWluJm5ic3A7UGFnZTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJoaWVyYXJjaHkuaHRtbCI+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPkNsYXNzJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmaWxlcy5odG1sIj5GaWxlJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4SEwiIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj5DbGFzcyZuYnNwO01lbWJlcnM8L2E+PC9kaXY+Cis8ZGl2IGNsYXNzPSJxaW5kZXgiPjxhIGNsYXNzPSJxaW5kZXhITCIgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPkFsbDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj5GdW5jdGlvbnM8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zX3ZhcnMuaHRtbCI+VmFyaWFibGVzPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPkVudW1lcmF0aW9uczwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9hPjwvZGl2PgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfYSI+YTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfYyI+YzwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfZCI+ZDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfZSI+ZTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfZiI+ZjwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfZyI+ZzwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfaSI+aTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfbCI+bDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfbiI+bjwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfbyI+bzwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfcCI+cDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfcSI+cTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfciI+cjwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfcyI+czwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfdCI+dDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfdSI+dTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSIjaW5kZXhfdiI+djwvYT48L2Rpdj4KIAotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF9hIj4tIGEgLTwvYT48L2gzPjx1bD4KLTxsaT5BY2NlcHQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWNjMGY4OGI3NDYyYzZjYjczODA5ZDQxMGE0ZjViYjg2Ij5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNzFhODFiMmFmYjBkNDJiZTE1NDNkMWM0MDRkZWU2ZjUiPlRpWG1sRWxlbWVudDwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E4NDgzZDQ0MTVjZTlkZTZjNGZhOGY2M2QwNjdkNWRlNiI+VGlYbWxUZXh0PC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2EyMjMxNWE1MzU5ODNiODY1MzVjZGJhMzQ1ODY2OWUzZSI+VGlYbWxEZWNsYXJhdGlvbjwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhYTU0NWFhZTMyNWQ5NzUyYWQ2NDEyMGJjNGVjZjkzOWEiPlRpWG1sRG9jdW1lbnQ8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCNhZDcxMjJlNTEzNTU4MWIzYzgzMmExYTMyMTc3NjBhOTMiPlRpWG1sVW5rbm93bjwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2FmM2FjMWI5OWZiYmU5ZWE0ZmI2ZTE0MTQ2MTU2ZTQzZSI+VGlYbWxDb21tZW50PC9hPgotPC9saT4KKzxwPgorSGVyZSBpcyBhIGxpc3Qgb2YgYWxsIGRvY3VtZW50ZWQgY2xhc3MgbWVtYmVycyB3aXRoIGxpbmtzIHRvIHRoZSBjbGFzcyBkb2N1bWVudGF0aW9uIGZvciBlYWNoIG1lbWJlcjoKKzxwPgorPGgzPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImluZGV4X2EiPi0gYSAtPC9hPjwvaDM+PHVsPgogPGxpPkF0dHJpYnV0ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZWFmZjk5ZDRmMGVhNWIzNGY3YWVlMjAyYWFkNDU3YmEiPlRpWG1sRWxlbWVudDwvYT4KLTwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E3Ij5UaVhtbEVsZW1lbnQ8L2E+PC91bD4KKzxoMz48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJpbmRleF9jIj4tIGMgLTwvYT48L2gzPjx1bD4KKzxsaT5DREFUQSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhNiI+VGlYbWxUZXh0PC9hPjxsaT5DaGlsZCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E4Ij5UaVhtbEhhbmRsZTwvYT48bGk+Q2hpbGRFbGVtZW50KCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTEwIj5UaVhtbEhhbmRsZTwvYT48bGk+Q2xlYXIoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUiPlRpWG1sTm9kZTwvYT48bGk+Q2xlYXJFcnJvcigpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTIyIj5UaVhtbERvY3VtZW50PC9hPjxsaT5DbG9uZSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYjEiPlRpWG1sRG9jdW1lbnQ8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYTQiPlRpWG1sVW5rbm93bjwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTkiPlRpWG1sRGVjbGFyYXRpb248L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYjAiPlRpWG1sVGV4dDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhNCI+VGlYbWxDb21tZW50PC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyOCI+VGlYbWxFbGVtZW50PC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MiI+VGlYbWxOb2RlPC9hPjxsaT5Db2x1bW4oKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTQiPlRpWG1sQmFzZTwvYT48L3VsPgorPGgzPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImluZGV4X2QiPi0gZCAtPC9hPjwvaDM+PHVsPgorPGxpPkRvdWJsZVZhbHVlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTYiPlRpWG1sQXR0cmlidXRlPC9hPjwvdWw+Cis8aDM+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iaW5kZXhfZSI+LSBlIC08L2E+PC9oMz48dWw+Cis8bGk+RWxlbWVudCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExNiI+VGlYbWxIYW5kbGU8L2E+PGxpPkVuY29kaW5nKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhNyI+VGlYbWxEZWNsYXJhdGlvbjwvYT48bGk+RXJyb3IoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExNSI+VGlYbWxEb2N1bWVudDwvYT48bGk+RXJyb3JDb2woKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExOSI+VGlYbWxEb2N1bWVudDwvYT48bGk+RXJyb3JEZXNjKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTYiPlRpWG1sRG9jdW1lbnQ8L2E+PGxpPkVycm9ySWQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExNyI+VGlYbWxEb2N1bWVudDwvYT48bGk+RXJyb3JSb3coKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExOCI+VGlYbWxEb2N1bWVudDwvYT48L3VsPgorPGgzPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImluZGV4X2YiPi0gZiAtPC9hPjwvaDM+PHVsPgorPGxpPkZpcnN0QXR0cmlidXRlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyMyI+VGlYbWxFbGVtZW50PC9hPjxsaT5GaXJzdENoaWxkKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTQiPlRpWG1sSGFuZGxlPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNyI+VGlYbWxOb2RlPC9hPjxsaT5GaXJzdENoaWxkRWxlbWVudCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E2Ij5UaVhtbEhhbmRsZTwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTUiPlRpWG1sTm9kZTwvYT48L3VsPgorPGgzPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImluZGV4X2ciPi0gZyAtPC9hPjwvaDM+PHVsPgorPGxpPkdldERvY3VtZW50KCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NyI+VGlYbWxOb2RlPC9hPjxsaT5HZXRUZXh0KCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyNyI+VGlYbWxFbGVtZW50PC9hPjwvdWw+Cis8aDM+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iaW5kZXhfaSI+LSBpIC08L2E+PC9oMz48dWw+Cis8bGk+SW5zZXJ0QWZ0ZXJDaGlsZCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjkiPlRpWG1sTm9kZTwvYT48bGk+SW5zZXJ0QmVmb3JlQ2hpbGQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI4Ij5UaVhtbE5vZGU8L2E+PGxpPkluc2VydEVuZENoaWxkKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNiI+VGlYbWxOb2RlPC9hPjxsaT5JbnRWYWx1ZSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E1Ij5UaVhtbEF0dHJpYnV0ZTwvYT48bGk+SXNXaGl0ZVNwYWNlQ29uZGVuc2VkKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2UxIj5UaVhtbEJhc2U8L2E+PGxpPkl0ZXJhdGVDaGlsZHJlbigpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjUiPlRpWG1sTm9kZTwvYT48L3VsPgorPGgzPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImluZGV4X2wiPi0gbCAtPC9hPjwvaDM+PHVsPgorPGxpPkxhc3RBdHRyaWJ1dGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTI1Ij5UaVhtbEVsZW1lbnQ8L2E+PGxpPkxhc3RDaGlsZCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTkiPlRpWG1sTm9kZTwvYT48bGk+TGlua0VuZENoaWxkKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNyI+VGlYbWxOb2RlPC9hPjxsaT5Mb2FkRmlsZSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTEwIj5UaVhtbERvY3VtZW50PC9hPjwvdWw+Cis8aDM+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iaW5kZXhfbiI+LSBuIC08L2E+PC9oMz48dWw+Cis8bGk+TmFtZSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EzIj5UaVhtbEF0dHJpYnV0ZTwvYT48bGk+TmV4dCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExNSI+VGlYbWxBdHRyaWJ1dGU8L2E+PGxpPk5leHRTaWJsaW5nKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MiI+VGlYbWxOb2RlPC9hPjxsaT5OZXh0U2libGluZ0VsZW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ5Ij5UaVhtbE5vZGU8L2E+PGxpPk5vQ2hpbGRyZW4oKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU5Ij5UaVhtbE5vZGU8L2E+PGxpPk5vZGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMTUiPlRpWG1sSGFuZGxlPC9hPjxsaT5Ob2RlVHlwZQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjdzciPlRpWG1sTm9kZTwvYT48L3VsPgorPGgzPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImluZGV4X28iPi0gbyAtPC9hPjwvaDM+PHVsPgorPGxpPm9wZXJhdG9yJmx0OyZsdDsKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI240Ij5UaVhtbE5vZGU8L2E+PGxpPm9wZXJhdG9yJmd0OyZndDsKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI24yIj5UaVhtbE5vZGU8L2E+PC91bD4KKzxoMz48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJpbmRleF9wIj4tIHAgLTwvYT48L2gzPjx1bD4KKzxsaT5QYXJlbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYiPlRpWG1sTm9kZTwvYT48bGk+UGFyc2UoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExMiI+VGlYbWxEb2N1bWVudDwvYT48bGk+UHJldmlvdXMoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTciPlRpWG1sQXR0cmlidXRlPC9hPjxsaT5QcmV2aW91c1NpYmxpbmcoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM3Ij5UaVhtbE5vZGU8L2E+PGxpPlByaW50KCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMjQiPlRpWG1sRG9jdW1lbnQ8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYTUiPlRpWG1sVW5rbm93bjwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTEwIj5UaVhtbERlY2xhcmF0aW9uPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E1Ij5UaVhtbFRleHQ8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTUiPlRpWG1sQ29tbWVudDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjkiPlRpWG1sRWxlbWVudDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EyMyI+VGlYbWxBdHRyaWJ1dGU8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTIiPlRpWG1sQmFzZTwvYT48L3VsPgorPGgzPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImluZGV4X3EiPi0gcSAtPC9hPjwvaDM+PHVsPgorPGxpPlF1ZXJ5RG91YmxlQXR0cmlidXRlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E5Ij5UaVhtbEVsZW1lbnQ8L2E+PGxpPlF1ZXJ5RG91YmxlVmFsdWUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhOCI+VGlYbWxBdHRyaWJ1dGU8L2E+PGxpPlF1ZXJ5RmxvYXRBdHRyaWJ1dGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTEwIj5UaVhtbEVsZW1lbnQ8L2E+PGxpPlF1ZXJ5SW50QXR0cmlidXRlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E4Ij5UaVhtbEVsZW1lbnQ8L2E+PGxpPlF1ZXJ5SW50VmFsdWUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNyI+VGlYbWxBdHRyaWJ1dGU8L2E+PC91bD4KKzxoMz48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJpbmRleF9yIj4tIHIgLTwvYT48L2gzPjx1bD4KKzxsaT5SZW1vdmVBdHRyaWJ1dGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTIyIj5UaVhtbEVsZW1lbnQ8L2E+PGxpPlJlbW92ZUNoaWxkKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMSI+VGlYbWxOb2RlPC9hPjxsaT5SZXBsYWNlQ2hpbGQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMwIj5UaVhtbE5vZGU8L2E+PGxpPlJvb3RFbGVtZW50KCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTMiPlRpWG1sRG9jdW1lbnQ8L2E+PGxpPlJvdygpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMyI+VGlYbWxCYXNlPC9hPjwvdWw+Cis8aDM+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iaW5kZXhfcyI+LSBzIC08L2E+PC9oMz48dWw+Cis8bGk+U2F2ZUZpbGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExMSI+VGlYbWxEb2N1bWVudDwvYT48bGk+U2V0QXR0cmlidXRlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExOSI+VGlYbWxFbGVtZW50PC9hPjxsaT5TZXRDREFUQSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhNyI+VGlYbWxUZXh0PC9hPjxsaT5TZXRDb25kZW5zZVdoaXRlU3BhY2UoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjZTAiPlRpWG1sQmFzZTwvYT48bGk+U2V0RG91YmxlQXR0cmlidXRlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyMCI+VGlYbWxFbGVtZW50PC9hPjxsaT5TZXREb3VibGVWYWx1ZSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExMiI+VGlYbWxBdHRyaWJ1dGU8L2E+PGxpPlNldEludFZhbHVlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTExIj5UaVhtbEF0dHJpYnV0ZTwvYT48bGk+U2V0TmFtZSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExMyI+VGlYbWxBdHRyaWJ1dGU8L2E+PGxpPlNldFRhYlNpemUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMCI+VGlYbWxEb2N1bWVudDwvYT48bGk+U2V0VmFsdWUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTQiPlRpWG1sQXR0cmlidXRlPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0Ij5UaVhtbE5vZGU8L2E+PGxpPlN0YW5kYWxvbmUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E4Ij5UaVhtbERlY2xhcmF0aW9uPC9hPjwvdWw+Cis8aDM+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iaW5kZXhfdCI+LSB0IC08L2E+PC9oMz48dWw+Cis8bGk+VGV4dCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExNyI+VGlYbWxIYW5kbGU8L2E+PGxpPlRpWG1sQXR0cmlidXRlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTIiPlRpWG1sQXR0cmlidXRlPC9hPjxsaT5UaVhtbENvbW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTAiPlRpWG1sQ29tbWVudDwvYT48bGk+VGlYbWxEZWNsYXJhdGlvbigpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTIiPlRpWG1sRGVjbGFyYXRpb248L2E+PGxpPlRpWG1sRG9jdW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyIj5UaVhtbERvY3VtZW50PC9hPjxsaT5UaVhtbEVsZW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTEiPlRpWG1sRWxlbWVudDwvYT48bGk+VGlYbWxIYW5kbGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMSI+VGlYbWxIYW5kbGU8L2E+PGxpPlRpWG1sVGV4dCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhMiI+VGlYbWxUZXh0PC9hPjxsaT5Ub0NvbW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY4Ij5UaVhtbE5vZGU8L2E+PGxpPlRvRGVjbGFyYXRpb24oKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcxIj5UaVhtbE5vZGU8L2E+PGxpPlRvRG9jdW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY2Ij5UaVhtbE5vZGU8L2E+PGxpPlRvRWxlbWVudCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjciPlRpWG1sTm9kZTwvYT48bGk+VG9UZXh0KCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MCI+VGlYbWxOb2RlPC9hPjxsaT5Ub1Vua25vd24oKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY5Ij5UaVhtbE5vZGU8L2E+PGxpPlR5cGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU2Ij5UaVhtbE5vZGU8L2E+PC91bD4KKzxoMz48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJpbmRleF91Ij4tIHUgLTwvYT48L2gzPjx1bD4KKzxsaT5Vbmtub3duKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTE4Ij5UaVhtbEhhbmRsZTwvYT48bGk+dXNlckRhdGEKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI3AxIj5UaVhtbEJhc2U8L2E+PC91bD4KKzxoMz48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJpbmRleF92Ij4tIHYgLTwvYT48L2gzPjx1bD4KKzxsaT5WYWx1ZSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E0Ij5UaVhtbEF0dHJpYnV0ZTwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMSI+VGlYbWxOb2RlPC9hPjxsaT5WYWx1ZVN0cigpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMiI+VGlYbWxOb2RlPC9hPjxsaT5WZXJzaW9uKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhNiI+VGlYbWxEZWNsYXJhdGlvbjwvYT48L3VsPgorPGhyIHNpemU9IjEiPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFNhdCBPY3QgOCAxNDoxNTozMCAyMDA1IGZvciBUaW55WG1sIGJ5Jm5ic3A7CiA8YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgorPGltZyBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iIGFsaWduPSJtaWRkbGUiIGJvcmRlcj0iMCI+PC9hPiAxLjQuNCA8L3NtYWxsPjwvYWRkcmVzcz4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvZnVuY3Rpb25zXzB4NjMuaHRtbCBiL2RvY3MvZnVuY3Rpb25zXzB4NjMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWVlYjdlOS4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc18weDYzLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw5OCArMCwwIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Ci08dGl0bGU+VGlueVhtbDogQ2xhc3MgTWVtYmVyczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5BbGw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+PHNwYW4+RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPjxzcGFuPlZhcmlhYmxlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj48c3Bhbj5FbnVtZXJhdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc18weDYzLmh0bWwjaW5kZXhfYyI+PHNwYW4+Yzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2NC5odG1sI2luZGV4X2QiPjxzcGFuPmQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjUuaHRtbCNpbmRleF9lIj48c3Bhbj5lPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmYuaHRtbCNpbmRleF9vIj48c3Bhbj5vPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzIuaHRtbCNpbmRleF9yIj48c3Bhbj5yPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzUuaHRtbCNpbmRleF91Ij48c3Bhbj51PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotSGVyZSBpcyBhIGxpc3Qgb2YgYWxsIGRvY3VtZW50ZWQgY2xhc3MgbWVtYmVycyB3aXRoIGxpbmtzIHRvIHRoZSBjbGFzcyBkb2N1bWVudGF0aW9uIGZvciBlYWNoIG1lbWJlcjoKLQotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF9jIj4tIGMgLTwvYT48L2gzPjx1bD4KLTxsaT5DREFUQSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhZDFhNmE2YjgzZmEyMjcxMDIyZGQ5N2MwNzJhMmI1ODYiPlRpWG1sVGV4dDwvYT4KLTwvbGk+Ci08bGk+Q2hpbGQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMDcyNDkyYjRiZTFhY2RiMGRiMmQwM2NkOGY3MWNjYzQiPlRpWG1sSGFuZGxlPC9hPgotPC9saT4KLTxsaT5DaGlsZEVsZW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhOTc5YTNmODUwOTg0YTE3NmVlODg0ZTM5NGM3ZWVkMmQiPlRpWG1sSGFuZGxlPC9hPgotPC9saT4KLTxsaT5DbGVhcigpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzA4ZTdmOTUzZGY2MWQ0ZDJkMTJmNzMxNzE1NTBhNGIiPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08bGk+Q2xlYXJFcnJvcigpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWM2NmI4YzI4ZGI4NjM2MzMxNTcxMmEzNTc0ZTg3YzM1Ij5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTxsaT5DbG9uZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhMGQ2NjYyYmRjNTI0ODhiOWUxMmIzYzdhMDQ1M2QwMjgiPlRpWG1sQ29tbWVudDwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FhNDY0NTM1ZWExOTk0ZGIzMzdjYjZhOGNlNGI1ODhiNSI+VGlYbWxFbGVtZW50PC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYTA5NjBiYjc0MjhiM2YzNDFkYTQ2MjQ0MjI5NjA0ZDczIj5UaVhtbFVua25vd248L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDUwOGNjM2EyZDdhOThlOTZhNTRjYzA5YzM3YTc4YTQiPlRpWG1sTm9kZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhN2NmNDU5MTg2MDQwMTQxY2RhN2ExODBhNjU4NWNlMmUiPlRpWG1sRGVjbGFyYXRpb248L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTQ5Njg2NjFjYWI0YTFmNDRhMjMzMjljNmY4ZGIxOTA3Ij5UaVhtbERvY3VtZW50PC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTBjNDExZTkzYTI3NTM3MzY5NDc5ZDAzNGNjODJkYTNiIj5UaVhtbFRleHQ8L2E+Ci08L2xpPgotPGxpPkNvbHVtbigpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjU0YmZiOWI3MGZlNmRkMjc2ZTdiMjc5Y2FiN2YwMDMiPlRpWG1sQmFzZTwvYT4KLTwvbGk+Ci08bGk+Q1N0cigpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhODU5ZWVkZTk1OTdkM2UwMzU1Yjc3NzU3YmU0ODczNWUiPlRpWG1sUHJpbnRlcjwvYT4KLTwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2Z1bmN0aW9uc18weDY0Lmh0bWwgYi9kb2NzL2Z1bmN0aW9uc18weDY0Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ5NjlkODUuLjAwMDAwMDAKLS0tIGEvZG9jcy9mdW5jdGlvbnNfMHg2NC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnM8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+PHNwYW4+RW51bWVyYXRpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19yZWxhLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtGdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDYzLmh0bWwjaW5kZXhfYyI+PHNwYW4+Yzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjQuaHRtbCNpbmRleF9kIj48c3Bhbj5kPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY1Lmh0bWwjaW5kZXhfZSI+PHNwYW4+ZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ni5odG1sI2luZGV4X2YiPjxzcGFuPmY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjcuaHRtbCNpbmRleF9nIj48c3Bhbj5nPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY5Lmh0bWwjaW5kZXhfaSI+PHNwYW4+aTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Yy5odG1sI2luZGV4X2wiPjxzcGFuPmw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmUuaHRtbCNpbmRleF9uIj48c3Bhbj5uPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZmLmh0bWwjaW5kZXhfbyI+PHNwYW4+bzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3MC5odG1sI2luZGV4X3AiPjxzcGFuPnA8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzEuaHRtbCNpbmRleF9xIj48c3Bhbj5xPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcyLmh0bWwjaW5kZXhfciI+PHNwYW4+cjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3My5odG1sI2luZGV4X3MiPjxzcGFuPnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzQuaHRtbCNpbmRleF90Ij48c3Bhbj50PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3Ni5odG1sI2luZGV4X3YiPjxzcGFuPnY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLUhlcmUgaXMgYSBsaXN0IG9mIGFsbCBkb2N1bWVudGVkIGNsYXNzIG1lbWJlcnMgd2l0aCBsaW5rcyB0byB0aGUgY2xhc3MgZG9jdW1lbnRhdGlvbiBmb3IgZWFjaCBtZW1iZXI6Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfZCI+LSBkIC08L2E+PC9oMz48dWw+Ci08bGk+RG91YmxlVmFsdWUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMjg4MGRkZWY1M2ZjNzUyMmM5OTUzNTI3Mzk1NGQyMzAiPlRpWG1sQXR0cmlidXRlPC9hPgotPC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvZnVuY3Rpb25zXzB4NjUuaHRtbCBiL2RvY3MvZnVuY3Rpb25zXzB4NjUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTU2ZjU3ZC4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc18weDY1Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw5MiArMCwwIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Ci08dGl0bGU+VGlueVhtbDogQ2xhc3MgTWVtYmVyczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5BbGw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+PHNwYW4+RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPjxzcGFuPlZhcmlhYmxlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj48c3Bhbj5FbnVtZXJhdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjMuaHRtbCNpbmRleF9jIj48c3Bhbj5jPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY0Lmh0bWwjaW5kZXhfZCI+PHNwYW4+ZDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjUuaHRtbCNpbmRleF9lIj48c3Bhbj5lPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmYuaHRtbCNpbmRleF9vIj48c3Bhbj5vPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzIuaHRtbCNpbmRleF9yIj48c3Bhbj5yPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzUuaHRtbCNpbmRleF91Ij48c3Bhbj51PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotSGVyZSBpcyBhIGxpc3Qgb2YgYWxsIGRvY3VtZW50ZWQgY2xhc3MgbWVtYmVycyB3aXRoIGxpbmtzIHRvIHRoZSBjbGFzcyBkb2N1bWVudGF0aW9uIGZvciBlYWNoIG1lbWJlcjoKLQotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF9lIj4tIGUgLTwvYT48L2gzPjx1bD4KLTxsaT5FbGVtZW50KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWNiNWZlODM4OGE1MjYyODllYTY1ZTgxN2E1MWUwNWU3Ij5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+RW5jb2RlU3RyaW5nKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E2YmQ4YzMxNWMxYWNiMDllMzQxMDdiODczNjUwNTk0OCI+VGlYbWxCYXNlPC9hPgotPC9saT4KLTxsaT5FbmNvZGluZygpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTVkOTc0MjMxZjllOWEyZjA1NDJmMTVmM2E0NmNkYjc2Ij5UaVhtbERlY2xhcmF0aW9uPC9hPgotPC9saT4KLTxsaT5FcnJvcigpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTZkZmMwMWE2ZTVkNThlNTZhY2Q1MzdkZmQzYmRlYjI5Ij5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTxsaT5FcnJvckNvbCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWE5MGJjNjMwZWU1MjAzYzYxMDljYTVmYWQzMzIzNjQ5Ij5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTxsaT5FcnJvckRlc2MoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E5ZDBmNjg5ZjZlMDllYTQ5NGVhNTQ3YmU4ZDc5YzI1ZSI+VGlYbWxEb2N1bWVudDwvYT4KLTwvbGk+Ci08bGk+RXJyb3JJZCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWY5NmZjMmYzZjllYzY0MjI3ODJiZmU5MTZjOWU3NzhmIj5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTxsaT5FcnJvclJvdygpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWYzMGVmYzc1ZTgwNGFhMmU5MmZiOGJlM2E4Y2I2NzZlIj5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvZnVuY3Rpb25zXzB4NjYuaHRtbCBiL2RvY3MvZnVuY3Rpb25zXzB4NjYuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNmMzNDNkMC4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc18weDY2Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw4MiArMCwwIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Ci08dGl0bGU+VGlueVhtbDogQ2xhc3MgTWVtYmVyczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5BbGw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+PHNwYW4+RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPjxzcGFuPlZhcmlhYmxlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj48c3Bhbj5FbnVtZXJhdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjMuaHRtbCNpbmRleF9jIj48c3Bhbj5jPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY0Lmh0bWwjaW5kZXhfZCI+PHNwYW4+ZDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2NS5odG1sI2luZGV4X2UiPjxzcGFuPmU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmYuaHRtbCNpbmRleF9vIj48c3Bhbj5vPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzIuaHRtbCNpbmRleF9yIj48c3Bhbj5yPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzUuaHRtbCNpbmRleF91Ij48c3Bhbj51PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotSGVyZSBpcyBhIGxpc3Qgb2YgYWxsIGRvY3VtZW50ZWQgY2xhc3MgbWVtYmVycyB3aXRoIGxpbmtzIHRvIHRoZSBjbGFzcyBkb2N1bWVudGF0aW9uIGZvciBlYWNoIG1lbWJlcjoKLQotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF9mIj4tIGYgLTwvYT48L2gzPjx1bD4KLTxsaT5GaXJzdEF0dHJpYnV0ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNTE2MDU0YzkwNzM2NDdkNmNiMjliNmFiZTlmYTA1OTIiPlRpWG1sRWxlbWVudDwvYT4KLTwvbGk+Ci08bGk+Rmlyc3RDaGlsZCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDRjOGVlZTI2YmJlMmQxYjI3NjIwMzhkZjlkZGUyZjAiPlRpWG1sTm9kZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYThjNjFmNjRhZTkzNjVkODljMjY0ZjI4OTA4NTU0MWY4Ij5UaVhtbEhhbmRsZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwN2Y2MjAwYTU5NTZjNzIzYzViNTJkNzBmMjljNDZmNiI+VGlYbWxOb2RlPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhY2RiMWZhYWY4OGE3MDBiNDBjYTJjOGQ5YWVlMjExMzkiPlRpWG1sSGFuZGxlPC9hPgotPC9saT4KLTxsaT5GaXJzdENoaWxkRWxlbWVudCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjRmYjY1MmY2YmQ3OWFlMGQ1Y2U3ZDBmN2QzYzBmYmEiPlRpWG1sTm9kZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTI0ZDExMTJlOTk1ZTkzN2U0ZGRkYjIwMmQ0MTEzZDRhIj5UaVhtbEhhbmRsZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMjdhZDRiYmQ5MDA3M2M1ZGZjOTMxYjA3MzE0ZjVmNyI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvZnVuY3Rpb25zXzB4NjcuaHRtbCBiL2RvY3MvZnVuY3Rpb25zXzB4NjcuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODAzMDhiOS4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc18weDY3Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw3NyArMCwwIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Ci08dGl0bGU+VGlueVhtbDogQ2xhc3MgTWVtYmVyczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5BbGw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+PHNwYW4+RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPjxzcGFuPlZhcmlhYmxlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj48c3Bhbj5FbnVtZXJhdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjMuaHRtbCNpbmRleF9jIj48c3Bhbj5jPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY0Lmh0bWwjaW5kZXhfZCI+PHNwYW4+ZDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2NS5odG1sI2luZGV4X2UiPjxzcGFuPmU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjYuaHRtbCNpbmRleF9mIj48c3Bhbj5mPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmYuaHRtbCNpbmRleF9vIj48c3Bhbj5vPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzIuaHRtbCNpbmRleF9yIj48c3Bhbj5yPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzUuaHRtbCNpbmRleF91Ij48c3Bhbj51PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotSGVyZSBpcyBhIGxpc3Qgb2YgYWxsIGRvY3VtZW50ZWQgY2xhc3MgbWVtYmVycyB3aXRoIGxpbmtzIHRvIHRoZSBjbGFzcyBkb2N1bWVudGF0aW9uIGZvciBlYWNoIG1lbWJlcjoKLQotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF9nIj4tIGcgLTwvYT48L2gzPjx1bD4KLTxsaT5HZXREb2N1bWVudCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODBlMzk3ZmE5NzNjZjUzMjNlMzNiMDcxNTRiMDI0ZjMiPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08bGk+R2V0VGV4dCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZjMyODIyOTQ5ODZjZGIyMTY2NDZlYTFmNjdhZjJjODciPlRpWG1sRWxlbWVudDwvYT4KLTwvbGk+Ci08bGk+R2V0VXNlckRhdGEoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTY1NTlhNTMwY2E2NzYzZmMzMDFhMTRkNzdlZDI4YzE3Ij5UaVhtbEJhc2U8L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfMHg2OS5odG1sIGIvZG9jcy9mdW5jdGlvbnNfMHg2OS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjMjQ3ZDkwLi4wMDAwMDAwCi0tLSBhL2RvY3MvZnVuY3Rpb25zXzB4NjkuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDg5ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiBDbGFzcyBNZW1iZXJzPC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkFsbDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj48c3Bhbj5GdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3ZhcnMuaHRtbCI+PHNwYW4+VmFyaWFibGVzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPjxzcGFuPkVudW1lcmF0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwjaW5kZXhfYSI+PHNwYW4+YTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2My5odG1sI2luZGV4X2MiPjxzcGFuPmM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjQuaHRtbCNpbmRleF9kIj48c3Bhbj5kPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY1Lmh0bWwjaW5kZXhfZSI+PHNwYW4+ZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ni5odG1sI2luZGV4X2YiPjxzcGFuPmY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjcuaHRtbCNpbmRleF9nIj48c3Bhbj5nPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfMHg2OS5odG1sI2luZGV4X2kiPjxzcGFuPmk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmMuaHRtbCNpbmRleF9sIj48c3Bhbj5sPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZlLmh0bWwjaW5kZXhfbiI+PHNwYW4+bjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Zi5odG1sI2luZGV4X28iPjxzcGFuPm88L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzAuaHRtbCNpbmRleF9wIj48c3Bhbj5wPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcxLmh0bWwjaW5kZXhfcSI+PHNwYW4+cTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3Mi5odG1sI2luZGV4X3IiPjxzcGFuPnI8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzMuaHRtbCNpbmRleF9zIj48c3Bhbj5zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc0Lmh0bWwjaW5kZXhfdCI+PHNwYW4+dDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3NS5odG1sI2luZGV4X3UiPjxzcGFuPnU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzYuaHRtbCNpbmRleF92Ij48c3Bhbj52PC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci1IZXJlIGlzIGEgbGlzdCBvZiBhbGwgZG9jdW1lbnRlZCBjbGFzcyBtZW1iZXJzIHdpdGggbGlua3MgdG8gdGhlIGNsYXNzIGRvY3VtZW50YXRpb24gZm9yIGVhY2ggbWVtYmVyOgotCi08aDM+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImluZGV4X2kiPi0gaSAtPC9hPjwvaDM+PHVsPgotPGxpPkluZGVudCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhYmIzM2VjN2Q0YmFkNmFhZWI1N2Y0MzA0Mzk0YjEzM2QiPlRpWG1sUHJpbnRlcjwvYT4KLTwvbGk+Ci08bGk+SW5zZXJ0QWZ0ZXJDaGlsZCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZDliNzVlNTRlYzE5MzAxYzhiNGQ1ZmY1ODNkMGIzZDUiPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08bGk+SW5zZXJ0QmVmb3JlQ2hpbGQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTBjMTQ2ZmEyZmZmMDE1N2I2ODE1OTQxMDJmNDhjYmM3Ij5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPGxpPkluc2VydEVuZENoaWxkKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FkN2Q0NjMwZTFhMmE5MTZlZGRhMTZiZTIyNDQ4YThiYSI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTxsaT5JbnRWYWx1ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FhMWEyMGFkNTlkYzdlODlhMGFiMjY1Mzk2MzYwZDUwZiI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci08L2xpPgotPGxpPklzV2hpdGVTcGFjZUNvbmRlbnNlZCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDRiMTQ3MjUzMWM2NDdhMjViMTg0MGE4N2FlNDI0MzgiPlRpWG1sQmFzZTwvYT4KLTwvbGk+Ci08bGk+SXRlcmF0ZUNoaWxkcmVuKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FkZmFlZjM1YTA3NmI5MzQzYWRjMTQyMDc1NzM3NmMzOSI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvZnVuY3Rpb25zXzB4NmMuaHRtbCBiL2RvY3MvZnVuY3Rpb25zXzB4NmMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOTVlNDI5Yy4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc18weDZjLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw4MyArMCwwIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Ci08dGl0bGU+VGlueVhtbDogQ2xhc3MgTWVtYmVyczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5BbGw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+PHNwYW4+RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPjxzcGFuPlZhcmlhYmxlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj48c3Bhbj5FbnVtZXJhdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjMuaHRtbCNpbmRleF9jIj48c3Bhbj5jPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY0Lmh0bWwjaW5kZXhfZCI+PHNwYW4+ZDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2NS5odG1sI2luZGV4X2UiPjxzcGFuPmU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjYuaHRtbCNpbmRleF9mIj48c3Bhbj5mPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY3Lmh0bWwjaW5kZXhfZyI+PHNwYW4+Zzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2OS5odG1sI2luZGV4X2kiPjxzcGFuPmk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmYuaHRtbCNpbmRleF9vIj48c3Bhbj5vPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzIuaHRtbCNpbmRleF9yIj48c3Bhbj5yPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzUuaHRtbCNpbmRleF91Ij48c3Bhbj51PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotSGVyZSBpcyBhIGxpc3Qgb2YgYWxsIGRvY3VtZW50ZWQgY2xhc3MgbWVtYmVycyB3aXRoIGxpbmtzIHRvIHRoZSBjbGFzcyBkb2N1bWVudGF0aW9uIGZvciBlYWNoIG1lbWJlcjoKLQotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF9sIj4tIGwgLTwvYT48L2gzPjx1bD4KLTxsaT5MYXN0QXR0cmlidXRlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E4NjE5MWI0OWY5MTc3YmUxMzJiODViMTQ2NTVmMTM4MSI+VGlYbWxFbGVtZW50PC9hPgotPC9saT4KLTxsaT5MYXN0Q2hpbGQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY0MzJkMmIyNDk1ZjZjYWY5Y2I0Mjc4ZGY3MDZhMDMxIj5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPGxpPkxpbmVCcmVhaygpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhMTFmMWI0ODA0YTQ2MGIxNzVlYzI0NGViNTcyNGQ5NmQiPlRpWG1sUHJpbnRlcjwvYT4KLTwvbGk+Ci08bGk+TGlua0VuZENoaWxkKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1ZDI5NDQyYWU0NmRlNmQwMTY4NDI5MTU2MTk3YmZjNiI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTxsaT5Mb2FkRmlsZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTQxZjZmZTcyMDA4NjRkMWRjYTY2M2QyMzBjYWY4ZGI2Ij5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvZnVuY3Rpb25zXzB4NmUuaHRtbCBiL2RvY3MvZnVuY3Rpb25zXzB4NmUuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmE1MDFlOS4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc18weDZlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw4OSArMCwwIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Ci08dGl0bGU+VGlueVhtbDogQ2xhc3MgTWVtYmVyczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5BbGw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+PHNwYW4+RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPjxzcGFuPlZhcmlhYmxlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj48c3Bhbj5FbnVtZXJhdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjMuaHRtbCNpbmRleF9jIj48c3Bhbj5jPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY0Lmh0bWwjaW5kZXhfZCI+PHNwYW4+ZDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2NS5odG1sI2luZGV4X2UiPjxzcGFuPmU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjYuaHRtbCNpbmRleF9mIj48c3Bhbj5mPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY3Lmh0bWwjaW5kZXhfZyI+PHNwYW4+Zzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2OS5odG1sI2luZGV4X2kiPjxzcGFuPmk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmMuaHRtbCNpbmRleF9sIj48c3Bhbj5sPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmYuaHRtbCNpbmRleF9vIj48c3Bhbj5vPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzIuaHRtbCNpbmRleF9yIj48c3Bhbj5yPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzUuaHRtbCNpbmRleF91Ij48c3Bhbj51PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotSGVyZSBpcyBhIGxpc3Qgb2YgYWxsIGRvY3VtZW50ZWQgY2xhc3MgbWVtYmVycyB3aXRoIGxpbmtzIHRvIHRoZSBjbGFzcyBkb2N1bWVudGF0aW9uIGZvciBlYWNoIG1lbWJlcjoKLQotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF9uIj4tIG4gLTwvYT48L2gzPjx1bD4KLTxsaT5OYW1lKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTI5OGE1NzI4N2QzMDU5MDRiYTZiZDk2YWU2Zjc4ZDNkIj5UaVhtbEF0dHJpYnV0ZTwvYT4KLTwvbGk+Ci08bGk+TmV4dCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExYzc4ZTkyZTIyM2E0MDg0M2Y2NDRiYTQ4ZWY2OWY2NyI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci08L2xpPgotPGxpPk5leHRTaWJsaW5nKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNzU3YzFmNGQwMWU4Yzk1OTZmZmRiZDU2MWM3NmFlYSI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTxsaT5OZXh0U2libGluZ0VsZW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTA3MWJhNzdmZDdhYjc5NDAyZmE4NGI3ZTliODYwN2IzIj5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPGxpPk5vQ2hpbGRyZW4oKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWVlZDIxYWQzMDYzMGVmNmU3ZmFmMDk2MTI3ZWRjOWYzIj5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPGxpPk5vZGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhYjQ0YjcyM2E4ZGM5YWY3MjgzOGEzMDNjMDc5ZDAzNzYiPlRpWG1sSGFuZGxlPC9hPgotPC9saT4KLTxsaT5Ob2RlVHlwZQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgzNmVkZWQ0OTIwYWI5ZTllZjI4NDk2ZjQ4Y2Q5NWEyIj5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfMHg2Zi5odG1sIGIvZG9jcy9mdW5jdGlvbnNfMHg2Zi5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjNjBhOWU5Li4wMDAwMDAwCi0tLSBhL2RvY3MvZnVuY3Rpb25zXzB4NmYuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDc0ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiBDbGFzcyBNZW1iZXJzPC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkFsbDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj48c3Bhbj5GdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3ZhcnMuaHRtbCI+PHNwYW4+VmFyaWFibGVzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPjxzcGFuPkVudW1lcmF0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwjaW5kZXhfYSI+PHNwYW4+YTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2My5odG1sI2luZGV4X2MiPjxzcGFuPmM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjQuaHRtbCNpbmRleF9kIj48c3Bhbj5kPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY1Lmh0bWwjaW5kZXhfZSI+PHNwYW4+ZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ni5odG1sI2luZGV4X2YiPjxzcGFuPmY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjcuaHRtbCNpbmRleF9nIj48c3Bhbj5nPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY5Lmh0bWwjaW5kZXhfaSI+PHNwYW4+aTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Yy5odG1sI2luZGV4X2wiPjxzcGFuPmw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmUuaHRtbCNpbmRleF9uIj48c3Bhbj5uPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfMHg2Zi5odG1sI2luZGV4X28iPjxzcGFuPm88L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzAuaHRtbCNpbmRleF9wIj48c3Bhbj5wPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcxLmh0bWwjaW5kZXhfcSI+PHNwYW4+cTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3Mi5odG1sI2luZGV4X3IiPjxzcGFuPnI8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzMuaHRtbCNpbmRleF9zIj48c3Bhbj5zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc0Lmh0bWwjaW5kZXhfdCI+PHNwYW4+dDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3NS5odG1sI2luZGV4X3UiPjxzcGFuPnU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzYuaHRtbCNpbmRleF92Ij48c3Bhbj52PC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci1IZXJlIGlzIGEgbGlzdCBvZiBhbGwgZG9jdW1lbnRlZCBjbGFzcyBtZW1iZXJzIHdpdGggbGlua3MgdG8gdGhlIGNsYXNzIGRvY3VtZW50YXRpb24gZm9yIGVhY2ggbWVtYmVyOgotCi08aDM+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImluZGV4X28iPi0gbyAtPC9hPjwvaDM+PHVsPgotPGxpPm9wZXJhdG9yJmx0OyZsdDsKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4NmNkNDljZmIxN2E4NDRjMDAxMGIzMTM2YWM5NjZjNyI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTxsaT5vcGVyYXRvciZndDsmZ3Q7Ci06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYjU3YmQ0MjY1NjNjOTI2ODQ0ZjY1YTc4NDEyZTE4YjkiPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2Z1bmN0aW9uc18weDcwLmh0bWwgYi9kb2NzL2Z1bmN0aW9uc18weDcwLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg4Mzc1YTkuLjAwMDAwMDAKLS0tIGEvZG9jcy9mdW5jdGlvbnNfMHg3MC5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsOTEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnM8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+PHNwYW4+RW51bWVyYXRpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19yZWxhLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtGdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDYzLmh0bWwjaW5kZXhfYyI+PHNwYW4+Yzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2NC5odG1sI2luZGV4X2QiPjxzcGFuPmQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjUuaHRtbCNpbmRleF9lIj48c3Bhbj5lPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmYuaHRtbCNpbmRleF9vIj48c3Bhbj5vPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfMHg3MC5odG1sI2luZGV4X3AiPjxzcGFuPnA8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzEuaHRtbCNpbmRleF9xIj48c3Bhbj5xPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcyLmh0bWwjaW5kZXhfciI+PHNwYW4+cjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3My5odG1sI2luZGV4X3MiPjxzcGFuPnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzQuaHRtbCNpbmRleF90Ij48c3Bhbj50PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3Ni5odG1sI2luZGV4X3YiPjxzcGFuPnY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLUhlcmUgaXMgYSBsaXN0IG9mIGFsbCBkb2N1bWVudGVkIGNsYXNzIG1lbWJlcnMgd2l0aCBsaW5rcyB0byB0aGUgY2xhc3MgZG9jdW1lbnRhdGlvbiBmb3IgZWFjaCBtZW1iZXI6Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfcCI+LSBwIC08L2E+PC9oMz48dWw+Ci08bGk+UGFyZW50KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiNjQzMDQzMTMyZmZkNzk0Zjg2MDI2ODVkMzRhOTgyZSI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTxsaT5QYXJzZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE3ZWJhYmUzNjkyNmVmMzk4ZTc4ZGVjMGQwYWQwMzc4Ij5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTxsaT5QcmV2aW91cygpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E2ZWJiZmUzMzNmZTc2Y2Q4MzRiZDZjYmNjYTMxMzBjZiI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci08L2xpPgotPGxpPlByZXZpb3VzU2libGluZygpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYzJjZDg5Mjc2ODcyNjI3MGU1MTFiMmFiMzJkZTRkMTAiPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08bGk+UHJpbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWZiZjUyNzM2ZTcwZmM5MWVjOWQ3NjA3MjFkNmY0ZmQyIj5UaVhtbEVsZW1lbnQ8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FjYzA0OTU2YzFkNWM0YzMxZmU3NGY3YTc1MjhkMTA5YSI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGRlNTZiM2YyZWYxNGM2NTA5MWEzYjkxNjQzN2I1MTIiPlRpWG1sQmFzZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2EwY2FmYmY2ZjIzNmM3ZjAyZDEyYjJiZmZjMmI3OTc2YiI+VGlYbWxUZXh0PC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FmMDgzODllYzcwZWU5YjJkZTdmODAwZTIwNmExODUxMCI+VGlYbWxEb2N1bWVudDwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2EzMWJhMDg5YTQwZmI1YTE4Njk3NTBmY2UwOWIwYmFjYiI+VGlYbWxVbmtub3duPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E4NzAxZmRhMWZhMzFiMjVhYmJjOWMwZGY0MmRhMTBlOCI+VGlYbWxEb2N1bWVudDwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2E2YjMxNjUyN2FhYThkYTAzNzBjZDY4YzIyYTVhMGY1ZiI+VGlYbWxDb21tZW50PC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2FiZjYzMDNkYjRiZDA1YjViZTU1NDAzNjgxN2ZmMWNiNCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4KLTwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2Z1bmN0aW9uc18weDcxLmh0bWwgYi9kb2NzL2Z1bmN0aW9uc18weDcxLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQyZmQ1YzYuLjAwMDAwMDAKLS0tIGEvZG9jcy9mdW5jdGlvbnNfMHg3MS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsOTUgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnM8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+PHNwYW4+RW51bWVyYXRpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19yZWxhLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtGdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDYzLmh0bWwjaW5kZXhfYyI+PHNwYW4+Yzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2NC5odG1sI2luZGV4X2QiPjxzcGFuPmQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjUuaHRtbCNpbmRleF9lIj48c3Bhbj5lPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmYuaHRtbCNpbmRleF9vIj48c3Bhbj5vPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzEuaHRtbCNpbmRleF9xIj48c3Bhbj5xPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcyLmh0bWwjaW5kZXhfciI+PHNwYW4+cjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3My5odG1sI2luZGV4X3MiPjxzcGFuPnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzQuaHRtbCNpbmRleF90Ij48c3Bhbj50PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3Ni5odG1sI2luZGV4X3YiPjxzcGFuPnY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLUhlcmUgaXMgYSBsaXN0IG9mIGFsbCBkb2N1bWVudGVkIGNsYXNzIG1lbWJlcnMgd2l0aCBsaW5rcyB0byB0aGUgY2xhc3MgZG9jdW1lbnRhdGlvbiBmb3IgZWFjaCBtZW1iZXI6Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfcSI+LSBxIC08L2E+PC9oMz48dWw+Ci08bGk+UXVlcnlCb29sQXR0cmlidXRlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FmNGExZDNmODhjMjhlYjBmMzExNWRjMzllYmQ4M2ZmZiI+VGlYbWxFbGVtZW50PC9hPgotPC9saT4KLTxsaT5RdWVyeURvdWJsZUF0dHJpYnV0ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhODk4ZDc3MzBlY2MzNDFmMGJmZmM3YTlkYWRiZjFjZTciPlRpWG1sRWxlbWVudDwvYT4KLTwvbGk+Ci08bGk+UXVlcnlEb3VibGVWYWx1ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FjODdiMmE4NDg5OTA2YTVkN2FhMjg3NWYyMGJlMzUxMyI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci08L2xpPgotPGxpPlF1ZXJ5RmxvYXRBdHRyaWJ1dGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWEwNGQzYWYxMTYwMWVmNWE1Zjg4Mjk1MjAzYTg0M2JlIj5UaVhtbEVsZW1lbnQ8L2E+Ci08L2xpPgotPGxpPlF1ZXJ5SW50QXR0cmlidXRlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlYTBiZmU0NzEzODBmMjgxYzU5NDU3NzBkZGJmNTJiOSI+VGlYbWxFbGVtZW50PC9hPgotPC9saT4KLTxsaT5RdWVyeUludFZhbHVlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWQ2YzkzMDg4ZWUyMWFmNDFhMTA3OTMxMjIzMzM5MzQ0Ij5UaVhtbEF0dHJpYnV0ZTwvYT4KLTwvbGk+Ci08bGk+UXVlcnlTdHJpbmdBdHRyaWJ1dGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTE0MzIxYWMzNjBlZmU5MDZlZDQ0OWQ5ZGIzZmQ5OTYxIj5UaVhtbEVsZW1lbnQ8L2E+Ci08L2xpPgotPGxpPlF1ZXJ5VW5zaWduZWRBdHRyaWJ1dGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWU0OGRmNjQ0Zjg5MGFiODZmYTE5ODM5YWM0MDFmMDBkIj5UaVhtbEVsZW1lbnQ8L2E+Ci08L2xpPgotPGxpPlF1ZXJ5VmFsdWVBdHRyaWJ1dGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWUzYjlhMDNiMGE1NjY2M2E0MDgwMWM3MjU2NjgzNTc2Ij5UaVhtbEVsZW1lbnQ8L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfMHg3Mi5odG1sIGIvZG9jcy9mdW5jdGlvbnNfMHg3Mi5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0OTljYzAwLi4wMDAwMDAwCi0tLSBhL2RvY3MvZnVuY3Rpb25zXzB4NzIuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDgzICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiBDbGFzcyBNZW1iZXJzPC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkFsbDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj48c3Bhbj5GdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3ZhcnMuaHRtbCI+PHNwYW4+VmFyaWFibGVzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPjxzcGFuPkVudW1lcmF0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwjaW5kZXhfYSI+PHNwYW4+YTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2My5odG1sI2luZGV4X2MiPjxzcGFuPmM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjQuaHRtbCNpbmRleF9kIj48c3Bhbj5kPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY1Lmh0bWwjaW5kZXhfZSI+PHNwYW4+ZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ni5odG1sI2luZGV4X2YiPjxzcGFuPmY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjcuaHRtbCNpbmRleF9nIj48c3Bhbj5nPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY5Lmh0bWwjaW5kZXhfaSI+PHNwYW4+aTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Yy5odG1sI2luZGV4X2wiPjxzcGFuPmw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmUuaHRtbCNpbmRleF9uIj48c3Bhbj5uPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZmLmh0bWwjaW5kZXhfbyI+PHNwYW4+bzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3MC5odG1sI2luZGV4X3AiPjxzcGFuPnA8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzEuaHRtbCNpbmRleF9xIj48c3Bhbj5xPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfMHg3Mi5odG1sI2luZGV4X3IiPjxzcGFuPnI8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzMuaHRtbCNpbmRleF9zIj48c3Bhbj5zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc0Lmh0bWwjaW5kZXhfdCI+PHNwYW4+dDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3NS5odG1sI2luZGV4X3UiPjxzcGFuPnU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzYuaHRtbCNpbmRleF92Ij48c3Bhbj52PC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci1IZXJlIGlzIGEgbGlzdCBvZiBhbGwgZG9jdW1lbnRlZCBjbGFzcyBtZW1iZXJzIHdpdGggbGlua3MgdG8gdGhlIGNsYXNzIGRvY3VtZW50YXRpb24gZm9yIGVhY2ggbWVtYmVyOgotCi08aDM+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImluZGV4X3IiPi0gciAtPC9hPjwvaDM+PHVsPgotPGxpPlJlbW92ZUF0dHJpYnV0ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNTY5Nzk3NjdkZWNhNzk0Mzc2YjFkZmE2OWE1MjViMmEiPlRpWG1sRWxlbWVudDwvYT4KLTwvbGk+Ci08bGk+UmVtb3ZlQ2hpbGQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWUxOWQ4NTEwZWZjOTA1OTY1NTJmNGZlZWFjOWE4ZmJmIj5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPGxpPlJlcGxhY2VDaGlsZCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMGM0OWU3MzlhMTdiOTkzODA1MGMyMmNkODk2MTdmYmQiPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08bGk+Um9vdEVsZW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FkMDlkMTc5MjdmOTA4ZjQwZWZiNDA2YWYyZmI4NzNiZSI+VGlYbWxEb2N1bWVudDwvYT4KLTwvbGk+Ci08bGk+Um93KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwMjRiY2ViMDcwMTg4ZGY5MmMyYThkODg1MmRkMDg1MyI+VGlYbWxCYXNlPC9hPgotPC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvZnVuY3Rpb25zXzB4NzMuaHRtbCBiL2RvY3MvZnVuY3Rpb25zXzB4NzMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzc4OGM1YS4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc18weDczLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMjEgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnM8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+PHNwYW4+RW51bWVyYXRpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19yZWxhLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtGdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDYzLmh0bWwjaW5kZXhfYyI+PHNwYW4+Yzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2NC5odG1sI2luZGV4X2QiPjxzcGFuPmQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjUuaHRtbCNpbmRleF9lIj48c3Bhbj5lPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmYuaHRtbCNpbmRleF9vIj48c3Bhbj5vPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzIuaHRtbCNpbmRleF9yIj48c3Bhbj5yPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfMHg3My5odG1sI2luZGV4X3MiPjxzcGFuPnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzQuaHRtbCNpbmRleF90Ij48c3Bhbj50PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3Ni5odG1sI2luZGV4X3YiPjxzcGFuPnY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLUhlcmUgaXMgYSBsaXN0IG9mIGFsbCBkb2N1bWVudGVkIGNsYXNzIG1lbWJlcnMgd2l0aCBsaW5rcyB0byB0aGUgY2xhc3MgZG9jdW1lbnRhdGlvbiBmb3IgZWFjaCBtZW1iZXI6Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfcyI+LSBzIC08L2E+PC9oMz48dWw+Ci08bGk+U2F2ZUZpbGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMWMwYWViMGQwYTcyMDE2OWFkNGFjODk1MjNlYmU5MyI+VGlYbWxEb2N1bWVudDwvYT4KLTwvbGk+Ci08bGk+U2V0QXR0cmlidXRlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FjZTZmNGJlNzVlMzczNzI2ZDQ3NzQwNzNkNjY2ZDFhNyI+VGlYbWxFbGVtZW50PC9hPgotPC9saT4KLTxsaT5TZXRDREFUQSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhY2IxN2ZmN2M1ZDA5YjJjODM5MzkzNDQ1YTNkZTVlYTkiPlRpWG1sVGV4dDwvYT4KLTwvbGk+Ci08bGk+U2V0Q29uZGVuc2VXaGl0ZVNwYWNlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwZjc5OWVjNjQ1YmZiOGQ4YTk2OWU4MzQ3OGYzNzljMSI+VGlYbWxCYXNlPC9hPgotPC9saT4KLTxsaT5TZXREb3VibGVBdHRyaWJ1dGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTBkMWRkOTc1ZDc1NDk2Nzc4MTc3ZTM1YWJmZTBlYzBiIj5UaVhtbEVsZW1lbnQ8L2E+Ci08L2xpPgotPGxpPlNldERvdWJsZVZhbHVlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTAzMTZkYTMxMzczNDk2YzQzNjhhZDU0OWJmNzExMzk0Ij5UaVhtbEF0dHJpYnV0ZTwvYT4KLTwvbGk+Ci08bGk+U2V0SW5kZW50KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2EyMTMzNzdhNDA3MGM3ZTYyNWJhZTU5NzE2YjA4OWU1ZSI+VGlYbWxQcmludGVyPC9hPgotPC9saT4KLTxsaT5TZXRJbnRWYWx1ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E3ZTA2NWRmNjQwMTE2YTYyZWE0ZjRiN2RhNTQ0OWNjOCI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci08L2xpPgotPGxpPlNldExpbmVCcmVhaygpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhNGJlMWUzN2U2OWUzODU4YzU5NjM1YWE5NDcxNzRmZTYiPlRpWG1sUHJpbnRlcjwvYT4KLTwvbGk+Ci08bGk+U2V0TmFtZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FiN2ZhM2QyMWZmOGQ3YzU3NjRjZjlhZjE1YjY2N2E5OSI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci08L2xpPgotPGxpPlNldFN0cmVhbVByaW50aW5nKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2FiMjNhOTA2MjllMzc0Y2IxY2FkY2EwOTA0NjhiYmQxOSI+VGlYbWxQcmludGVyPC9hPgotPC9saT4KLTxsaT5TZXRUYWJTaXplKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNTFkYWM1NjMxNmY4OWIzNWJkYjdkMGQ0MzNiYTk4OGUiPlRpWG1sRG9jdW1lbnQ8L2E+Ci08L2xpPgotPGxpPlNldFVzZXJEYXRhKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FjNmIzZTBmNzkwOTMwZDQ5NzBlYzMwNzY0ZTkzN2I1ZCI+VGlYbWxCYXNlPC9hPgotPC9saT4KLTxsaT5TZXRWYWx1ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EyZGFlNDQxNzhmNjY4YjNjYjQ4MTAxYmU0ZjIyMzZhMCI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjU5OGQ1ZjQ0ODA0MmMxYWJiZWFlNDUwM2RkNDVmZjIiPlRpWG1sTm9kZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWI0M2Y2N2EwY2MzZWMxZDgwZTYyNjA2NTAwZjA5MjVmIj5UaVhtbEF0dHJpYnV0ZTwvYT4KLTwvbGk+Ci08bGk+U2l6ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhZDAxMzc1YWU5MTk5YmQyZjQ4MjUyZWFkZGNlMzAzOWQiPlRpWG1sUHJpbnRlcjwvYT4KLTwvbGk+Ci08bGk+U3RhbmRhbG9uZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTlmZjA2YWZjMDMzZDdlZjczMGVjN2M2ODI1Yjk3YWQ5Ij5UaVhtbERlY2xhcmF0aW9uPC9hPgotPC9saT4KLTxsaT5TdHIoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTNiZDRkYWY0NDMwOWI0MWY1ODEzYTgzM2NhYTBkMWM5Ij5UaVhtbFByaW50ZXI8L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfMHg3NC5odG1sIGIvZG9jcy9mdW5jdGlvbnNfMHg3NC5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwYjI4ZGYxLi4wMDAwMDAwCi0tLSBhL2RvY3MvZnVuY3Rpb25zXzB4NzQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEyNyArMCwwIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Ci08dGl0bGU+VGlueVhtbDogQ2xhc3MgTWVtYmVyczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5BbGw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+PHNwYW4+RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPjxzcGFuPlZhcmlhYmxlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj48c3Bhbj5FbnVtZXJhdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjMuaHRtbCNpbmRleF9jIj48c3Bhbj5jPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY0Lmh0bWwjaW5kZXhfZCI+PHNwYW4+ZDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2NS5odG1sI2luZGV4X2UiPjxzcGFuPmU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjYuaHRtbCNpbmRleF9mIj48c3Bhbj5mPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY3Lmh0bWwjaW5kZXhfZyI+PHNwYW4+Zzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2OS5odG1sI2luZGV4X2kiPjxzcGFuPmk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmMuaHRtbCNpbmRleF9sIj48c3Bhbj5sPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZlLmh0bWwjaW5kZXhfbiI+PHNwYW4+bjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Zi5odG1sI2luZGV4X28iPjxzcGFuPm88L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzAuaHRtbCNpbmRleF9wIj48c3Bhbj5wPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcxLmh0bWwjaW5kZXhfcSI+PHNwYW4+cTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3Mi5odG1sI2luZGV4X3IiPjxzcGFuPnI8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzMuaHRtbCNpbmRleF9zIj48c3Bhbj5zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzUuaHRtbCNpbmRleF91Ij48c3Bhbj51PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotSGVyZSBpcyBhIGxpc3Qgb2YgYWxsIGRvY3VtZW50ZWQgY2xhc3MgbWVtYmVycyB3aXRoIGxpbmtzIHRvIHRoZSBjbGFzcyBkb2N1bWVudGF0aW9uIGZvciBlYWNoIG1lbWJlcjoKLQotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF90Ij4tIHQgLTwvYT48L2gzPjx1bD4KLTxsaT5UZXh0KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTlmYzczOWM4YTE4ZDE2MDAwNmY4MjU3MmZjMTQzZDEzIj5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+VGlYbWxBdHRyaWJ1dGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhOWNmYTNjODE3OTg3M2ZkNDg1ZDgzMDAzYjExNGY4ZTEiPlRpWG1sQXR0cmlidXRlPC9hPgotPC9saT4KLTxsaT5UaVhtbENvbW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYWFhMzI1MjAzMWQzZThiZDNhMmJmNTFhMWM2MTIwMWI3Ij5UaVhtbENvbW1lbnQ8L2E+Ci08L2xpPgotPGxpPlRpWG1sRGVjbGFyYXRpb24oKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2FjZDU1NTYwMDdjM2M3MjIwOTQ2NTA4MWRlMzlkOTgzNiI+VGlYbWxEZWNsYXJhdGlvbjwvYT4KLTwvbGk+Ci08bGk+VGlYbWxEb2N1bWVudCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTlmNWU4NDMzNTcwOGZkZTk4NDAwMjMwZjlmMTI2NTljIj5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTxsaT5UaVhtbEVsZW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTAxYmMzYWIzNzJkMzVkYTA4ZWZjYmJlNjVhZDkwYzYwIj5UaVhtbEVsZW1lbnQ8L2E+Ci08L2xpPgotPGxpPlRpWG1sSGFuZGxlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTIzNmQ3ODU1ZTFlNTZjY2M3Yjk4MDYzMGM0OGM3ZmQ3Ij5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+VGlYbWxUZXh0KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2FmNjU5ZTc3YzZiODdkNjg0ODI3ZjM1YThmNDg5NTk2MCI+VGlYbWxUZXh0PC9hPgotPC9saT4KLTxsaT5Ub0NvbW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWEwYTUwODZmOWVhZWU5MTBiYmZkYzdmOTc1ZTI2NTc0Ij5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhMDBmYjQyMTVjMjBhMjM5OWVhMDVhYzliOWU3ZTY4YTAiPlRpWG1sQ29tbWVudDwvYT4KLTwvbGk+Ci08bGk+VG9EZWNsYXJhdGlvbigpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhOWY0M2U2OTg0ZmM3ZDRhZmQ2ZWIzMjcxNGM2YjdiNzIiPlRpWG1sTm9kZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMWUwODVkM2ZlZmQxZGJmNWNjZGJmZjcyOTkzMWE5NjciPlRpWG1sRGVjbGFyYXRpb248L2E+Ci08L2xpPgotPGxpPlRvRG9jdW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYThhNGNkYTRiMTVjMjlmNjRjZmY0MTkzMDlhZWJlZDA4Ij5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTFkYzk3N2JkZTNlNGZlODVhOGViOWQ4OGEzNWVmNWE0Ij5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTxsaT5Ub0VsZW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcyYWJlZDk2ZGM5NjY3YWI5ZTBhMmEyNzUzMDFiYjFjIj5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhYzViOGQwZTI1ZmEyM2ZkOWFjYmI2ZDE0NjA4MjkwMWMiPlRpWG1sRWxlbWVudDwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWJjNmU3ZWQzODNhNWZlMWU1MmIwYzAwMDRiNDU3YjllIj5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+VG9Ob2RlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWY2NzhlNTA4OGU4M2JlNjdiYWY3NmY2OTk3NTZmMmMzIj5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+VG9UZXh0KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2FlN2MzYThmZDNlNGRiZjZjMGM0MzYzYTk0M2Q3MmY1YiI+VGlYbWxUZXh0PC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhNGFjNTNhNjUyMjk2MjAzYTViNWUxMzg1NGQ5MjM1ODYiPlRpWG1sSGFuZGxlPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTNkZGZiY2FjNzhmYmVhMDQxZmFkNTdlNWM2ZDYwYTAzIj5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhODk1YmYzNGZmYWQxN2Y3NDM5YWIyYTUyYjk2NTE2NDgiPlRpWG1sVGV4dDwvYT4KLTwvbGk+Ci08bGk+VG9Vbmtub3duKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmZDcyMDVjZjMxZDdhMzc2OTI5ZjhhMzY5MzA2MjdhMiI+VGlYbWxOb2RlPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYWIwMzEzZTVmZTc3OTg3ZDc0NmFjMWE5N2EyNTQ0MTlkIj5UaVhtbFVua25vd248L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDZkZTVhZjg1MjY2OGM3ZTRhZjBkMDljMjA1ZjBiMGQiPlRpWG1sTm9kZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTEzODFjMTc1MDdhMTMwNzY3YjFlMjNhZmM5M2IzNjc0Ij5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+VHlwZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTdiOTlkNWM5N2Q2N2E0MmI5NzUyZjUyMTBhMWJhNWUiPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2Z1bmN0aW9uc18weDc1Lmh0bWwgYi9kb2NzL2Z1bmN0aW9uc18weDc1Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNlOTFmMDguLjAwMDAwMDAKLS0tIGEvZG9jcy9mdW5jdGlvbnNfMHg3NS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzQgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnM8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+PHNwYW4+RW51bWVyYXRpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19yZWxhLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtGdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDYzLmh0bWwjaW5kZXhfYyI+PHNwYW4+Yzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2NC5odG1sI2luZGV4X2QiPjxzcGFuPmQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjUuaHRtbCNpbmRleF9lIj48c3Bhbj5lPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmYuaHRtbCNpbmRleF9vIj48c3Bhbj5vPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzIuaHRtbCNpbmRleF9yIj48c3Bhbj5yPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3Ni5odG1sI2luZGV4X3YiPjxzcGFuPnY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLUhlcmUgaXMgYSBsaXN0IG9mIGFsbCBkb2N1bWVudGVkIGNsYXNzIG1lbWJlcnMgd2l0aCBsaW5rcyB0byB0aGUgY2xhc3MgZG9jdW1lbnRhdGlvbiBmb3IgZWFjaCBtZW1iZXI6Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfdSI+LSB1IC08L2E+PC9oMz48dWw+Ci08bGk+VW5rbm93bigpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E0OTY3NWI3NDM1N2JhMmFhZTEyNDY1N2E5YTFlZjQ2NSI+VGlYbWxIYW5kbGU8L2E+Ci08L2xpPgotPGxpPnVzZXJEYXRhCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjI0MmMwMTU5MDE5MWY2NDQ1NjlmYTg5YTA4MGQ5N2MiPlRpWG1sQmFzZTwvYT4KLTwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2Z1bmN0aW9uc18weDc2Lmh0bWwgYi9kb2NzL2Z1bmN0aW9uc18weDc2Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJjNmIxNWQuLjAwMDAwMDAKLS0tIGEvZG9jcy9mdW5jdGlvbnNfMHg3Ni5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsOTcgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnM8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+PHNwYW4+RW51bWVyYXRpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19yZWxhLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtGdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDYzLmh0bWwjaW5kZXhfYyI+PHNwYW4+Yzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2NC5odG1sI2luZGV4X2QiPjxzcGFuPmQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjUuaHRtbCNpbmRleF9lIj48c3Bhbj5lPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NmYuaHRtbCNpbmRleF9vIj48c3Bhbj5vPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzIuaHRtbCNpbmRleF9yIj48c3Bhbj5yPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zXzB4NzUuaHRtbCNpbmRleF91Ij48c3Bhbj51PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfMHg3Ni5odG1sI2luZGV4X3YiPjxzcGFuPnY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLUhlcmUgaXMgYSBsaXN0IG9mIGFsbCBkb2N1bWVudGVkIGNsYXNzIG1lbWJlcnMgd2l0aCBsaW5rcyB0byB0aGUgY2xhc3MgZG9jdW1lbnRhdGlvbiBmb3IgZWFjaCBtZW1iZXI6Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfdiI+LSB2IC08L2E+PC9oMz48dWw+Ci08bGk+VmFsdWUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTc3OTQzZWI5MGQxMmMyODkyYjEzMzdhOWY1OTE4YjQxIj5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EwZjg3NDQ5MGVhYzhjYTAwZWUwMDcwNzY1ZDBlOTdlMyI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci08L2xpPgotPGxpPlZhbHVlU3RyKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTg3NzA1YzNjY2Y5ZWU5NDE3YmViNGY3Y2JhY2Q0ZDMzIj5UaVhtbEF0dHJpYnV0ZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2ZDllNTA1NjE5ZDM5YmY1MGJmZDk2MDljOTE2OWVhNSI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTxsaT5WZXJzaW9uKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMDJlZTU1N2IxYTQ1NDVjMzIxOWVkMzc3YzEwM2VjNzYiPlRpWG1sRGVjbGFyYXRpb248L2E+Ci08L2xpPgotPGxpPlZpc2l0KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2E1M2E2MGU3YTUyODYyN2IzMWFmMzE2MTk3MmNjN2ZhMiI+VGlYbWxWaXNpdG9yPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYWNlMWIxNGQzM2VlZGUyNTc1YzA3NDNlMjM1MGY2YTM4Ij5UaVhtbFByaW50ZXI8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhZmFkNzFjNzFjZTY0NzNmYjliNGI2NGNkOTJkZTRhMTkiPlRpWG1sVmlzaXRvcjwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2E4M2MxM2Q2Yjk4MDA2NGIzMGY5ODlmOWEzNTQ5ODk3OSI+VGlYbWxQcmludGVyPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYTM5OWI4ZWJjYTVjZDE0NjY0OTc0YTMyZDJjZTAyOWU1Ij5UaVhtbFZpc2l0b3I8L2E+Ci08L2xpPgotPGxpPlZpc2l0RW50ZXIoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYTA3YmFlY2I1MmRkN2Q4NzE2YWUyYTQ4YWQwOTU2ZWUwIj5UaVhtbFZpc2l0b3I8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhMGM1ZTdiZjg2MjI4Mzg0MTdhMGQwYmZiOGY0MzM4NTQiPlRpWG1sUHJpbnRlcjwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2FmNmM2MTc4ZmZhNTE3YmJkYmE5NWQ3MDQ5MDg3NWZmZiI+VGlYbWxWaXNpdG9yPC9hPgotPC9saT4KLTxsaT5WaXNpdEV4aXQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTE4NTNjZjJmNmU2M2FkNGI0MjMyYjQ4MzVlMGFjYWYwIj5UaVhtbFByaW50ZXI8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhYTBhZGU0ZjI3MDg3NDQ3ZTkzOTc0ZTk3NWMzMjQ2YWQiPlRpWG1sVmlzaXRvcjwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2E2NmIzM2VkZDc2YzUzOGI0NjJmNzg5Yjc5N2E0ZmRmMiI+VGlYbWxQcmludGVyPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYWVjMmIxZjgxMTYyMjZkNTJmM2ExYjk1ZGFmZDNhMzJjIj5UaVhtbFZpc2l0b3I8L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfZW51bS5odG1sIGIvZG9jcy9mdW5jdGlvbnNfZW51bS5odG1sCmluZGV4IGM5YTcwMDIuLmE1ZWU5MzkgMTAwNjQ0Ci0tLSBhL2RvY3MvZnVuY3Rpb25zX2VudW0uaHRtbAorKysgYi9kb2NzL2Z1bmN0aW9uc19lbnVtLmh0bWwKQEAgLTEsNDggKzEsMTggQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iPgorPGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1pc28tODg1OS0xIj4KIDx0aXRsZT5UaW55WG1sOiBDbGFzcyBNZW1iZXJzIC0gRW51bWVyYXRpb25zPC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPjxzcGFuPkVudW1lcmF0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci0mbmJzcDs8dWw+Cis8bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+Cis8L2hlYWQ+PGJvZHk+Cis8IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNC40IC0tPgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJpbmRleC5odG1sIj5NYWluJm5ic3A7UGFnZTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJoaWVyYXJjaHkuaHRtbCI+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPkNsYXNzJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmaWxlcy5odG1sIj5GaWxlJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4SEwiIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj5DbGFzcyZuYnNwO01lbWJlcnM8L2E+PC9kaXY+Cis8ZGl2IGNsYXNzPSJxaW5kZXgiPjxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj5BbGw8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+RnVuY3Rpb25zPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPlZhcmlhYmxlczwvYT4gfCA8YSBjbGFzcz0icWluZGV4SEwiIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPkVudW1lcmF0aW9uczwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9hPjwvZGl2PgorCis8cD4KKzx1bD4KIDxsaT5Ob2RlVHlwZQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgzNmVkZWQ0OTIwYWI5ZTllZjI4NDk2ZjQ4Y2Q5NWEyIj5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Cis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCN3NyI+VGlYbWxOb2RlPC9hPjwvdWw+Cis8aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfZnVuYy5odG1sIGIvZG9jcy9mdW5jdGlvbnNfZnVuYy5odG1sCmluZGV4IDg1YWMyZDguLjNhN2ZiMGQgMTAwNjQ0Ci0tLSBhL2RvY3MvZnVuY3Rpb25zX2Z1bmMuaHRtbAorKysgYi9kb2NzL2Z1bmN0aW9uc19mdW5jLmh0bWwKQEAgLTEsNzkgKzEsMTMyIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIj4KKzxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9aXNvLTg4NTktMSI+CiA8dGl0bGU+VGlueVhtbDogQ2xhc3MgTWVtYmVycyAtIEZ1bmN0aW9uczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkFsbDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+PHNwYW4+RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPjxzcGFuPlZhcmlhYmxlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj48c3Bhbj5FbnVtZXJhdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2My5odG1sI2luZGV4X2MiPjxzcGFuPmM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NC5odG1sI2luZGV4X2QiPjxzcGFuPmQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NS5odG1sI2luZGV4X2UiPjxzcGFuPmU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ni5odG1sI2luZGV4X2YiPjxzcGFuPmY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2OS5odG1sI2luZGV4X2kiPjxzcGFuPmk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Yy5odG1sI2luZGV4X2wiPjxzcGFuPmw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3MC5odG1sI2luZGV4X3AiPjxzcGFuPnA8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3Mi5odG1sI2luZGV4X3IiPjxzcGFuPnI8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3My5odG1sI2luZGV4X3MiPjxzcGFuPnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3NS5odG1sI2luZGV4X3UiPjxzcGFuPnU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3Ni5odG1sI2luZGV4X3YiPjxzcGFuPnY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLSZuYnNwOworPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleEhMIiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+Q2xhc3MmbmJzcDtNZW1iZXJzPC9hPjwvZGl2PgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+QWxsPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXhITCIgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+RnVuY3Rpb25zPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPlZhcmlhYmxlczwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj5FbnVtZXJhdGlvbnM8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvYT48L2Rpdj4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X2EiPmE8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X2MiPmM8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X2QiPmQ8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X2UiPmU8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X2YiPmY8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X2ciPmc8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X2kiPmk8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X2wiPmw8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X24iPm48L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X3AiPnA8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X3EiPnE8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X3IiPnI8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X3MiPnM8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X3QiPnQ8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X3UiPnU8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iI2luZGV4X3YiPnY8L2E+PC9kaXY+CiAKLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfYSI+LSBhIC08L2E+PC9oMz48dWw+Ci08bGk+QWNjZXB0KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjYzBmODhiNzQ2MmM2Y2I3MzgwOWQ0MTBhNGY1YmI4NiI+VGlYbWxOb2RlPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTcxYTgxYjJhZmIwZDQyYmUxNTQzZDFjNDA0ZGVlNmY1Ij5UaVhtbEVsZW1lbnQ8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhODQ4M2Q0NDE1Y2U5ZGU2YzRmYThmNjNkMDY3ZDVkZTYiPlRpWG1sVGV4dDwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMjIzMTVhNTM1OTgzYjg2NTM1Y2RiYTM0NTg2NjllM2UiPlRpWG1sRGVjbGFyYXRpb248L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWE1NDVhYWUzMjVkOTc1MmFkNjQxMjBiYzRlY2Y5MzlhIj5UaVhtbERvY3VtZW50PC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYWQ3MTIyZTUxMzU1ODFiM2M4MzJhMWEzMjE3NzYwYTkzIj5UaVhtbFVua25vd248L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhZjNhYzFiOTlmYmJlOWVhNGZiNmUxNDE0NjE1NmU0M2UiPlRpWG1sQ29tbWVudDwvYT4KLTwvbGk+Cis8cD4KKworPHA+Cis8aDM+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iaW5kZXhfYSI+LSBhIC08L2E+PC9oMz48dWw+CiA8bGk+QXR0cmlidXRlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlYWZmOTlkNGYwZWE1YjM0ZjdhZWUyMDJhYWQ0NTdiYSI+VGlYbWxFbGVtZW50PC9hPgotPC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOworOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTciPlRpWG1sRWxlbWVudDwvYT48L3VsPgorPGgzPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImluZGV4X2MiPi0gYyAtPC9hPjwvaDM+PHVsPgorPGxpPkNEQVRBKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E2Ij5UaVhtbFRleHQ8L2E+PGxpPkNoaWxkKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTgiPlRpWG1sSGFuZGxlPC9hPjxsaT5DaGlsZEVsZW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMTAiPlRpWG1sSGFuZGxlPC9hPjxsaT5DbGVhcigpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNSI+VGlYbWxOb2RlPC9hPjxsaT5DbGVhckVycm9yKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMjIiPlRpWG1sRG9jdW1lbnQ8L2E+PGxpPkNsb25lKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNiMSI+VGlYbWxEb2N1bWVudDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCNhNCI+VGlYbWxVbmtub3duPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhOSI+VGlYbWxEZWNsYXJhdGlvbjwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNiMCI+VGlYbWxUZXh0PC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2E0Ij5UaVhtbENvbW1lbnQ8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTI4Ij5UaVhtbEVsZW1lbnQ8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcyIj5UaVhtbE5vZGU8L2E+PGxpPkNvbHVtbigpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNCI+VGlYbWxCYXNlPC9hPjwvdWw+Cis8aDM+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iaW5kZXhfZCI+LSBkIC08L2E+PC9oMz48dWw+Cis8bGk+RG91YmxlVmFsdWUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNiI+VGlYbWxBdHRyaWJ1dGU8L2E+PC91bD4KKzxoMz48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJpbmRleF9lIj4tIGUgLTwvYT48L2gzPjx1bD4KKzxsaT5FbGVtZW50KCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTE2Ij5UaVhtbEhhbmRsZTwvYT48bGk+RW5jb2RpbmcoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E3Ij5UaVhtbERlY2xhcmF0aW9uPC9hPjxsaT5FcnJvcigpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE1Ij5UaVhtbERvY3VtZW50PC9hPjxsaT5FcnJvckNvbCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE5Ij5UaVhtbERvY3VtZW50PC9hPjxsaT5FcnJvckRlc2MoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExNiI+VGlYbWxEb2N1bWVudDwvYT48bGk+RXJyb3JJZCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE3Ij5UaVhtbERvY3VtZW50PC9hPjxsaT5FcnJvclJvdygpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE4Ij5UaVhtbERvY3VtZW50PC9hPjwvdWw+Cis8aDM+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iaW5kZXhfZiI+LSBmIC08L2E+PC9oMz48dWw+Cis8bGk+Rmlyc3RBdHRyaWJ1dGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTIzIj5UaVhtbEVsZW1lbnQ8L2E+PGxpPkZpcnN0Q2hpbGQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhNCI+VGlYbWxIYW5kbGU8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE3Ij5UaVhtbE5vZGU8L2E+PGxpPkZpcnN0Q2hpbGRFbGVtZW50KCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTYiPlRpWG1sSGFuZGxlPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NSI+VGlYbWxOb2RlPC9hPjwvdWw+Cis8aDM+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iaW5kZXhfZyI+LSBnIC08L2E+PC9oMz48dWw+Cis8bGk+R2V0RG9jdW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU3Ij5UaVhtbE5vZGU8L2E+PGxpPkdldFRleHQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTI3Ij5UaVhtbEVsZW1lbnQ8L2E+PC91bD4KKzxoMz48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJpbmRleF9pIj4tIGkgLTwvYT48L2gzPjx1bD4KKzxsaT5JbnNlcnRBZnRlckNoaWxkKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyOSI+VGlYbWxOb2RlPC9hPjxsaT5JbnNlcnRCZWZvcmVDaGlsZCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjgiPlRpWG1sTm9kZTwvYT48bGk+SW5zZXJ0RW5kQ2hpbGQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI2Ij5UaVhtbE5vZGU8L2E+PGxpPkludFZhbHVlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTUiPlRpWG1sQXR0cmlidXRlPC9hPjxsaT5Jc1doaXRlU3BhY2VDb25kZW5zZWQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjZTEiPlRpWG1sQmFzZTwvYT48bGk+SXRlcmF0ZUNoaWxkcmVuKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNSI+VGlYbWxOb2RlPC9hPjwvdWw+Cis8aDM+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iaW5kZXhfbCI+LSBsIC08L2E+PC9oMz48dWw+Cis8bGk+TGFzdEF0dHJpYnV0ZSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjUiPlRpWG1sRWxlbWVudDwvYT48bGk+TGFzdENoaWxkKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExOSI+VGlYbWxOb2RlPC9hPjxsaT5MaW5rRW5kQ2hpbGQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI3Ij5UaVhtbE5vZGU8L2E+PGxpPkxvYWRGaWxlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTAiPlRpWG1sRG9jdW1lbnQ8L2E+PC91bD4KKzxoMz48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJpbmRleF9uIj4tIG4gLTwvYT48L2gzPjx1bD4KKzxsaT5OYW1lKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTMiPlRpWG1sQXR0cmlidXRlPC9hPjxsaT5OZXh0KCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTE1Ij5UaVhtbEF0dHJpYnV0ZTwvYT48bGk+TmV4dFNpYmxpbmcoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQyIj5UaVhtbE5vZGU8L2E+PGxpPk5leHRTaWJsaW5nRWxlbWVudCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDkiPlRpWG1sTm9kZTwvYT48bGk+Tm9DaGlsZHJlbigpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTkiPlRpWG1sTm9kZTwvYT48bGk+Tm9kZSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExNSI+VGlYbWxIYW5kbGU8L2E+PC91bD4KKzxoMz48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJpbmRleF9wIj4tIHAgLTwvYT48L2gzPjx1bD4KKzxsaT5QYXJlbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYiPlRpWG1sTm9kZTwvYT48bGk+UGFyc2UoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExMiI+VGlYbWxEb2N1bWVudDwvYT48bGk+UHJldmlvdXMoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTciPlRpWG1sQXR0cmlidXRlPC9hPjxsaT5QcmV2aW91c1NpYmxpbmcoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM3Ij5UaVhtbE5vZGU8L2E+PGxpPlByaW50KCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMjQiPlRpWG1sRG9jdW1lbnQ8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYTUiPlRpWG1sVW5rbm93bjwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTEwIj5UaVhtbERlY2xhcmF0aW9uPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E1Ij5UaVhtbFRleHQ8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTUiPlRpWG1sQ29tbWVudDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjkiPlRpWG1sRWxlbWVudDwvYT4sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EyMyI+VGlYbWxBdHRyaWJ1dGU8L2E+LCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTIiPlRpWG1sQmFzZTwvYT48L3VsPgorPGgzPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImluZGV4X3EiPi0gcSAtPC9hPjwvaDM+PHVsPgorPGxpPlF1ZXJ5RG91YmxlQXR0cmlidXRlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E5Ij5UaVhtbEVsZW1lbnQ8L2E+PGxpPlF1ZXJ5RG91YmxlVmFsdWUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhOCI+VGlYbWxBdHRyaWJ1dGU8L2E+PGxpPlF1ZXJ5RmxvYXRBdHRyaWJ1dGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTEwIj5UaVhtbEVsZW1lbnQ8L2E+PGxpPlF1ZXJ5SW50QXR0cmlidXRlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E4Ij5UaVhtbEVsZW1lbnQ8L2E+PGxpPlF1ZXJ5SW50VmFsdWUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNyI+VGlYbWxBdHRyaWJ1dGU8L2E+PC91bD4KKzxoMz48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJpbmRleF9yIj4tIHIgLTwvYT48L2gzPjx1bD4KKzxsaT5SZW1vdmVBdHRyaWJ1dGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTIyIj5UaVhtbEVsZW1lbnQ8L2E+PGxpPlJlbW92ZUNoaWxkKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMSI+VGlYbWxOb2RlPC9hPjxsaT5SZXBsYWNlQ2hpbGQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMwIj5UaVhtbE5vZGU8L2E+PGxpPlJvb3RFbGVtZW50KCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTMiPlRpWG1sRG9jdW1lbnQ8L2E+PGxpPlJvdygpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMyI+VGlYbWxCYXNlPC9hPjwvdWw+Cis8aDM+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iaW5kZXhfcyI+LSBzIC08L2E+PC9oMz48dWw+Cis8bGk+U2F2ZUZpbGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExMSI+VGlYbWxEb2N1bWVudDwvYT48bGk+U2V0QXR0cmlidXRlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExOSI+VGlYbWxFbGVtZW50PC9hPjxsaT5TZXRDREFUQSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhNyI+VGlYbWxUZXh0PC9hPjxsaT5TZXRDb25kZW5zZVdoaXRlU3BhY2UoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjZTAiPlRpWG1sQmFzZTwvYT48bGk+U2V0RG91YmxlQXR0cmlidXRlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyMCI+VGlYbWxFbGVtZW50PC9hPjxsaT5TZXREb3VibGVWYWx1ZSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExMiI+VGlYbWxBdHRyaWJ1dGU8L2E+PGxpPlNldEludFZhbHVlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTExIj5UaVhtbEF0dHJpYnV0ZTwvYT48bGk+U2V0TmFtZSgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExMyI+VGlYbWxBdHRyaWJ1dGU8L2E+PGxpPlNldFRhYlNpemUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMCI+VGlYbWxEb2N1bWVudDwvYT48bGk+U2V0VmFsdWUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTQiPlRpWG1sQXR0cmlidXRlPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0Ij5UaVhtbE5vZGU8L2E+PGxpPlN0YW5kYWxvbmUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E4Ij5UaVhtbERlY2xhcmF0aW9uPC9hPjwvdWw+Cis8aDM+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iaW5kZXhfdCI+LSB0IC08L2E+PC9oMz48dWw+Cis8bGk+VGV4dCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExNyI+VGlYbWxIYW5kbGU8L2E+PGxpPlRpWG1sQXR0cmlidXRlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTIiPlRpWG1sQXR0cmlidXRlPC9hPjxsaT5UaVhtbENvbW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTAiPlRpWG1sQ29tbWVudDwvYT48bGk+VGlYbWxEZWNsYXJhdGlvbigpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTIiPlRpWG1sRGVjbGFyYXRpb248L2E+PGxpPlRpWG1sRG9jdW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyIj5UaVhtbERvY3VtZW50PC9hPjxsaT5UaVhtbEVsZW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTEiPlRpWG1sRWxlbWVudDwvYT48bGk+VGlYbWxIYW5kbGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMSI+VGlYbWxIYW5kbGU8L2E+PGxpPlRpWG1sVGV4dCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhMiI+VGlYbWxUZXh0PC9hPjxsaT5Ub0NvbW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY4Ij5UaVhtbE5vZGU8L2E+PGxpPlRvRGVjbGFyYXRpb24oKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcxIj5UaVhtbE5vZGU8L2E+PGxpPlRvRG9jdW1lbnQoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY2Ij5UaVhtbE5vZGU8L2E+PGxpPlRvRWxlbWVudCgpCis6IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjciPlRpWG1sTm9kZTwvYT48bGk+VG9UZXh0KCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MCI+VGlYbWxOb2RlPC9hPjxsaT5Ub1Vua25vd24oKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY5Ij5UaVhtbE5vZGU8L2E+PGxpPlR5cGUoKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU2Ij5UaVhtbE5vZGU8L2E+PC91bD4KKzxoMz48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJpbmRleF91Ij4tIHUgLTwvYT48L2gzPjx1bD4KKzxsaT5Vbmtub3duKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTE4Ij5UaVhtbEhhbmRsZTwvYT48L3VsPgorPGgzPjxhIGNsYXNzPSJhbmNob3IiIG5hbWU9ImluZGV4X3YiPi0gdiAtPC9hPjwvaDM+PHVsPgorPGxpPlZhbHVlKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTQiPlRpWG1sQXR0cmlidXRlPC9hPiwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExIj5UaVhtbE5vZGU8L2E+PGxpPlZhbHVlU3RyKCkKKzogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyIj5UaVhtbE5vZGU8L2E+PGxpPlZlcnNpb24oKQorOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E2Ij5UaVhtbERlY2xhcmF0aW9uPC9hPjwvdWw+Cis8aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfZnVuY18weDYzLmh0bWwgYi9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NjMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDJlYWYyMC4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NjMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDk3ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiBDbGFzcyBNZW1iZXJzIC0gRnVuY3Rpb25zPC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj48c3Bhbj5GdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3ZhcnMuaHRtbCI+PHNwYW4+VmFyaWFibGVzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPjxzcGFuPkVudW1lcmF0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDYzLmh0bWwjaW5kZXhfYyI+PHNwYW4+Yzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY0Lmh0bWwjaW5kZXhfZCI+PHNwYW4+ZDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY1Lmh0bWwjaW5kZXhfZSI+PHNwYW4+ZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY3Lmh0bWwjaW5kZXhfZyI+PHNwYW4+Zzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY5Lmh0bWwjaW5kZXhfaSI+PHNwYW4+aTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZlLmh0bWwjaW5kZXhfbiI+PHNwYW4+bjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcxLmh0bWwjaW5kZXhfcSI+PHNwYW4+cTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcyLmh0bWwjaW5kZXhfciI+PHNwYW4+cjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc0Lmh0bWwjaW5kZXhfdCI+PHNwYW4+dDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotJm5ic3A7Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfYyI+LSBjIC08L2E+PC9oMz48dWw+Ci08bGk+Q0RBVEEoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYWQxYTZhNmI4M2ZhMjI3MTAyMmRkOTdjMDcyYTJiNTg2Ij5UaVhtbFRleHQ8L2E+Ci08L2xpPgotPGxpPkNoaWxkKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTA3MjQ5MmI0YmUxYWNkYjBkYjJkMDNjZDhmNzFjY2M0Ij5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+Q2hpbGRFbGVtZW50KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTk3OWEzZjg1MDk4NGExNzZlZTg4NGUzOTRjN2VlZDJkIj5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+Q2xlYXIoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcwOGU3Zjk1M2RmNjFkNGQyZDEyZjczMTcxNTUwYTRiIj5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPGxpPkNsZWFyRXJyb3IoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FjNjZiOGMyOGRiODYzNjMzMTU3MTJhMzU3NGU4N2MzNSI+VGlYbWxEb2N1bWVudDwvYT4KLTwvbGk+Ci08bGk+Q2xvbmUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTBkNjY2MmJkYzUyNDg4YjllMTJiM2M3YTA0NTNkMDI4Ij5UaVhtbENvbW1lbnQ8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhYTQ2NDUzNWVhMTk5NGRiMzM3Y2I2YThjZTRiNTg4YjUiPlRpWG1sRWxlbWVudDwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2EwOTYwYmI3NDI4YjNmMzQxZGE0NjI0NDIyOTYwNGQ3MyI+VGlYbWxVbmtub3duPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ1MDhjYzNhMmQ3YTk4ZTk2YTU0Y2MwOWMzN2E3OGE0Ij5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTdjZjQ1OTE4NjA0MDE0MWNkYTdhMTgwYTY1ODVjZTJlIj5UaVhtbERlY2xhcmF0aW9uPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E0OTY4NjYxY2FiNGExZjQ0YTIzMzI5YzZmOGRiMTkwNyI+VGlYbWxEb2N1bWVudDwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2EwYzQxMWU5M2EyNzUzNzM2OTQ3OWQwMzRjYzgyZGEzYiI+VGlYbWxUZXh0PC9hPgotPC9saT4KLTxsaT5Db2x1bW4oKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWI1NGJmYjliNzBmZTZkZDI3NmU3YjI3OWNhYjdmMDAzIj5UaVhtbEJhc2U8L2E+Ci08L2xpPgotPGxpPkNTdHIoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTg1OWVlZGU5NTk3ZDNlMDM1NWI3Nzc1N2JlNDg3MzVlIj5UaVhtbFByaW50ZXI8L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfZnVuY18weDY0Lmh0bWwgYi9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NjQuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODM2MDIxZi4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NjQuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDcwICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiBDbGFzcyBNZW1iZXJzIC0gRnVuY3Rpb25zPC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj48c3Bhbj5GdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3ZhcnMuaHRtbCI+PHNwYW4+VmFyaWFibGVzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPjxzcGFuPkVudW1lcmF0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjMuaHRtbCNpbmRleF9jIj48c3Bhbj5jPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY0Lmh0bWwjaW5kZXhfZCI+PHNwYW4+ZDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY1Lmh0bWwjaW5kZXhfZSI+PHNwYW4+ZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY3Lmh0bWwjaW5kZXhfZyI+PHNwYW4+Zzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY5Lmh0bWwjaW5kZXhfaSI+PHNwYW4+aTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZlLmh0bWwjaW5kZXhfbiI+PHNwYW4+bjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcxLmh0bWwjaW5kZXhfcSI+PHNwYW4+cTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcyLmh0bWwjaW5kZXhfciI+PHNwYW4+cjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc0Lmh0bWwjaW5kZXhfdCI+PHNwYW4+dDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotJm5ic3A7Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfZCI+LSBkIC08L2E+PC9oMz48dWw+Ci08bGk+RG91YmxlVmFsdWUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMjg4MGRkZWY1M2ZjNzUyMmM5OTUzNTI3Mzk1NGQyMzAiPlRpWG1sQXR0cmlidXRlPC9hPgotPC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvZnVuY3Rpb25zX2Z1bmNfMHg2NS5odG1sIGIvZG9jcy9mdW5jdGlvbnNfZnVuY18weDY1Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDcxYTk5M2EuLjAwMDAwMDAKLS0tIGEvZG9jcy9mdW5jdGlvbnNfZnVuY18weDY1Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw5MSArMCwwIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Ci08dGl0bGU+VGlueVhtbDogQ2xhc3MgTWVtYmVycyAtIEZ1bmN0aW9uczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkFsbDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+PHNwYW4+RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPjxzcGFuPlZhcmlhYmxlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj48c3Bhbj5FbnVtZXJhdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwjaW5kZXhfYSI+PHNwYW4+YTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDYzLmh0bWwjaW5kZXhfYyI+PHNwYW4+Yzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY0Lmh0bWwjaW5kZXhfZCI+PHNwYW4+ZDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NS5odG1sI2luZGV4X2UiPjxzcGFuPmU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ni5odG1sI2luZGV4X2YiPjxzcGFuPmY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2OS5odG1sI2luZGV4X2kiPjxzcGFuPmk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Yy5odG1sI2luZGV4X2wiPjxzcGFuPmw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3MC5odG1sI2luZGV4X3AiPjxzcGFuPnA8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3Mi5odG1sI2luZGV4X3IiPjxzcGFuPnI8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3My5odG1sI2luZGV4X3MiPjxzcGFuPnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3NS5odG1sI2luZGV4X3UiPjxzcGFuPnU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3Ni5odG1sI2luZGV4X3YiPjxzcGFuPnY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLSZuYnNwOwotCi08aDM+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImluZGV4X2UiPi0gZSAtPC9hPjwvaDM+PHVsPgotPGxpPkVsZW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhY2I1ZmU4Mzg4YTUyNjI4OWVhNjVlODE3YTUxZTA1ZTciPlRpWG1sSGFuZGxlPC9hPgotPC9saT4KLTxsaT5FbmNvZGVTdHJpbmcoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTZiZDhjMzE1YzFhY2IwOWUzNDEwN2I4NzM2NTA1OTQ4Ij5UaVhtbEJhc2U8L2E+Ci08L2xpPgotPGxpPkVuY29kaW5nKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhNWQ5NzQyMzFmOWU5YTJmMDU0MmYxNWYzYTQ2Y2RiNzYiPlRpWG1sRGVjbGFyYXRpb248L2E+Ci08L2xpPgotPGxpPkVycm9yKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNmRmYzAxYTZlNWQ1OGU1NmFjZDUzN2RmZDNiZGViMjkiPlRpWG1sRG9jdW1lbnQ8L2E+Ci08L2xpPgotPGxpPkVycm9yQ29sKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhYTkwYmM2MzBlZTUyMDNjNjEwOWNhNWZhZDMzMjM2NDkiPlRpWG1sRG9jdW1lbnQ8L2E+Ci08L2xpPgotPGxpPkVycm9yRGVzYygpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTlkMGY2ODlmNmUwOWVhNDk0ZWE1NDdiZThkNzljMjVlIj5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTxsaT5FcnJvcklkKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhZjk2ZmMyZjNmOWVjNjQyMjc4MmJmZTkxNmM5ZTc3OGYiPlRpWG1sRG9jdW1lbnQ8L2E+Ci08L2xpPgotPGxpPkVycm9yUm93KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhZjMwZWZjNzVlODA0YWEyZTkyZmI4YmUzYThjYjY3NmUiPlRpWG1sRG9jdW1lbnQ8L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfZnVuY18weDY2Lmh0bWwgYi9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NjYuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTdlMzVlOS4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NjYuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDgxICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiBDbGFzcyBNZW1iZXJzIC0gRnVuY3Rpb25zPC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj48c3Bhbj5GdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3ZhcnMuaHRtbCI+PHNwYW4+VmFyaWFibGVzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPjxzcGFuPkVudW1lcmF0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjMuaHRtbCNpbmRleF9jIj48c3Bhbj5jPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjQuaHRtbCNpbmRleF9kIj48c3Bhbj5kPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjUuaHRtbCNpbmRleF9lIj48c3Bhbj5lPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY3Lmh0bWwjaW5kZXhfZyI+PHNwYW4+Zzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY5Lmh0bWwjaW5kZXhfaSI+PHNwYW4+aTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZlLmh0bWwjaW5kZXhfbiI+PHNwYW4+bjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcxLmh0bWwjaW5kZXhfcSI+PHNwYW4+cTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcyLmh0bWwjaW5kZXhfciI+PHNwYW4+cjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc0Lmh0bWwjaW5kZXhfdCI+PHNwYW4+dDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotJm5ic3A7Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfZiI+LSBmIC08L2E+PC9oMz48dWw+Ci08bGk+Rmlyc3RBdHRyaWJ1dGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTUxNjA1NGM5MDczNjQ3ZDZjYjI5YjZhYmU5ZmEwNTkyIj5UaVhtbEVsZW1lbnQ8L2E+Ci08L2xpPgotPGxpPkZpcnN0Q2hpbGQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ0YzhlZWUyNmJiZTJkMWIyNzYyMDM4ZGY5ZGRlMmYwIj5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E4YzYxZjY0YWU5MzY1ZDg5YzI2NGYyODkwODU1NDFmOCI+VGlYbWxIYW5kbGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDdmNjIwMGE1OTU2YzcyM2M1YjUyZDcwZjI5YzQ2ZjYiPlRpWG1sTm9kZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWNkYjFmYWFmODhhNzAwYjQwY2EyYzhkOWFlZTIxMTM5Ij5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+Rmlyc3RDaGlsZEVsZW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWY0ZmI2NTJmNmJkNzlhZTBkNWNlN2QwZjdkM2MwZmJhIj5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2EyNGQxMTEyZTk5NWU5MzdlNGRkZGIyMDJkNDExM2Q0YSI+VGlYbWxIYW5kbGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzI3YWQ0YmJkOTAwNzNjNWRmYzkzMWIwNzMxNGY1ZjciPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NjcuaHRtbCBiL2RvY3MvZnVuY3Rpb25zX2Z1bmNfMHg2Ny5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0NDAxYjRjLi4wMDAwMDAwCi0tLSBhL2RvY3MvZnVuY3Rpb25zX2Z1bmNfMHg2Ny5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzYgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnMgLSBGdW5jdGlvbnM8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5BbGw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+PHNwYW4+RW51bWVyYXRpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19yZWxhLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtGdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2My5odG1sI2luZGV4X2MiPjxzcGFuPmM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NC5odG1sI2luZGV4X2QiPjxzcGFuPmQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NS5odG1sI2luZGV4X2UiPjxzcGFuPmU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ni5odG1sI2luZGV4X2YiPjxzcGFuPmY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjcuaHRtbCNpbmRleF9nIj48c3Bhbj5nPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NmMuaHRtbCNpbmRleF9sIj48c3Bhbj5sPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NmUuaHRtbCNpbmRleF9uIj48c3Bhbj5uPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzAuaHRtbCNpbmRleF9wIj48c3Bhbj5wPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzEuaHRtbCNpbmRleF9xIj48c3Bhbj5xPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzIuaHRtbCNpbmRleF9yIj48c3Bhbj5yPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzMuaHRtbCNpbmRleF9zIj48c3Bhbj5zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzQuaHRtbCNpbmRleF90Ij48c3Bhbj50PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzUuaHRtbCNpbmRleF91Ij48c3Bhbj51PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzYuaHRtbCNpbmRleF92Ij48c3Bhbj52PC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci0mbmJzcDsKLQotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF9nIj4tIGcgLTwvYT48L2gzPjx1bD4KLTxsaT5HZXREb2N1bWVudCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODBlMzk3ZmE5NzNjZjUzMjNlMzNiMDcxNTRiMDI0ZjMiPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08bGk+R2V0VGV4dCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZjMyODIyOTQ5ODZjZGIyMTY2NDZlYTFmNjdhZjJjODciPlRpWG1sRWxlbWVudDwvYT4KLTwvbGk+Ci08bGk+R2V0VXNlckRhdGEoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTY1NTlhNTMwY2E2NzYzZmMzMDFhMTRkNzdlZDI4YzE3Ij5UaVhtbEJhc2U8L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfZnVuY18weDY5Lmh0bWwgYi9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NjkuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYzg3OTNiZi4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NjkuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDg4ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiBDbGFzcyBNZW1iZXJzIC0gRnVuY3Rpb25zPC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj48c3Bhbj5GdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3ZhcnMuaHRtbCI+PHNwYW4+VmFyaWFibGVzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPjxzcGFuPkVudW1lcmF0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjMuaHRtbCNpbmRleF9jIj48c3Bhbj5jPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjQuaHRtbCNpbmRleF9kIj48c3Bhbj5kPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjUuaHRtbCNpbmRleF9lIj48c3Bhbj5lPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjYuaHRtbCNpbmRleF9mIj48c3Bhbj5mPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjcuaHRtbCNpbmRleF9nIj48c3Bhbj5nPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY5Lmh0bWwjaW5kZXhfaSI+PHNwYW4+aTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZlLmh0bWwjaW5kZXhfbiI+PHNwYW4+bjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcxLmh0bWwjaW5kZXhfcSI+PHNwYW4+cTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcyLmh0bWwjaW5kZXhfciI+PHNwYW4+cjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc0Lmh0bWwjaW5kZXhfdCI+PHNwYW4+dDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotJm5ic3A7Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfaSI+LSBpIC08L2E+PC9oMz48dWw+Ci08bGk+SW5kZW50KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2FiYjMzZWM3ZDRiYWQ2YWFlYjU3ZjQzMDQzOTRiMTMzZCI+VGlYbWxQcmludGVyPC9hPgotPC9saT4KLTxsaT5JbnNlcnRBZnRlckNoaWxkKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FkOWI3NWU1NGVjMTkzMDFjOGI0ZDVmZjU4M2QwYjNkNSI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTxsaT5JbnNlcnRCZWZvcmVDaGlsZCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMGMxNDZmYTJmZmYwMTU3YjY4MTU5NDEwMmY0OGNiYzciPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08bGk+SW5zZXJ0RW5kQ2hpbGQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWQ3ZDQ2MzBlMWEyYTkxNmVkZGExNmJlMjI0NDhhOGJhIj5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPGxpPkludFZhbHVlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWExYTIwYWQ1OWRjN2U4OWEwYWIyNjUzOTYzNjBkNTBmIj5UaVhtbEF0dHJpYnV0ZTwvYT4KLTwvbGk+Ci08bGk+SXNXaGl0ZVNwYWNlQ29uZGVuc2VkKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FkNGIxNDcyNTMxYzY0N2EyNWIxODQwYTg3YWU0MjQzOCI+VGlYbWxCYXNlPC9hPgotPC9saT4KLTxsaT5JdGVyYXRlQ2hpbGRyZW4oKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWRmYWVmMzVhMDc2YjkzNDNhZGMxNDIwNzU3Mzc2YzM5Ij5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfZnVuY18weDZjLmh0bWwgYi9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NmMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGY2NjVhNS4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NmMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDgyICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiBDbGFzcyBNZW1iZXJzIC0gRnVuY3Rpb25zPC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj48c3Bhbj5GdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3ZhcnMuaHRtbCI+PHNwYW4+VmFyaWFibGVzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPjxzcGFuPkVudW1lcmF0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjMuaHRtbCNpbmRleF9jIj48c3Bhbj5jPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjQuaHRtbCNpbmRleF9kIj48c3Bhbj5kPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjUuaHRtbCNpbmRleF9lIj48c3Bhbj5lPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjYuaHRtbCNpbmRleF9mIj48c3Bhbj5mPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjcuaHRtbCNpbmRleF9nIj48c3Bhbj5nPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZlLmh0bWwjaW5kZXhfbiI+PHNwYW4+bjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcxLmh0bWwjaW5kZXhfcSI+PHNwYW4+cTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcyLmh0bWwjaW5kZXhfciI+PHNwYW4+cjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc0Lmh0bWwjaW5kZXhfdCI+PHNwYW4+dDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotJm5ic3A7Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfbCI+LSBsIC08L2E+PC9oMz48dWw+Ci08bGk+TGFzdEF0dHJpYnV0ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhODYxOTFiNDlmOTE3N2JlMTMyYjg1YjE0NjU1ZjEzODEiPlRpWG1sRWxlbWVudDwvYT4KLTwvbGk+Ci08bGk+TGFzdENoaWxkKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NDMyZDJiMjQ5NWY2Y2FmOWNiNDI3OGRmNzA2YTAzMSI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTxsaT5MaW5lQnJlYWsoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTExZjFiNDgwNGE0NjBiMTc1ZWMyNDRlYjU3MjRkOTZkIj5UaVhtbFByaW50ZXI8L2E+Ci08L2xpPgotPGxpPkxpbmtFbmRDaGlsZCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNWQyOTQ0MmFlNDZkZTZkMDE2ODQyOTE1NjE5N2JmYzYiPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08bGk+TG9hZEZpbGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E0MWY2ZmU3MjAwODY0ZDFkY2E2NjNkMjMwY2FmOGRiNiI+VGlYbWxEb2N1bWVudDwvYT4KLTwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NmUuaHRtbCBiL2RvY3MvZnVuY3Rpb25zX2Z1bmNfMHg2ZS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NGIyNjQxLi4wMDAwMDAwCi0tLSBhL2RvY3MvZnVuY3Rpb25zX2Z1bmNfMHg2ZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsODUgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnMgLSBGdW5jdGlvbnM8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5BbGw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+PHNwYW4+RW51bWVyYXRpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19yZWxhLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtGdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2My5odG1sI2luZGV4X2MiPjxzcGFuPmM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NC5odG1sI2luZGV4X2QiPjxzcGFuPmQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NS5odG1sI2luZGV4X2UiPjxzcGFuPmU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ni5odG1sI2luZGV4X2YiPjxzcGFuPmY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2OS5odG1sI2luZGV4X2kiPjxzcGFuPmk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Yy5odG1sI2luZGV4X2wiPjxzcGFuPmw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NmUuaHRtbCNpbmRleF9uIj48c3Bhbj5uPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzAuaHRtbCNpbmRleF9wIj48c3Bhbj5wPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzEuaHRtbCNpbmRleF9xIj48c3Bhbj5xPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzIuaHRtbCNpbmRleF9yIj48c3Bhbj5yPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzMuaHRtbCNpbmRleF9zIj48c3Bhbj5zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzQuaHRtbCNpbmRleF90Ij48c3Bhbj50PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzUuaHRtbCNpbmRleF91Ij48c3Bhbj51PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzYuaHRtbCNpbmRleF92Ij48c3Bhbj52PC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci0mbmJzcDsKLQotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF9uIj4tIG4gLTwvYT48L2gzPjx1bD4KLTxsaT5OYW1lKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTI5OGE1NzI4N2QzMDU5MDRiYTZiZDk2YWU2Zjc4ZDNkIj5UaVhtbEF0dHJpYnV0ZTwvYT4KLTwvbGk+Ci08bGk+TmV4dCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExYzc4ZTkyZTIyM2E0MDg0M2Y2NDRiYTQ4ZWY2OWY2NyI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci08L2xpPgotPGxpPk5leHRTaWJsaW5nKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNzU3YzFmNGQwMWU4Yzk1OTZmZmRiZDU2MWM3NmFlYSI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTxsaT5OZXh0U2libGluZ0VsZW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTA3MWJhNzdmZDdhYjc5NDAyZmE4NGI3ZTliODYwN2IzIj5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPGxpPk5vQ2hpbGRyZW4oKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWVlZDIxYWQzMDYzMGVmNmU3ZmFmMDk2MTI3ZWRjOWYzIj5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPGxpPk5vZGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhYjQ0YjcyM2E4ZGM5YWY3MjgzOGEzMDNjMDc5ZDAzNzYiPlRpWG1sSGFuZGxlPC9hPgotPC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvZnVuY3Rpb25zX2Z1bmNfMHg3MC5odG1sIGIvZG9jcy9mdW5jdGlvbnNfZnVuY18weDcwLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFlOGU5ZGEuLjAwMDAwMDAKLS0tIGEvZG9jcy9mdW5jdGlvbnNfZnVuY18weDcwLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSw5MCArMCwwIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Ci08dGl0bGU+VGlueVhtbDogQ2xhc3MgTWVtYmVycyAtIEZ1bmN0aW9uczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkFsbDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+PHNwYW4+RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPjxzcGFuPlZhcmlhYmxlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj48c3Bhbj5FbnVtZXJhdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwjaW5kZXhfYSI+PHNwYW4+YTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDYzLmh0bWwjaW5kZXhfYyI+PHNwYW4+Yzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY0Lmh0bWwjaW5kZXhfZCI+PHNwYW4+ZDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY1Lmh0bWwjaW5kZXhfZSI+PHNwYW4+ZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY3Lmh0bWwjaW5kZXhfZyI+PHNwYW4+Zzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY5Lmh0bWwjaW5kZXhfaSI+PHNwYW4+aTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZlLmh0bWwjaW5kZXhfbiI+PHNwYW4+bjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3MC5odG1sI2luZGV4X3AiPjxzcGFuPnA8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3Mi5odG1sI2luZGV4X3IiPjxzcGFuPnI8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3My5odG1sI2luZGV4X3MiPjxzcGFuPnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3NS5odG1sI2luZGV4X3UiPjxzcGFuPnU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3Ni5odG1sI2luZGV4X3YiPjxzcGFuPnY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLSZuYnNwOwotCi08aDM+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImluZGV4X3AiPi0gcCAtPC9hPjwvaDM+PHVsPgotPGxpPlBhcmVudCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYjY0MzA0MzEzMmZmZDc5NGY4NjAyNjg1ZDM0YTk4MmUiPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08bGk+UGFyc2UoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExN2ViYWJlMzY5MjZlZjM5OGU3OGRlYzBkMGFkMDM3OCI+VGlYbWxEb2N1bWVudDwvYT4KLTwvbGk+Ci08bGk+UHJldmlvdXMoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNmViYmZlMzMzZmU3NmNkODM0YmQ2Y2JjY2EzMTMwY2YiPlRpWG1sQXR0cmlidXRlPC9hPgotPC9saT4KLTxsaT5QcmV2aW91c1NpYmxpbmcoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWMyY2Q4OTI3Njg3MjYyNzBlNTExYjJhYjMyZGU0ZDEwIj5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPGxpPlByaW50KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FmYmY1MjczNmU3MGZjOTFlYzlkNzYwNzIxZDZmNGZkMiI+VGlYbWxFbGVtZW50PC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhY2MwNDk1NmMxZDVjNGMzMWZlNzRmN2E3NTI4ZDEwOWEiPlRpWG1sQXR0cmlidXRlPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTBkZTU2YjNmMmVmMTRjNjUwOTFhM2I5MTY0MzdiNTEyIj5UaVhtbEJhc2U8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhMGNhZmJmNmYyMzZjN2YwMmQxMmIyYmZmYzJiNzk3NmIiPlRpWG1sVGV4dDwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhZjA4Mzg5ZWM3MGVlOWIyZGU3ZjgwMGUyMDZhMTg1MTAiPlRpWG1sRG9jdW1lbnQ8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCNhMzFiYTA4OWE0MGZiNWExODY5NzUwZmNlMDliMGJhY2IiPlRpWG1sVW5rbm93bjwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhODcwMWZkYTFmYTMxYjI1YWJiYzljMGRmNDJkYTEwZTgiPlRpWG1sRG9jdW1lbnQ8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhNmIzMTY1MjdhYWE4ZGEwMzcwY2Q2OGMyMmE1YTBmNWYiPlRpWG1sQ29tbWVudDwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhYmY2MzAzZGI0YmQwNWI1YmU1NTQwMzY4MTdmZjFjYjQiPlRpWG1sRGVjbGFyYXRpb248L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfZnVuY18weDcxLmh0bWwgYi9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NzEuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGQyMzZkMi4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NzEuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDk0ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiBDbGFzcyBNZW1iZXJzIC0gRnVuY3Rpb25zPC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj48c3Bhbj5GdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3ZhcnMuaHRtbCI+PHNwYW4+VmFyaWFibGVzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPjxzcGFuPkVudW1lcmF0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjMuaHRtbCNpbmRleF9jIj48c3Bhbj5jPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjQuaHRtbCNpbmRleF9kIj48c3Bhbj5kPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjUuaHRtbCNpbmRleF9lIj48c3Bhbj5lPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjYuaHRtbCNpbmRleF9mIj48c3Bhbj5mPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjcuaHRtbCNpbmRleF9nIj48c3Bhbj5nPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NmMuaHRtbCNpbmRleF9sIj48c3Bhbj5sPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NmUuaHRtbCNpbmRleF9uIj48c3Bhbj5uPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzAuaHRtbCNpbmRleF9wIj48c3Bhbj5wPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcxLmh0bWwjaW5kZXhfcSI+PHNwYW4+cTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcyLmh0bWwjaW5kZXhfciI+PHNwYW4+cjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc0Lmh0bWwjaW5kZXhfdCI+PHNwYW4+dDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotJm5ic3A7Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfcSI+LSBxIC08L2E+PC9oMz48dWw+Ci08bGk+UXVlcnlCb29sQXR0cmlidXRlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FmNGExZDNmODhjMjhlYjBmMzExNWRjMzllYmQ4M2ZmZiI+VGlYbWxFbGVtZW50PC9hPgotPC9saT4KLTxsaT5RdWVyeURvdWJsZUF0dHJpYnV0ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhODk4ZDc3MzBlY2MzNDFmMGJmZmM3YTlkYWRiZjFjZTciPlRpWG1sRWxlbWVudDwvYT4KLTwvbGk+Ci08bGk+UXVlcnlEb3VibGVWYWx1ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FjODdiMmE4NDg5OTA2YTVkN2FhMjg3NWYyMGJlMzUxMyI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci08L2xpPgotPGxpPlF1ZXJ5RmxvYXRBdHRyaWJ1dGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWEwNGQzYWYxMTYwMWVmNWE1Zjg4Mjk1MjAzYTg0M2JlIj5UaVhtbEVsZW1lbnQ8L2E+Ci08L2xpPgotPGxpPlF1ZXJ5SW50QXR0cmlidXRlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlYTBiZmU0NzEzODBmMjgxYzU5NDU3NzBkZGJmNTJiOSI+VGlYbWxFbGVtZW50PC9hPgotPC9saT4KLTxsaT5RdWVyeUludFZhbHVlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWQ2YzkzMDg4ZWUyMWFmNDFhMTA3OTMxMjIzMzM5MzQ0Ij5UaVhtbEF0dHJpYnV0ZTwvYT4KLTwvbGk+Ci08bGk+UXVlcnlTdHJpbmdBdHRyaWJ1dGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTE0MzIxYWMzNjBlZmU5MDZlZDQ0OWQ5ZGIzZmQ5OTYxIj5UaVhtbEVsZW1lbnQ8L2E+Ci08L2xpPgotPGxpPlF1ZXJ5VW5zaWduZWRBdHRyaWJ1dGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWU0OGRmNjQ0Zjg5MGFiODZmYTE5ODM5YWM0MDFmMDBkIj5UaVhtbEVsZW1lbnQ8L2E+Ci08L2xpPgotPGxpPlF1ZXJ5VmFsdWVBdHRyaWJ1dGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWUzYjlhMDNiMGE1NjY2M2E0MDgwMWM3MjU2NjgzNTc2Ij5UaVhtbEVsZW1lbnQ8L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfZnVuY18weDcyLmh0bWwgYi9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NzIuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTUwMGQxZS4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NzIuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDgyICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiBDbGFzcyBNZW1iZXJzIC0gRnVuY3Rpb25zPC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJwYWdlcy5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7UGFnZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJoaWVyYXJjaHkuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO01lbWJlcnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+QWxsPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj48c3Bhbj5GdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3ZhcnMuaHRtbCI+PHNwYW4+VmFyaWFibGVzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPjxzcGFuPkVudW1lcmF0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfcmVsYS5odG1sIj48c3Bhbj5SZWxhdGVkJm5ic3A7RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCNpbmRleF9hIj48c3Bhbj5hPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjMuaHRtbCNpbmRleF9jIj48c3Bhbj5jPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjQuaHRtbCNpbmRleF9kIj48c3Bhbj5kPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjUuaHRtbCNpbmRleF9lIj48c3Bhbj5lPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjYuaHRtbCNpbmRleF9mIj48c3Bhbj5mPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjcuaHRtbCNpbmRleF9nIj48c3Bhbj5nPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NjkuaHRtbCNpbmRleF9pIj48c3Bhbj5pPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NmMuaHRtbCNpbmRleF9sIj48c3Bhbj5sPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NmUuaHRtbCNpbmRleF9uIj48c3Bhbj5uPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzAuaHRtbCNpbmRleF9wIj48c3Bhbj5wPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzEuaHRtbCNpbmRleF9xIj48c3Bhbj5xPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcyLmh0bWwjaW5kZXhfciI+PHNwYW4+cjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDczLmh0bWwjaW5kZXhfcyI+PHNwYW4+czwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc0Lmh0bWwjaW5kZXhfdCI+PHNwYW4+dDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc1Lmh0bWwjaW5kZXhfdSI+PHNwYW4+dTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDc2Lmh0bWwjaW5kZXhfdiI+PHNwYW4+djwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotJm5ic3A7Ci0KLTxoMz48YSBjbGFzcz0iYW5jaG9yIiBpZD0iaW5kZXhfciI+LSByIC08L2E+PC9oMz48dWw+Ci08bGk+UmVtb3ZlQXR0cmlidXRlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E1Njk3OTc2N2RlY2E3OTQzNzZiMWRmYTY5YTUyNWIyYSI+VGlYbWxFbGVtZW50PC9hPgotPC9saT4KLTxsaT5SZW1vdmVDaGlsZCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZTE5ZDg1MTBlZmM5MDU5NjU1MmY0ZmVlYWM5YThmYmYiPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08bGk+UmVwbGFjZUNoaWxkKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EwYzQ5ZTczOWExN2I5OTM4MDUwYzIyY2Q4OTYxN2ZiZCI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTxsaT5Sb290RWxlbWVudCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWQwOWQxNzkyN2Y5MDhmNDBlZmI0MDZhZjJmYjg3M2JlIj5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTxsaT5Sb3coKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTAyNGJjZWIwNzAxODhkZjkyYzJhOGQ4ODUyZGQwODUzIj5UaVhtbEJhc2U8L2E+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Ci08YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgotPC9ib2R5PgotPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9mdW5jdGlvbnNfZnVuY18weDczLmh0bWwgYi9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NzMuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTQwNjRmYS4uMDAwMDAwMAotLS0gYS9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NzMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDEyMCArMCwwIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Ci08dGl0bGU+VGlueVhtbDogQ2xhc3MgTWVtYmVycyAtIEZ1bmN0aW9uczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkFsbDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmMuaHRtbCI+PHNwYW4+RnVuY3Rpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPjxzcGFuPlZhcmlhYmxlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj48c3Bhbj5FbnVtZXJhdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwjaW5kZXhfYSI+PHNwYW4+YTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDYzLmh0bWwjaW5kZXhfYyI+PHNwYW4+Yzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY0Lmh0bWwjaW5kZXhfZCI+PHNwYW4+ZDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY1Lmh0bWwjaW5kZXhfZSI+PHNwYW4+ZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY2Lmh0bWwjaW5kZXhfZiI+PHNwYW4+Zjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY3Lmh0bWwjaW5kZXhfZyI+PHNwYW4+Zzwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDY5Lmh0bWwjaW5kZXhfaSI+PHNwYW4+aTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZjLmh0bWwjaW5kZXhfbCI+PHNwYW4+bDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDZlLmh0bWwjaW5kZXhfbiI+PHNwYW4+bjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcwLmh0bWwjaW5kZXhfcCI+PHNwYW4+cDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcxLmh0bWwjaW5kZXhfcSI+PHNwYW4+cTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuY18weDcyLmh0bWwjaW5kZXhfciI+PHNwYW4+cjwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3My5odG1sI2luZGV4X3MiPjxzcGFuPnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3NS5odG1sI2luZGV4X3UiPjxzcGFuPnU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3Ni5odG1sI2luZGV4X3YiPjxzcGFuPnY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KLSZuYnNwOwotCi08aDM+PGEgY2xhc3M9ImFuY2hvciIgaWQ9ImluZGV4X3MiPi0gcyAtPC9hPjwvaDM+PHVsPgotPGxpPlNhdmVGaWxlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMjFjMGFlYjBkMGE3MjAxNjlhZDRhYzg5NTIzZWJlOTMiPlRpWG1sRG9jdW1lbnQ8L2E+Ci08L2xpPgotPGxpPlNldEF0dHJpYnV0ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhY2U2ZjRiZTc1ZTM3MzcyNmQ0Nzc0MDczZDY2NmQxYTciPlRpWG1sRWxlbWVudDwvYT4KLTwvbGk+Ci08bGk+U2V0Q0RBVEEoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYWNiMTdmZjdjNWQwOWIyYzgzOTM5MzQ0NWEzZGU1ZWE5Ij5UaVhtbFRleHQ8L2E+Ci08L2xpPgotPGxpPlNldENvbmRlbnNlV2hpdGVTcGFjZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGY3OTllYzY0NWJmYjhkOGE5NjllODM0NzhmMzc5YzEiPlRpWG1sQmFzZTwvYT4KLTwvbGk+Ci08bGk+U2V0RG91YmxlQXR0cmlidXRlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EwZDFkZDk3NWQ3NTQ5Njc3ODE3N2UzNWFiZmUwZWMwYiI+VGlYbWxFbGVtZW50PC9hPgotPC9saT4KLTxsaT5TZXREb3VibGVWYWx1ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EwMzE2ZGEzMTM3MzQ5NmM0MzY4YWQ1NDliZjcxMTM5NCI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci08L2xpPgotPGxpPlNldEluZGVudCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhMjEzMzc3YTQwNzBjN2U2MjViYWU1OTcxNmIwODllNWUiPlRpWG1sUHJpbnRlcjwvYT4KLTwvbGk+Ci08bGk+U2V0SW50VmFsdWUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhN2UwNjVkZjY0MDExNmE2MmVhNGY0YjdkYTU0NDljYzgiPlRpWG1sQXR0cmlidXRlPC9hPgotPC9saT4KLTxsaT5TZXRMaW5lQnJlYWsoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTRiZTFlMzdlNjllMzg1OGM1OTYzNWFhOTQ3MTc0ZmU2Ij5UaVhtbFByaW50ZXI8L2E+Ci08L2xpPgotPGxpPlNldE5hbWUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhYjdmYTNkMjFmZjhkN2M1NzY0Y2Y5YWYxNWI2NjdhOTkiPlRpWG1sQXR0cmlidXRlPC9hPgotPC9saT4KLTxsaT5TZXRTdHJlYW1QcmludGluZygpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhYjIzYTkwNjI5ZTM3NGNiMWNhZGNhMDkwNDY4YmJkMTkiPlRpWG1sUHJpbnRlcjwvYT4KLTwvbGk+Ci08bGk+U2V0VGFiU2l6ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTUxZGFjNTYzMTZmODliMzViZGI3ZDBkNDMzYmE5ODhlIj5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTxsaT5TZXRVc2VyRGF0YSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYzZiM2UwZjc5MDkzMGQ0OTcwZWMzMDc2NGU5MzdiNWQiPlRpWG1sQmFzZTwvYT4KLTwvbGk+Ci08bGk+U2V0VmFsdWUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMmRhZTQ0MTc4ZjY2OGIzY2I0ODEwMWJlNGYyMjM2YTAiPlRpWG1sQXR0cmlidXRlPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI1OThkNWY0NDgwNDJjMWFiYmVhZTQ1MDNkZDQ1ZmYyIj5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FiNDNmNjdhMGNjM2VjMWQ4MGU2MjYwNjUwMGYwOTI1ZiI+VGlYbWxBdHRyaWJ1dGU8L2E+Ci08L2xpPgotPGxpPlNpemUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYWQwMTM3NWFlOTE5OWJkMmY0ODI1MmVhZGRjZTMwMzlkIj5UaVhtbFByaW50ZXI8L2E+Ci08L2xpPgotPGxpPlN0YW5kYWxvbmUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E5ZmYwNmFmYzAzM2Q3ZWY3MzBlYzdjNjgyNWI5N2FkOSI+VGlYbWxEZWNsYXJhdGlvbjwvYT4KLTwvbGk+Ci08bGk+U3RyKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2EzYmQ0ZGFmNDQzMDliNDFmNTgxM2E4MzNjYWEwZDFjOSI+VGlYbWxQcmludGVyPC9hPgotPC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvZnVuY3Rpb25zX2Z1bmNfMHg3NC5odG1sIGIvZG9jcy9mdW5jdGlvbnNfZnVuY18weDc0Lmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNkOTM0NjMuLjAwMDAwMDAKLS0tIGEvZG9jcy9mdW5jdGlvbnNfZnVuY18weDc0Lmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMjYgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnMgLSBGdW5jdGlvbnM8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5BbGw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+PHNwYW4+RW51bWVyYXRpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19yZWxhLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtGdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2My5odG1sI2luZGV4X2MiPjxzcGFuPmM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NC5odG1sI2luZGV4X2QiPjxzcGFuPmQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NS5odG1sI2luZGV4X2UiPjxzcGFuPmU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ni5odG1sI2luZGV4X2YiPjxzcGFuPmY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2OS5odG1sI2luZGV4X2kiPjxzcGFuPmk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Yy5odG1sI2luZGV4X2wiPjxzcGFuPmw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3MC5odG1sI2luZGV4X3AiPjxzcGFuPnA8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3Mi5odG1sI2luZGV4X3IiPjxzcGFuPnI8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3My5odG1sI2luZGV4X3MiPjxzcGFuPnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzQuaHRtbCNpbmRleF90Ij48c3Bhbj50PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzUuaHRtbCNpbmRleF91Ij48c3Bhbj51PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzYuaHRtbCNpbmRleF92Ij48c3Bhbj52PC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci0mbmJzcDsKLQotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF90Ij4tIHQgLTwvYT48L2gzPjx1bD4KLTxsaT5UZXh0KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTlmYzczOWM4YTE4ZDE2MDAwNmY4MjU3MmZjMTQzZDEzIj5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+VGlYbWxBdHRyaWJ1dGUoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhOWNmYTNjODE3OTg3M2ZkNDg1ZDgzMDAzYjExNGY4ZTEiPlRpWG1sQXR0cmlidXRlPC9hPgotPC9saT4KLTxsaT5UaVhtbENvbW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYWFhMzI1MjAzMWQzZThiZDNhMmJmNTFhMWM2MTIwMWI3Ij5UaVhtbENvbW1lbnQ8L2E+Ci08L2xpPgotPGxpPlRpWG1sRGVjbGFyYXRpb24oKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2FjZDU1NTYwMDdjM2M3MjIwOTQ2NTA4MWRlMzlkOTgzNiI+VGlYbWxEZWNsYXJhdGlvbjwvYT4KLTwvbGk+Ci08bGk+VGlYbWxEb2N1bWVudCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTlmNWU4NDMzNTcwOGZkZTk4NDAwMjMwZjlmMTI2NTljIj5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTxsaT5UaVhtbEVsZW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTAxYmMzYWIzNzJkMzVkYTA4ZWZjYmJlNjVhZDkwYzYwIj5UaVhtbEVsZW1lbnQ8L2E+Ci08L2xpPgotPGxpPlRpWG1sSGFuZGxlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTIzNmQ3ODU1ZTFlNTZjY2M3Yjk4MDYzMGM0OGM3ZmQ3Ij5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+VGlYbWxUZXh0KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2FmNjU5ZTc3YzZiODdkNjg0ODI3ZjM1YThmNDg5NTk2MCI+VGlYbWxUZXh0PC9hPgotPC9saT4KLTxsaT5Ub0NvbW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWEwYTUwODZmOWVhZWU5MTBiYmZkYzdmOTc1ZTI2NTc0Ij5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhMDBmYjQyMTVjMjBhMjM5OWVhMDVhYzliOWU3ZTY4YTAiPlRpWG1sQ29tbWVudDwvYT4KLTwvbGk+Ci08bGk+VG9EZWNsYXJhdGlvbigpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhOWY0M2U2OTg0ZmM3ZDRhZmQ2ZWIzMjcxNGM2YjdiNzIiPlRpWG1sTm9kZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMWUwODVkM2ZlZmQxZGJmNWNjZGJmZjcyOTkzMWE5NjciPlRpWG1sRGVjbGFyYXRpb248L2E+Ci08L2xpPgotPGxpPlRvRG9jdW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYThhNGNkYTRiMTVjMjlmNjRjZmY0MTkzMDlhZWJlZDA4Ij5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTFkYzk3N2JkZTNlNGZlODVhOGViOWQ4OGEzNWVmNWE0Ij5UaVhtbERvY3VtZW50PC9hPgotPC9saT4KLTxsaT5Ub0VsZW1lbnQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcyYWJlZDk2ZGM5NjY3YWI5ZTBhMmEyNzUzMDFiYjFjIj5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhYzViOGQwZTI1ZmEyM2ZkOWFjYmI2ZDE0NjA4MjkwMWMiPlRpWG1sRWxlbWVudDwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWJjNmU3ZWQzODNhNWZlMWU1MmIwYzAwMDRiNDU3YjllIj5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+VG9Ob2RlKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWY2NzhlNTA4OGU4M2JlNjdiYWY3NmY2OTk3NTZmMmMzIj5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+VG9UZXh0KCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2FlN2MzYThmZDNlNGRiZjZjMGM0MzYzYTk0M2Q3MmY1YiI+VGlYbWxUZXh0PC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhNGFjNTNhNjUyMjk2MjAzYTViNWUxMzg1NGQ5MjM1ODYiPlRpWG1sSGFuZGxlPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTNkZGZiY2FjNzhmYmVhMDQxZmFkNTdlNWM2ZDYwYTAzIj5UaVhtbE5vZGU8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhODk1YmYzNGZmYWQxN2Y3NDM5YWIyYTUyYjk2NTE2NDgiPlRpWG1sVGV4dDwvYT4KLTwvbGk+Ci08bGk+VG9Vbmtub3duKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmZDcyMDVjZjMxZDdhMzc2OTI5ZjhhMzY5MzA2MjdhMiI+VGlYbWxOb2RlPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYWIwMzEzZTVmZTc3OTg3ZDc0NmFjMWE5N2EyNTQ0MTlkIj5UaVhtbFVua25vd248L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDZkZTVhZjg1MjY2OGM3ZTRhZjBkMDljMjA1ZjBiMGQiPlRpWG1sTm9kZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTEzODFjMTc1MDdhMTMwNzY3YjFlMjNhZmM5M2IzNjc0Ij5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08bGk+VHlwZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTdiOTlkNWM5N2Q2N2E0MmI5NzUyZjUyMTBhMWJhNWUiPlRpWG1sTm9kZTwvYT4KLTwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NzUuaHRtbCBiL2RvY3MvZnVuY3Rpb25zX2Z1bmNfMHg3NS5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNzNhZDFiLi4wMDAwMDAwCi0tLSBhL2RvY3MvZnVuY3Rpb25zX2Z1bmNfMHg3NS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsNzAgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnMgLSBGdW5jdGlvbnM8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5BbGw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+PHNwYW4+RW51bWVyYXRpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19yZWxhLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtGdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2My5odG1sI2luZGV4X2MiPjxzcGFuPmM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NC5odG1sI2luZGV4X2QiPjxzcGFuPmQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NS5odG1sI2luZGV4X2UiPjxzcGFuPmU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ni5odG1sI2luZGV4X2YiPjxzcGFuPmY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2OS5odG1sI2luZGV4X2kiPjxzcGFuPmk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Yy5odG1sI2luZGV4X2wiPjxzcGFuPmw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3MC5odG1sI2luZGV4X3AiPjxzcGFuPnA8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3Mi5odG1sI2luZGV4X3IiPjxzcGFuPnI8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3My5odG1sI2luZGV4X3MiPjxzcGFuPnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzUuaHRtbCNpbmRleF91Ij48c3Bhbj51PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzYuaHRtbCNpbmRleF92Ij48c3Bhbj52PC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci0mbmJzcDsKLQotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF91Ij4tIHUgLTwvYT48L2gzPjx1bD4KLTxsaT5Vbmtub3duKCkKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTQ5Njc1Yjc0MzU3YmEyYWFlMTI0NjU3YTlhMWVmNDY1Ij5UaVhtbEhhbmRsZTwvYT4KLTwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2Z1bmN0aW9uc19mdW5jXzB4NzYuaHRtbCBiL2RvY3MvZnVuY3Rpb25zX2Z1bmNfMHg3Ni5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA4NGNjMjc0Li4wMDAwMDAwCi0tLSBhL2RvY3MvZnVuY3Rpb25zX2Z1bmNfMHg3Ni5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsOTYgKzAsMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgotPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnMgLSBGdW5jdGlvbnM8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPjxzcGFuPkNsYXNzZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtMaXN0PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7TWVtYmVyczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj48c3Bhbj5BbGw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPjxzcGFuPkZ1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj48c3Bhbj5WYXJpYWJsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+PHNwYW4+RW51bWVyYXRpb25zPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19yZWxhLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtGdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sI2luZGV4X2EiPjxzcGFuPmE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2My5odG1sI2luZGV4X2MiPjxzcGFuPmM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NC5odG1sI2luZGV4X2QiPjxzcGFuPmQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2NS5odG1sI2luZGV4X2UiPjxzcGFuPmU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ni5odG1sI2luZGV4X2YiPjxzcGFuPmY8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Ny5odG1sI2luZGV4X2ciPjxzcGFuPmc8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2OS5odG1sI2luZGV4X2kiPjxzcGFuPmk8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2Yy5odG1sI2luZGV4X2wiPjxzcGFuPmw8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg2ZS5odG1sI2luZGV4X24iPjxzcGFuPm48L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3MC5odG1sI2luZGV4X3AiPjxzcGFuPnA8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3MS5odG1sI2luZGV4X3EiPjxzcGFuPnE8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3Mi5odG1sI2luZGV4X3IiPjxzcGFuPnI8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3My5odG1sI2luZGV4X3MiPjxzcGFuPnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3NC5odG1sI2luZGV4X3QiPjxzcGFuPnQ8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX2Z1bmNfMHg3NS5odG1sI2luZGV4X3UiPjxzcGFuPnU8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc19mdW5jXzB4NzYuaHRtbCNpbmRleF92Ij48c3Bhbj52PC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci0mbmJzcDsKLQotPGgzPjxhIGNsYXNzPSJhbmNob3IiIGlkPSJpbmRleF92Ij4tIHYgLTwvYT48L2gzPjx1bD4KLTxsaT5WYWx1ZSgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzc5NDNlYjkwZDEyYzI4OTJiMTMzN2E5ZjU5MThiNDEiPlRpWG1sTm9kZTwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTBmODc0NDkwZWFjOGNhMDBlZTAwNzA3NjVkMGU5N2UzIj5UaVhtbEF0dHJpYnV0ZTwvYT4KLTwvbGk+Ci08bGk+VmFsdWVTdHIoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhODc3MDVjM2NjZjllZTk0MTdiZWI0ZjdjYmFjZDRkMzMiPlRpWG1sQXR0cmlidXRlPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTZkOWU1MDU2MTlkMzliZjUwYmZkOTYwOWM5MTY5ZWE1Ij5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPGxpPlZlcnNpb24oKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2EwMmVlNTU3YjFhNDU0NWMzMjE5ZWQzNzdjMTAzZWM3NiI+VGlYbWxEZWNsYXJhdGlvbjwvYT4KLTwvbGk+Ci08bGk+VmlzaXQoKQotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYTUzYTYwZTdhNTI4NjI3YjMxYWYzMTYxOTcyY2M3ZmEyIj5UaVhtbFZpc2l0b3I8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhY2UxYjE0ZDMzZWVkZTI1NzVjMDc0M2UyMzUwZjZhMzgiPlRpWG1sUHJpbnRlcjwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2FmYWQ3MWM3MWNlNjQ3M2ZiOWI0YjY0Y2Q5MmRlNGExOSI+VGlYbWxWaXNpdG9yPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTgzYzEzZDZiOTgwMDY0YjMwZjk4OWY5YTM1NDk4OTc5Ij5UaVhtbFByaW50ZXI8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhMzk5YjhlYmNhNWNkMTQ2NjQ5NzRhMzJkMmNlMDI5ZTUiPlRpWG1sVmlzaXRvcjwvYT4KLTwvbGk+Ci08bGk+VmlzaXRFbnRlcigpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhMDdiYWVjYjUyZGQ3ZDg3MTZhZTJhNDhhZDA5NTZlZTAiPlRpWG1sVmlzaXRvcjwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2EwYzVlN2JmODYyMjgzODQxN2EwZDBiZmI4ZjQzMzg1NCI+VGlYbWxQcmludGVyPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYWY2YzYxNzhmZmE1MTdiYmRiYTk1ZDcwNDkwODc1ZmZmIj5UaVhtbFZpc2l0b3I8L2E+Ci08L2xpPgotPGxpPlZpc2l0RXhpdCgpCi06IDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhMTg1M2NmMmY2ZTYzYWQ0YjQyMzJiNDgzNWUwYWNhZjAiPlRpWG1sUHJpbnRlcjwvYT4KLSwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2FhMGFkZTRmMjcwODc0NDdlOTM5NzRlOTc1YzMyNDZhZCI+VGlYbWxWaXNpdG9yPC9hPgotLCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTY2YjMzZWRkNzZjNTM4YjQ2MmY3ODliNzk3YTRmZGYyIj5UaVhtbFByaW50ZXI8L2E+Ci0sIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhZWMyYjFmODExNjIyNmQ1MmYzYTFiOTVkYWZkM2EzMmMiPlRpWG1sVmlzaXRvcjwvYT4KLTwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL2Z1bmN0aW9uc19yZWxhLmh0bWwgYi9kb2NzL2Z1bmN0aW9uc19yZWxhLmh0bWwKaW5kZXggYWE5MDlkOC4uZDgzODE2ZiAxMDA2NDQKLS0tIGEvZG9jcy9mdW5jdGlvbnNfcmVsYS5odG1sCisrKyBiL2RvY3MvZnVuY3Rpb25zX3JlbGEuaHRtbApAQCAtMSw1MSArMSwxOSBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PWlzby04ODU5LTEiPgogPHRpdGxlPlRpbnlYbWw6IENsYXNzIE1lbWJlcnMgLSBSZWxhdGVkIEZ1bmN0aW9uczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkFsbDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj48c3Bhbj5GdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3ZhcnMuaHRtbCI+PHNwYW4+VmFyaWFibGVzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZ1bmN0aW9uc19lbnVtLmh0bWwiPjxzcGFuPkVudW1lcmF0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotJm5ic3A7PHVsPgorPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleEhMIiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+Q2xhc3MmbmJzcDtNZW1iZXJzPC9hPjwvZGl2PgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+QWxsPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPkZ1bmN0aW9uczwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnNfdmFycy5odG1sIj5WYXJpYWJsZXM8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zX2VudW0uaHRtbCI+RW51bWVyYXRpb25zPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXhITCIgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvYT48L2Rpdj4KKworPHA+Cis8dWw+CiA8bGk+b3BlcmF0b3ImbHQ7Jmx0OwotOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTg2Y2Q0OWNmYjE3YTg0NGMwMDEwYjMxMzZhYzk2NmM3Ij5UaVhtbE5vZGU8L2E+Ci08L2xpPgotPGxpPm9wZXJhdG9yJmd0OyZndDsKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiNTdiZDQyNjU2M2M5MjY4NDRmNjVhNzg0MTJlMThiOSI+VGlYbWxOb2RlPC9hPgotPC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOworOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjQiPlRpWG1sTm9kZTwvYT48bGk+b3BlcmF0b3ImZ3Q7Jmd0OworOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjIiPlRpWG1sTm9kZTwvYT48L3VsPgorPGhyIHNpemU9IjEiPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFNhdCBPY3QgOCAxNDoxNTozMCAyMDA1IGZvciBUaW55WG1sIGJ5Jm5ic3A7CiA8YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgorPGltZyBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iIGFsaWduPSJtaWRkbGUiIGJvcmRlcj0iMCI+PC9hPiAxLjQuNCA8L3NtYWxsPjwvYWRkcmVzcz4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvZnVuY3Rpb25zX3ZhcnMuaHRtbCBiL2RvY3MvZnVuY3Rpb25zX3ZhcnMuaHRtbAppbmRleCAxODExYmM3Li42ZDNiMDM3IDEwMDY0NAotLS0gYS9kb2NzL2Z1bmN0aW9uc192YXJzLmh0bWwKKysrIGIvZG9jcy9mdW5jdGlvbnNfdmFycy5odG1sCkBAIC0xLDQ4ICsxLDE4IEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIj4KKzxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9aXNvLTg4NTktMSI+CiA8dGl0bGU+VGlueVhtbDogQ2xhc3MgTWVtYmVycyAtIFZhcmlhYmxlczwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPjxzcGFuPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPjxzcGFuPkFsbDwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZnVuYy5odG1sIj48c3Bhbj5GdW5jdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPjxzcGFuPlZhcmlhYmxlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj48c3Bhbj5FbnVtZXJhdGlvbnM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotJm5ic3A7PHVsPgorPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleEhMIiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+Q2xhc3MmbmJzcDtNZW1iZXJzPC9hPjwvZGl2PgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+QWxsPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9uc19mdW5jLmh0bWwiPkZ1bmN0aW9uczwvYT4gfCA8YSBjbGFzcz0icWluZGV4SEwiIGhyZWY9ImZ1bmN0aW9uc192YXJzLmh0bWwiPlZhcmlhYmxlczwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnNfZW51bS5odG1sIj5FbnVtZXJhdGlvbnM8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zX3JlbGEuaHRtbCI+UmVsYXRlZCZuYnNwO0Z1bmN0aW9uczwvYT48L2Rpdj4KKworPHA+Cis8dWw+CiA8bGk+dXNlckRhdGEKLTogPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiMjQyYzAxNTkwMTkxZjY0NDU2OWZhODlhMDgwZDk3YyI+VGlYbWxCYXNlPC9hPgotPC9saT4KLTwvdWw+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOworOiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjcDEiPlRpWG1sQmFzZTwvYT48L3VsPgorPGhyIHNpemU9IjEiPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFNhdCBPY3QgOCAxNDoxNTozMCAyMDA1IGZvciBUaW55WG1sIGJ5Jm5ic3A7CiA8YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgotPGltZyBjbGFzcz0iZm9vdGVyIiBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iLz48L2E+IDEuNi4yIDwvc21hbGw+PC9hZGRyZXNzPgorPGltZyBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iIGFsaWduPSJtaWRkbGUiIGJvcmRlcj0iMCI+PC9hPiAxLjQuNCA8L3NtYWxsPjwvYWRkcmVzcz4KIDwvYm9keT4KIDwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvaGllcmFyY2h5Lmh0bWwgYi9kb2NzL2hpZXJhcmNoeS5odG1sCmluZGV4IDM2N2JlZGQuLjQ0MDRjZjIgMTAwNjQ0Ci0tLSBhL2RvY3MvaGllcmFyY2h5Lmh0bWwKKysrIGIvZG9jcy9oaWVyYXJjaHkuaHRtbApAQCAtMSw1NCArMSwyOCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PWlzby04ODU5LTEiPgogPHRpdGxlPlRpbnlYbWw6IEhpZXJhcmNoaWNhbCBJbmRleDwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGk+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpIGNsYXNzPSJjdXJyZW50Ij48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0xpc3Q8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImhpZXJhcmNoeS5odG1sIj48c3Bhbj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmdW5jdGlvbnMuaHRtbCI+PHNwYW4+Q2xhc3MmbmJzcDtNZW1iZXJzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci08aDE+Q2xhc3MgSGllcmFyY2h5PC9oMT5UaGlzIGluaGVyaXRhbmNlIGxpc3QgaXMgc29ydGVkIHJvdWdobHksIGJ1dCBub3QgY29tcGxldGVseSwgYWxwaGFiZXRpY2FsbHk6PHVsPgotPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPjx1bD4KLTxsaT48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+PC9saT4KLTxsaT48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT48dWw+Ci08bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIj5UaVhtbENvbW1lbnQ8L2E+PC9saT4KLTxsaT48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPjwvbGk+Ci08bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT48L2xpPgotPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjwvbGk+Ci08bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+PC9saT4KLTxsaT48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiPlRpWG1sVW5rbm93bjwvYT48L2xpPgorPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleEhMIiBocmVmPSJoaWVyYXJjaHkuaHRtbCI+Q2xhc3MmbmJzcDtIaWVyYXJjaHk8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iYW5ub3RhdGVkLmh0bWwiPkNsYXNzJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmaWxlcy5odG1sIj5GaWxlJm5ic3A7TGlzdDwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJmdW5jdGlvbnMuaHRtbCI+Q2xhc3MmbmJzcDtNZW1iZXJzPC9hPjwvZGl2PgorPGgxPlRpbnlYbWwgQ2xhc3MgSGllcmFyY2h5PC9oMT5UaGlzIGluaGVyaXRhbmNlIGxpc3QgaXMgc29ydGVkIHJvdWdobHksIGJ1dCBub3QgY29tcGxldGVseSwgYWxwaGFiZXRpY2FsbHk6PHVsPgorPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPgorPHVsPgorPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT4KKzxsaT48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4KKzx1bD4KKzxsaT48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT4KKzxsaT48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPgorPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+Cis8bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+Cis8bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+Cis8bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+CiA8L3VsPgotPC9saT4KIDwvdWw+Ci08L2xpPgotPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT48L2xpPgotPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCI+VGlYbWxWaXNpdG9yPC9hPjx1bD4KLTxsaT48YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwiPlRpWG1sUHJpbnRlcjwvYT48L2xpPgorPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4KIDwvdWw+Ci08L2xpPgotPC91bD4KLTwvZGl2PgotPGhyIHNpemU9IjEiLz48YWRkcmVzcyBzdHlsZT0idGV4dC1hbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIGJ5Jm5ic3A7Cis8aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9pbmRleC5odG1sIGIvZG9jcy9pbmRleC5odG1sCmluZGV4IGQ4OWIyMWEuLjk1ODE4YzYgMTAwNjQ0Ci0tLSBhL2RvY3MvaW5kZXguaHRtbAorKysgYi9kb2NzL2luZGV4Lmh0bWwKQEAgLTEsMTYyICsxLDEyMCBAQAotPCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPgotPGh0bWwgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwiPgotPGhlYWQ+Ci08bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQveGh0bWw7Y2hhcnNldD1VVEYtOCIvPgorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsLy9FTiI+Cis8aHRtbD48aGVhZD48bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDtjaGFyc2V0PWlzby04ODU5LTEiPgogPHRpdGxlPlRpbnlYbWw6IE1haW4gUGFnZTwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTwvZGl2PgotPGRpdiBjbGFzcz0iY29udGVudHMiPgotPGgxPlRpbnlYbWwgRG9jdW1lbnRhdGlvbjwvaDE+PGgzIGNsYXNzPSJ2ZXJzaW9uIj4yLjYuMiA8L2gzPjxoMT5UaW55WE1MIDwvaDE+Ci08cD5UaW55WE1MIGlzIGEgc2ltcGxlLCBzbWFsbCwgQysrIFhNTCBwYXJzZXIgdGhhdCBjYW4gYmUgZWFzaWx5IGludGVncmF0ZWQgaW50byBvdGhlciBwcm9ncmFtcy48L3A+Cis8bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyI+Cis8L2hlYWQ+PGJvZHk+Cis8IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNC40IC0tPgorPGRpdiBjbGFzcz0icWluZGV4Ij48YSBjbGFzcz0icWluZGV4SEwiIGhyZWY9ImluZGV4Lmh0bWwiPk1haW4mbmJzcDtQYWdlPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImhpZXJhcmNoeS5odG1sIj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+Q2xhc3MmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZpbGVzLmh0bWwiPkZpbGUmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj5DbGFzcyZuYnNwO01lbWJlcnM8L2E+PC9kaXY+Cis8aDE+VGlueVhtbCBEb2N1bWVudGF0aW9uPC9oMT4KKzxwPgorPGgzIGFsaWduPSJjZW50ZXIiPjIuNC4wIDwvaDM+PGgxPlRpbnlYbWwgPC9oMT4KKzxwPgorVGlueVhtbCBpcyBhIHNpbXBsZSwgc21hbGwsIEMrKyBYTUwgcGFyc2VyIHRoYXQgY2FuIGJlIGVhc2lseSBpbnRlZ3JhdGluZyBpbnRvIG90aGVyIHByb2dyYW1zLjxwPgogPGgyPldoYXQgaXQgZG9lcy4gPC9oMj4KLTxwPkluIGJyaWVmLCBUaW55WE1MIHBhcnNlcyBhbiBYTUwgZG9jdW1lbnQsIGFuZCBidWlsZHMgZnJvbSB0aGF0IGEgRG9jdW1lbnQgT2JqZWN0IE1vZGVsIChET00pIHRoYXQgY2FuIGJlIHJlYWQsIG1vZGlmaWVkLCBhbmQgc2F2ZWQuPC9wPgotPHA+WE1MIHN0YW5kcyBmb3IgImVYdGVuc2libGUgTWFya3VwIExhbmd1YWdlLiIgSXQgYWxsb3dzIHlvdSB0byBjcmVhdGUgeW91ciBvd24gZG9jdW1lbnQgbWFya3Vwcy4gV2hlcmUgSFRNTCBkb2VzIGEgdmVyeSBnb29kIGpvYiBvZiBtYXJraW5nIGRvY3VtZW50cyBmb3IgYnJvd3NlcnMsIFhNTCBhbGxvd3MgeW91IHRvIGRlZmluZSBhbnkga2luZCBvZiBkb2N1bWVudCBtYXJrdXAsIGZvciBleGFtcGxlIGEgZG9jdW1lbnQgdGhhdCBkZXNjcmliZXMgYSAidG8gZG8iIGxpc3QgZm9yIGFuIG9yZ2FuaXplciBhcHBsaWNhdGlvbi4gWE1MIGlzIGEgdmVyeSBzdHJ1Y3R1cmVkIGFuZCBjb252ZW5pZW50IGZvcm1hdC4gQWxsIHRob3NlIHJhbmRvbSBmaWxlIGZvcm1hdHMgY3JlYXRlZCB0byBzdG9yZSBhcHBsaWNhdGlvbiBkYXRhIGNhbiBhbGwgYmUgcmVwbGFjZWQgd2l0aCBYTUwuIE9uZSBwYXJzZXIgZm9yIGV2ZXJ5dGhpbmcuPC9wPgotPHA+VGhlIGJlc3QgcGxhY2UgZm9yIHRoZSBjb21wbGV0ZSwgY29ycmVjdCwgYW5kIHF1aXRlIGZyYW5rbHkgaGFyZCB0byByZWFkIHNwZWMgaXMgYXQgPGEgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMteG1sLTIwMDQwMjA0LyI+aHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMteG1sLTIwMDQwMjA0LzwvYT4uIEFuIGludHJvIHRvIFhNTCAodGhhdCBJIHJlYWxseSBsaWtlKSBjYW4gYmUgZm91bmQgYXQgPGEgaHJlZj0iaHR0cDovL3NrZXcub3JnL3htbC90dXRvcmlhbC8iPmh0dHA6Ly9za2V3Lm9yZy94bWwvdHV0b3JpYWw8L2E+LjwvcD4KLTxwPlRoZXJlIGFyZSBkaWZmZXJlbnQgd2F5cyB0byBhY2Nlc3MgYW5kIGludGVyYWN0IHdpdGggWE1MIGRhdGEuIFRpbnlYTUwgdXNlcyBhIERvY3VtZW50IE9iamVjdCBNb2RlbCAoRE9NKSwgbWVhbmluZyB0aGUgWE1MIGRhdGEgaXMgcGFyc2VkIGludG8gYSBDKysgb2JqZWN0cyB0aGF0IGNhbiBiZSBicm93c2VkIGFuZCBtYW5pcHVsYXRlZCwgYW5kIHRoZW4gd3JpdHRlbiB0byBkaXNrIG9yIGFub3RoZXIgb3V0cHV0IHN0cmVhbS4gWW91IGNhbiBhbHNvIGNvbnN0cnVjdCBhbiBYTUwgZG9jdW1lbnQgZnJvbSBzY3JhdGNoIHdpdGggQysrIG9iamVjdHMgYW5kIHdyaXRlIHRoaXMgdG8gZGlzayBvciBhbm90aGVyIG91dHB1dCBzdHJlYW0uPC9wPgotPHA+VGlueVhNTCBpcyBkZXNpZ25lZCB0byBiZSBlYXN5IGFuZCBmYXN0IHRvIGxlYXJuLiBJdCBpcyB0d28gaGVhZGVycyBhbmQgZm91ciBjcHAgZmlsZXMuIFNpbXBseSBhZGQgdGhlc2UgdG8geW91ciBwcm9qZWN0IGFuZCBvZmYgeW91IGdvLiBUaGVyZSBpcyBhbiBleGFtcGxlIGZpbGUgLSB4bWx0ZXN0LmNwcCAtIHRvIGdldCB5b3Ugc3RhcnRlZC48L3A+Ci08cD5UaW55WE1MIGlzIHJlbGVhc2VkIHVuZGVyIHRoZSBaTGliIGxpY2Vuc2UsIHNvIHlvdSBjYW4gdXNlIGl0IGluIG9wZW4gc291cmNlIG9yIGNvbW1lcmNpYWwgY29kZS4gVGhlIGRldGFpbHMgb2YgdGhlIGxpY2Vuc2UgYXJlIGF0IHRoZSB0b3Agb2YgZXZlcnkgc291cmNlIGZpbGUuPC9wPgotPHA+VGlueVhNTCBhdHRlbXB0cyB0byBiZSBhIGZsZXhpYmxlIHBhcnNlciwgYnV0IHdpdGggdHJ1bHkgY29ycmVjdCBhbmQgY29tcGxpYW50IFhNTCBvdXRwdXQuIFRpbnlYTUwgc2hvdWxkIGNvbXBpbGUgb24gYW55IHJlYXNvbmFibHkgQysrIGNvbXBsaWFudCBzeXN0ZW0uIEl0IGRvZXMgbm90IHJlbHkgb24gZXhjZXB0aW9ucyBvciBSVFRJLiBJdCBjYW4gYmUgY29tcGlsZWQgd2l0aCBvciB3aXRob3V0IFNUTCBzdXBwb3J0LiBUaW55WE1MIGZ1bGx5IHN1cHBvcnRzIHRoZSBVVEYtOCBlbmNvZGluZywgYW5kIHRoZSBmaXJzdCA2NGsgY2hhcmFjdGVyIGVudGl0aWVzLjwvcD4KKzxwPgorSW4gYnJpZWYsIFRpbnlYbWwgcGFyc2VzIGFuIFhNTCBkb2N1bWVudCwgYW5kIGJ1aWxkcyBmcm9tIHRoYXQgYSBEb2N1bWVudCBPYmplY3QgTW9kZWwgKERPTSkgdGhhdCBjYW4gYmUgcmVhZCwgbW9kaWZpZWQsIGFuZCBzYXZlZC48cD4KK1hNTCBzdGFuZHMgZm9yICJlWHRlbnNpYmxlIE1hcmt1cCBMYW5ndWFnZS4iIEl0IGFsbG93cyB5b3UgdG8gY3JlYXRlIHlvdXIgb3duIGRvY3VtZW50IG1hcmt1cHMuIFdoZXJlIEhUTUwgZG9lcyBhIHZlcnkgZ29vZCBqb2Igb2YgbWFya2luZyBkb2N1bWVudHMgZm9yIGJyb3dzZXJzLCBYTUwgYWxsb3dzIHlvdSB0byBkZWZpbmUgYW55IGtpbmQgb2YgZG9jdW1lbnQgbWFya3VwLCBmb3IgZXhhbXBsZSBhIGRvY3VtZW50IHRoYXQgZGVzY3JpYmVzIGEgInRvIGRvIiBsaXN0IGZvciBhbiBvcmdhbml6ZXIgYXBwbGljYXRpb24uIFhNTCBpcyBhIHZlcnkgc3RydWN0dXJlZCBhbmQgY29udmVuaWVudCBmb3JtYXQuIEFsbCB0aG9zZSByYW5kb20gZmlsZSBmb3JtYXRzIGNyZWF0ZWQgdG8gc3RvcmUgYXBwbGljYXRpb24gZGF0YSBjYW4gYWxsIGJlIHJlcGxhY2VkIHdpdGggWE1MLiBPbmUgcGFyc2VyIGZvciBldmVyeXRoaW5nLjxwPgorVGhlIGJlc3QgcGxhY2UgZm9yIHRoZSBjb21wbGV0ZSwgY29ycmVjdCwgYW5kIHF1aXRlIGZyYW5rbHkgaGFyZCB0byByZWFkIHNwZWMgaXMgYXQgPGEgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMteG1sLTIwMDQwMjA0LyI+aHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMteG1sLTIwMDQwMjA0LzwvYT4uIEFuIGludHJvIHRvIFhNTCAodGhhdCBJIHJlYWxseSBsaWtlKSBjYW4gYmUgZm91bmQgYXQgPGEgaHJlZj0iaHR0cDovL3NrZXcub3JnL3htbC90dXRvcmlhbC8iPmh0dHA6Ly9za2V3Lm9yZy94bWwvdHV0b3JpYWw8L2E+LjxwPgorVGhlcmUgYXJlIGRpZmZlcmVudCB3YXlzIHRvIGFjY2VzcyBhbmQgaW50ZXJhY3Qgd2l0aCBYTUwgZGF0YS4gVGlueVhtbCB1c2VzIGEgRG9jdW1lbnQgT2JqZWN0IE1vZGVsIChET00pLCBtZWFuaW5nIHRoZSBYTUwgZGF0YSBpcyBwYXJzZWQgaW50byBhIEMrKyBvYmplY3RzIHRoYXQgY2FuIGJlIGJyb3dzZWQgYW5kIG1hbmlwdWxhdGVkLCBhbmQgdGhlbiB3cml0dGVuIHRvIGRpc2sgb3IgYW5vdGhlciBvdXRwdXQgc3RyZWFtLiBZb3UgY2FuIGFsc28gY29uc3RydWN0IGFuIFhNTCBkb2N1bWVudCBmcm9tIHNjcmF0Y2ggd2l0aCBDKysgb2JqZWN0cyBhbmQgd3JpdGUgdGhpcyB0byBkaXNrIG9yIGFub3RoZXIgb3V0cHV0IHN0cmVhbS48cD4KK1RpbnlYbWwgaXMgZGVzaWduZWQgdG8gYmUgZWFzeSBhbmQgZmFzdCB0byBsZWFybi4gSXQgaXMgdHdvIGhlYWRlcnMgYW5kIGZvdXIgY3BwIGZpbGVzLiBTaW1wbHkgYWRkIHRoZXNlIHRvIHlvdXIgcHJvamVjdCBhbmQgb2ZmIHlvdSBnby4gVGhlcmUgaXMgYW4gZXhhbXBsZSBmaWxlIC0geG1sdGVzdC5jcHAgLSB0byBnZXQgeW91IHN0YXJ0ZWQuPHA+CitUaW55WG1sIGlzIHJlbGVhc2VkIHVuZGVyIHRoZSBaTGliIGxpY2Vuc2UsIHNvIHlvdSBjYW4gdXNlIGl0IGluIG9wZW4gc291cmNlIG9yIGNvbW1lcmNpYWwgY29kZS4gVGhlIGRldGFpbHMgb2YgdGhlIGxpY2Vuc2UgYXJlIGF0IHRoZSB0b3Agb2YgZXZlcnkgc291cmNlIGZpbGUuPHA+CitUaW55WG1sIGF0dGVtcHRzIHRvIGJlIGEgZmxleGlibGUgcGFyc2VyLCBidXQgd2l0aCB0cnVseSBjb3JyZWN0IGFuZCBjb21wbGlhbnQgWE1MIG91dHB1dC4gVGlueVhtbCBzaG91bGQgY29tcGlsZSBvbiBhbnkgcmVhc29uYWJseSBDKysgY29tcGxpYW50IHN5c3RlbS4gSXQgZG9lcyBub3QgcmVseSBvbiBleGNlcHRpb25zIG9yIFJUVEkuIEl0IGNhbiBiZSBjb21waWxlZCB3aXRoIG9yIHdpdGhvdXQgU1RMIHN1cHBvcnQuIFRpbnlYbWwgZnVsbHkgc3VwcG9ydHMgdGhlIFVURi04IGVuY29kaW5nLCBhbmQgdGhlIGZpcnN0IDY0ayBjaGFyYWN0ZXIgZW50aXRpZXMuPHA+CiA8aDI+V2hhdCBpdCBkb2Vzbid0IGRvLiA8L2gyPgotPHA+VGlueVhNTCBkb2Vzbid0IHBhcnNlIG9yIHVzZSBEVERzIChEb2N1bWVudCBUeXBlIERlZmluaXRpb25zKSBvciBYU0xzIChlWHRlbnNpYmxlIFN0eWxlc2hlZXQgTGFuZ3VhZ2UuKSBUaGVyZSBhcmUgb3RoZXIgcGFyc2VycyBvdXQgdGhlcmUgKGNoZWNrIG91dCB3d3cuc291cmNlZm9yZ2Uub3JnLCBzZWFyY2ggZm9yIFhNTCkgdGhhdCBhcmUgbXVjaCBtb3JlIGZ1bGx5IGZlYXR1cmVkLiBCdXQgdGhleSBhcmUgYWxzbyBtdWNoIGJpZ2dlciwgdGFrZSBsb25nZXIgdG8gc2V0IHVwIGluIHlvdXIgcHJvamVjdCwgaGF2ZSBhIGhpZ2hlciBsZWFybmluZyBjdXJ2ZSwgYW5kIG9mdGVuIGhhdmUgYSBtb3JlIHJlc3RyaWN0aXZlIGxpY2Vuc2UuIElmIHlvdSBhcmUgd29ya2luZyB3aXRoIGJyb3dzZXJzIG9yIGhhdmUgbW9yZSBjb21wbGV0ZSBYTUwgbmVlZHMsIFRpbnlYTUwgaXMgbm90IHRoZSBwYXJzZXIgZm9yIHlvdS48L3A+Ci08cD5UaGUgZm9sbG93aW5nIERURCBzeW50YXggd2lsbCBub3QgcGFyc2UgYXQgdGhpcyB0aW1lIGluIFRpbnlYTUw6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLQkmbHQ7IURPQ1RZUEUgQXJjaGl2IFsKKzxwPgorSXQgZG9lc250IHBhcnNlIG9yIHVzZSBEVERzIChEb2N1bWVudCBUeXBlIERlZmluaXRpb25zKSBvciBYU0xzIChlWHRlbnNpYmxlIFN0eWxlc2hlZXQgTGFuZ3VhZ2UuKSBUaGVyZSBhcmUgb3RoZXIgcGFyc2VycyBvdXQgdGhlcmUgKGNoZWNrIG91dCB3d3cuc291cmNlZm9yZ2Uub3JnLCBzZWFyY2ggZm9yIFhNTCkgdGhhdCBhcmUgbXVjaCBtb3JlIGZ1bGx5IGZlYXR1cmVkLiBCdXQgdGhleSBhcmUgYWxzbyBtdWNoIGJpZ2dlciwgdGFrZSBsb25nZXIgdG8gc2V0IHVwIGluIHlvdXIgcHJvamVjdCwgaGF2ZSBhIGhpZ2hlciBsZWFybmluZyBjdXJ2ZSwgYW5kIG9mdGVuIGhhdmUgYSBtb3JlIHJlc3RyaWN0aXZlIGxpY2Vuc2UuIElmIHlvdSBhcmUgd29ya2luZyB3aXRoIGJyb3dzZXJzIG9yIGhhdmUgbW9yZSBjb21wbGV0ZSBYTUwgbmVlZHMsIFRpbnlYbWwgaXMgbm90IHRoZSBwYXJzZXIgZm9yIHlvdS48cD4KK1RoZSBmb2xsb3dpbmcgRFREIHN5bnRheCB3aWxsIG5vdCBwYXJzZSBhdCB0aGlzIHRpbWUgaW4gVGlueVhtbDo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CSZsdDshRE9DVFlQRSBBcmNoaXYgWwogCSAmbHQ7IUVMRU1FTlQgQ29tbWVudCAoI1BDREFUQSkmZ3Q7CiAJXSZndDsKLTwvcHJlPjwvZGl2PjxwPmJlY2F1c2UgVGlueVhNTCBzZWVzIHRoaXMgYXMgYSAhRE9DVFlQRSBub2RlIHdpdGggYW4gaWxsZWdhbGx5IGVtYmVkZGVkICFFTEVNRU5UIG5vZGUuIFRoaXMgbWF5IGJlIGFkZHJlc3NlZCBpbiB0aGUgZnV0dXJlLjwvcD4KKzwvcHJlPjwvZGl2PjxwPgorYmVjYXVzZSBUaW55WG1sIHNlZXMgdGhpcyBhcyBhICFET0NUWVBFIG5vZGUgd2l0aCBhbiBpbGxlZ2FsbHkgZW1iZWRkZWQgIUVMRU1FTlQgbm9kZS4gVGhpcyBtYXkgYmUgYWRkcmVzc2VkIGluIHRoZSBmdXR1cmUuPHA+CiA8aDI+VHV0b3JpYWxzLiA8L2gyPgotPHA+Rm9yIHRoZSBpbXBhdGllbnQsIGhlcmUgaXMgYSB0dXRvcmlhbCB0byBnZXQgeW91IGdvaW5nLiBBIGdyZWF0IHdheSB0byBnZXQgc3RhcnRlZCwgYnV0IGl0IGlzIHdvcnRoIHlvdXIgdGltZSB0byByZWFkIHRoaXMgKHZlcnkgc2hvcnQpIG1hbnVhbCBjb21wbGV0ZWx5LjwvcD4KKzxwPgorRm9yIHRoZSBpbXBhdGllbnQsIGhlcmUgaXMgYSB0dXRvcmlhbCB0byBnZXQgeW91IGdvaW5nLiBBIGdyZWF0IHdheSB0byBnZXQgc3RhcnRlZCwgYnV0IGl0IGlzIHdvcnRoIHlvdXIgdGltZSB0byByZWFkIHRoaXMgKHZlcnkgc2hvcnQpIG1hbnVhbCBjb21wbGV0ZWx5LjxwPgogPHVsPgotPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0idHV0b3JpYWwwLmh0bWwiPlRpbnlYTUwgVHV0b3JpYWw8L2E+PC9saT4KLTwvdWw+Cis8bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJ0dXRvcmlhbDAuaHRtbCI+VGlueVhNTCBUdXRvcmlhbDwvYT48L2xpPjwvdWw+Cis8cD4KIDxoMj5Db2RlIFN0YXR1cy4gPC9oMj4KLTxwPlRpbnlYTUwgaXMgbWF0dXJlLCB0ZXN0ZWQgY29kZS4gSXQgaXMgdmVyeSBzdGFibGUuIElmIHlvdSBmaW5kIGJ1Z3MsIHBsZWFzZSBmaWxlIGEgYnVnIHJlcG9ydCBvbiB0aGUgc291cmNlZm9yZ2Ugd2ViIHNpdGUgKHd3dy5zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvdGlueXhtbCkuIFdlJ2xsIGdldCB0aGVtIHN0cmFpZ2h0ZW5lZCBvdXQgYXMgc29vbiBhcyBwb3NzaWJsZS48L3A+Ci08cD5UaGVyZSBhcmUgc29tZSBhcmVhcyBvZiBpbXByb3ZlbWVudDsgcGxlYXNlIGNoZWNrIHNvdXJjZWZvcmdlIGlmIHlvdSBhcmUgaW50ZXJlc3RlZCBpbiB3b3JraW5nIG9uIFRpbnlYTUwuPC9wPgotPGgyPlJlbGF0ZWQgUHJvamVjdHMgPC9oMj4KLTxwPlRpbnlYTUwgcHJvamVjdHMgeW91IG1heSBmaW5kIHVzZWZ1bCEgKERlc2NyaXB0aW9ucyBwcm92aWRlZCBieSB0aGUgcHJvamVjdHMuKTwvcD4KLTx1bD4KLTxsaT4KLTxiPlRpbnlYUGF0aDwvYj4gKDxhIGhyZWY9Imh0dHA6Ly90aW55eHBhdGguc291cmNlZm9yZ2UubmV0Ij5odHRwOi8vdGlueXhwYXRoLnNvdXJjZWZvcmdlLm5ldDwvYT4pLiBUaW55WFBhdGggaXMgYSBzbWFsbCBmb290cHJpbnQgWFBhdGggc3ludGF4IGRlY29kZXIsIHdyaXR0ZW4gaW4gQysrLiA8L2xpPgotPGxpPgotPGI+VGlueVhNTCsrPC9iPiAoPGEgaHJlZj0iaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL3RpY3BwLyI+aHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL3RpY3BwLzwvYT4pLiBUaW55WE1MKysgaXMgYSBjb21wbGV0ZWx5IG5ldyBpbnRlcmZhY2UgdG8gVGlueVhNTCB0aGF0IHVzZXMgTUFOWSBvZiB0aGUgQysrIHN0cmVuZ3Rocy4gVGVtcGxhdGVzLCBleGNlcHRpb25zLCBhbmQgbXVjaCBiZXR0ZXIgZXJyb3IgaGFuZGxpbmcuIDwvbGk+Ci08L3VsPgorPHA+CitUaW55WG1sIGlzIG1hdHVyZSwgdGVzdGVkIGNvZGUuIEl0IGlzIHZlcnkgc3RhYmxlLiBJZiB5b3UgZmluZCBidWdzLCBwbGVhc2UgZmlsZSBhIGJ1ZyByZXBvcnQgb24gdGhlIHNvdXJjZWZvcmdlIHdlYiBzaXRlICh3d3cuc291cmNlZm9yZ2UubmV0L3Byb2plY3RzL3Rpbnl4bWwpLiBXZSdsbCBnZXQgdGhlbSBzdHJhaWdodGVuZWQgb3V0IGFzIHNvb24gYXMgcG9zc2libGUuPHA+CitUaGVyZSBhcmUgc29tZSBhcmVhcyBvZiBpbXByb3ZlbWVudDsgcGxlYXNlIGNoZWNrIHNvdXJjZWZvcmdlIGlmIHlvdSBhcmUgaW50ZXJlc3RlZCBpbiB3b3JraW5nIG9uIFRpbnlYbWwuPHA+CiA8aDI+RmVhdHVyZXMgPC9oMj4KKzxwPgogPGgzPlVzaW5nIFNUTCA8L2gzPgotPHA+VGlueVhNTCBjYW4gYmUgY29tcGlsZWQgdG8gdXNlIG9yIG5vdCB1c2UgU1RMLiBXaGVuIHVzaW5nIFNUTCwgVGlueVhNTCB1c2VzIHRoZSBzdGQ6OnN0cmluZyBjbGFzcywgYW5kIGZ1bGx5IHN1cHBvcnRzIHN0ZDo6aXN0cmVhbSwgc3RkOjpvc3RyZWFtLCBvcGVyYXRvciZsdDsmbHQ7LCBhbmQgb3BlcmF0b3ImZ3Q7Jmd0Oy4gTWFueSBBUEkgbWV0aG9kcyBoYXZlIGJvdGggJ2NvbnN0IGNoYXIqJyBhbmQgJ2NvbnN0IHN0ZDo6c3RyaW5nJmFtcDsnIGZvcm1zLjwvcD4KLTxwPldoZW4gU1RMIHN1cHBvcnQgaXMgY29tcGlsZWQgb3V0LCBubyBTVEwgZmlsZXMgYXJlIGluY2x1ZGVkIHdoYXRzb2V2ZXIuIEFsbCB0aGUgc3RyaW5nIGNsYXNzZXMgYXJlIGltcGxlbWVudGVkIGJ5IFRpbnlYTUwgaXRzZWxmLiBBUEkgbWV0aG9kcyBhbGwgdXNlIHRoZSAnY29uc3QgY2hhcionIGZvcm0gZm9yIGlucHV0LjwvcD4KLTxwPlVzZSB0aGUgY29tcGlsZSB0aW1lIGRlZmluZTo8L3A+Ci08cD5USVhNTF9VU0VfU1RMPC9wPgotPHA+dG8gY29tcGlsZSBvbmUgdmVyc2lvbiBvciB0aGUgb3RoZXIuIFRoaXMgY2FuIGJlIHBhc3NlZCBieSB0aGUgY29tcGlsZXIsIG9yIHNldCBhcyB0aGUgZmlyc3QgbGluZSBvZiAidGlueXhtbC5oIi48L3A+Ci08cD5Ob3RlOiBJZiBjb21waWxpbmcgdGhlIHRlc3QgY29kZSBpbiBMaW51eCwgc2V0dGluZyB0aGUgZW52aXJvbm1lbnQgdmFyaWFibGUgVElOWVhNTF9VU0VfU1RMPVlFUy9OTyB3aWxsIGNvbnRyb2wgU1RMIGNvbXBpbGF0aW9uLiBJbiB0aGUgV2luZG93cyBwcm9qZWN0IGZpbGUsIFNUTCBhbmQgbm9uIFNUTCB0YXJnZXRzIGFyZSBwcm92aWRlZC4gSW4geW91ciBwcm9qZWN0LCBJdCdzIHByb2JhYmx5IGVhc2llc3QgdG8gYWRkIHRoZSBsaW5lICIjZGVmaW5lIFRJWE1MX1VTRV9TVEwiIGFzIHRoZSBmaXJzdCBsaW5lIG9mIDxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPi48L3A+Cis8cD4KK1RpbnlYbWwgY2FuIGJlIGNvbXBpbGVkIHRvIHVzZSBvciBub3QgdXNlIFNUTC4gV2hlbiB1c2luZyBTVEwsIFRpbnlYbWwgdXNlcyB0aGUgc3RkOjpzdHJpbmcgY2xhc3MsIGFuZCBmdWxseSBzdXBwb3J0cyBzdGQ6OmlzdHJlYW0sIHN0ZDo6b3N0cmVhbSwgb3BlcmF0b3ImbHQ7Jmx0OywgYW5kIG9wZXJhdG9yJmd0OyZndDsuIE1hbnkgQVBJIG1ldGhvZHMgaGF2ZSBib3RoICdjb25zdCBjaGFyKicgYW5kICdjb25zdCBzdGQ6OnN0cmluZyZhbXA7JyBmb3Jtcy48cD4KK1doZW4gU1RMIHN1cHBvcnQgaXMgY29tcGlsZWQgb3V0LCBubyBTVEwgZmlsZXMgYXJlIGluY2x1ZGVkIHdoYXRzb3Zlci4gQWxsIHRoZSBzdHJpbmcgY2xhc3NlcyBhcmUgaW1wbGVtZW50ZWQgYnkgVGlueVhtbCBpdHNlbGYuIEFQSSBtZXRob2RzIGFsbCB1c2UgdGhlICdjb25zdCBjaGFyKicgZm9ybSBmb3IgaW5wdXQuPHA+CitVc2UgdGhlIGNvbXBpbGUgdGltZSBkZWZpbmU6PHA+CitUSVhNTF9VU0VfU1RMPHA+Cit0byBjb21waWxlIG9uZSB2ZXJzaW9uIG9yIHRoZSBvdGhlci4gVGhpcyBjYW4gYmUgcGFzc2VkIGJ5IHRoZSBjb21waWxlciwgb3Igc2V0IGFzIHRoZSBmaXJzdCBsaW5lIG9mICJ0aW55eG1sLmgiLjxwPgorTm90ZTogSWYgY29tcGlsaW5nIHRoZSB0ZXN0IGNvZGUgaW4gTGludXgsIHNldHRpbmcgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIFRJTllYTUxfVVNFX1NUTD1ZRVMvTk8gd2lsbCBjb250cm9sIFNUTCBjb21waWxhdGlvbi4gSW4gdGhlIFdpbmRvd3MgcHJvamVjdCBmaWxlLCBTVEwgYW5kIG5vbiBTVEwgdGFyZ2V0cyBhcmUgcHJvdmlkZWQuIEluIHlvdXIgcHJvamVjdCwgaXRzIHByb2JhYmx5IGVhc2llc3QgdG8gYWRkIHRoZSBsaW5lICIjZGVmaW5lIFRJWE1MX1VTRV9TVEwiIGFzIHRoZSBmaXJzdCBsaW5lIG9mIDxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aC1zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPi48cD4KIDxoMz5VVEYtOCA8L2gzPgotPHA+VGlueVhNTCBzdXBwb3J0cyBVVEYtOCBhbGxvd2luZyB0byBtYW5pcHVsYXRlIFhNTCBmaWxlcyBpbiBhbnkgbGFuZ3VhZ2UuIFRpbnlYTUwgYWxzbyBzdXBwb3J0cyAibGVnYWN5IG1vZGUiIC0gdGhlIGVuY29kaW5nIHVzZWQgYmVmb3JlIFVURi04IHN1cHBvcnQgYW5kIHByb2JhYmx5IGJlc3QgZGVzY3JpYmVkIGFzICJleHRlbmRlZCBhc2NpaSIuPC9wPgotPHA+Tm9ybWFsbHksIFRpbnlYTUwgd2lsbCB0cnkgdG8gZGV0ZWN0IHRoZSBjb3JyZWN0IGVuY29kaW5nIGFuZCB1c2UgaXQuIEhvd2V2ZXIsIGJ5IHNldHRpbmcgdGhlIHZhbHVlIG9mIFRJWE1MX0RFRkFVTFRfRU5DT0RJTkcgaW4gdGhlIGhlYWRlciBmaWxlLCBUaW55WE1MIGNhbiBiZSBmb3JjZWQgdG8gYWx3YXlzIHVzZSBvbmUgZW5jb2RpbmcuPC9wPgotPHA+VGlueVhNTCB3aWxsIGFzc3VtZSBMZWdhY3kgTW9kZSB1bnRpbCBvbmUgb2YgdGhlIGZvbGxvd2luZyBvY2N1cnM6IDwvcD4KLTxvbD4KKzxwPgorVGlueVhtbCBzdXBwb3J0cyBVVEYtOCBhbGxvd2luZyB0byBtYW5pcHVsYXRlIFhNTCBmaWxlcyBpbiBhbnkgbGFuZ3VhZ2UuIFRpbnlYbWwgYWxzbyBzdXBwb3J0cyAibGVnYWN5IG1vZGUiIC0gdGhlIGVuY29kaW5nIHVzZWQgYmVmb3JlIFVURi04IHN1cHBvcnQgYW5kIHByb2JhYmx5IGJlc3QgZGVzY3JpYmVkIGFzICJleHRlbmRlZCBhc2NpaSIuPHA+CitOb3JtYWxseSwgVGlueVhtbCB3aWxsIHRyeSB0byBkZXRlY3QgdGhlIGNvcnJlY3QgZW5jb2RpbmcgYW5kIHVzZSBpdC4gSG93ZXZlciwgYnkgc2V0dGluZyB0aGUgdmFsdWUgb2YgVElYTUxfREVGQVVMVF9FTkNPRElORyBpbiB0aGUgaGVhZGVyIGZpbGUsIFRpbnlYbWwgY2FuIGJlIGZvcmNlZCB0byBhbHdheXMgdXNlIG9uZSBlbmNvZGluZy48cD4KK1RpbnlYbWwgd2lsbCBhc3N1bWUgTGVnYWN5IE1vZGUgdW50aWwgb25lIG9mIHRoZSBmb2xsb3dpbmcgb2NjdXJzOiA8b2w+CiA8bGk+Ci1JZiB0aGUgbm9uLXN0YW5kYXJkIGJ1dCBjb21tb24gIlVURi04IGxlYWQgYnl0ZXMiICgweGVmIDB4YmIgMHhiZikgYmVnaW4gdGhlIGZpbGUgb3IgZGF0YSBzdHJlYW0sIFRpbnlYTUwgd2lsbCByZWFkIGl0IGFzIFVURi04LiAgPC9saT4KK0lmIHRoZSBub24tc3RhbmRhcmQgYnV0IGNvbW1vbiAiVVRGLTggbGVhZCBieXRlcyIgKDB4ZWYgMHhiYiAweGJmKSBiZWdpbiB0aGUgZmlsZSBvciBkYXRhIHN0cmVhbSwgVGlueVhtbCB3aWxsIHJlYWQgaXQgYXMgVVRGLTguICA8L2xpPgogPGxpPgotSWYgdGhlIGRlY2xhcmF0aW9uIHRhZyBpcyByZWFkLCBhbmQgaXQgaGFzIGFuIGVuY29kaW5nPSJVVEYtOCIsIHRoZW4gVGlueVhNTCB3aWxsIHJlYWQgaXQgYXMgVVRGLTguICA8L2xpPgorSWYgdGhlIGRlY2xhcmF0aW9uIHRhZyBpcyByZWFkLCBhbmQgaXQgaGFzIGFuIGVuY29kaW5nPSJVVEYtOCIsIHRoZW4gVGlueVhtbCB3aWxsIHJlYWQgaXQgYXMgVVRGLTguICA8L2xpPgogPGxpPgotSWYgdGhlIGRlY2xhcmF0aW9uIHRhZyBpcyByZWFkLCBhbmQgaXQgaGFzIG5vIGVuY29kaW5nIHNwZWNpZmllZCwgdGhlbiBUaW55WE1MIHdpbGwgcmVhZCBpdCBhcyBVVEYtOC4gIDwvbGk+CitJZiB0aGUgZGVjbGFyYXRpb24gdGFnIGlzIHJlYWQsIGFuZCBpdCBoYXMgbm8gZW5jb2Rpbmcgc3BlY2lmaWVkLCB0aGVuIFRpbnlYbWwgd2lsbCByZWFkIGl0IGFzIFVURi04LiAgPC9saT4KIDxsaT4KLUlmIHRoZSBkZWNsYXJhdGlvbiB0YWcgaXMgcmVhZCwgYW5kIGl0IGhhcyBhbiBlbmNvZGluZz0ic29tZXRoaW5nIGVsc2UiLCB0aGVuIFRpbnlYTUwgd2lsbCByZWFkIGl0IGFzIExlZ2FjeSBNb2RlLiBJbiBsZWdhY3kgbW9kZSwgVGlueVhNTCB3aWxsIHdvcmsgYXMgaXQgZGlkIGJlZm9yZS4gSXQncyBub3QgY2xlYXIgd2hhdCB0aGF0IG1vZGUgZG9lcyBleGFjdGx5LCBidXQgb2xkIGNvbnRlbnQgc2hvdWxkIGtlZXAgd29ya2luZy4gPC9saT4KK0lmIHRoZSBkZWNsYXJhdGlvbiB0YWcgaXMgcmVhZCwgYW5kIGl0IGhhcyBhbiBlbmNvZGluZz0ic29tZXRoaW5nIGVsc2UiLCB0aGVuIFRpbnlYbWwgd2lsbCByZWFkIGl0IGFzIExlZ2FjeSBNb2RlLiBJbiBsZWdhY3kgbW9kZSwgVGlueVhtbCB3aWxsIHdvcmsgYXMgaXQgZGlkIGJlZm9yZS4gSXQncyBub3QgY2xlYXIgd2hhdCB0aGF0IG1vZGUgZG9lcyBleGFjdGx5LCBidXQgb2xkIGNvbnRlbnQgc2hvdWxkIGtlZXAgd29ya2luZy4gPC9saT4KIDxsaT4KLVVudGlsIG9uZSBvZiB0aGUgYWJvdmUgY3JpdGVyaWEgaXMgbWV0LCBUaW55WE1MIHJ1bnMgaW4gTGVnYWN5IE1vZGUuIDwvbGk+CitVbnRpbCBvbmUgb2YgdGhlIGFib3ZlIGNyaXRlcmlhIGlzIG1ldCwgVGlueVhtbCBydW5zIGluIExlZ2FjeSBNb2RlLiA8L2xpPgogPC9vbD4KLTxwPldoYXQgaGFwcGVucyBpZiB0aGUgZW5jb2RpbmcgaXMgaW5jb3JyZWN0bHkgc2V0IG9yIGRldGVjdGVkPyBUaW55WE1MIHdpbGwgdHJ5IHRvIHJlYWQgYW5kIHBhc3MgdGhyb3VnaCB0ZXh0IHNlZW4gYXMgaW1wcm9wZXJseSBlbmNvZGVkLiBZb3UgbWF5IGdldCBzb21lIHN0cmFuZ2UgcmVzdWx0cyBvciBtYW5nbGVkIGNoYXJhY3RlcnMuIFlvdSBtYXkgd2FudCB0byBmb3JjZSBUaW55WE1MIHRvIHRoZSBjb3JyZWN0IG1vZGUuPC9wPgotPHA+WW91IG1heSBmb3JjZSBUaW55WE1MIHRvIExlZ2FjeSBNb2RlIGJ5IHVzaW5nIExvYWRGaWxlKCBUSVhNTF9FTkNPRElOR19MRUdBQ1kgKSBvciBMb2FkRmlsZSggZmlsZW5hbWUsIFRJWE1MX0VOQ09ESU5HX0xFR0FDWSApLiBZb3UgbWF5IGZvcmNlIGl0IHRvIHVzZSBsZWdhY3kgbW9kZSBhbGwgdGhlIHRpbWUgYnkgc2V0dGluZyBUSVhNTF9ERUZBVUxUX0VOQ09ESU5HID0gVElYTUxfRU5DT0RJTkdfTEVHQUNZLiBMaWtld2lzZSwgeW91IG1heSBmb3JjZSBpdCB0byBUSVhNTF9FTkNPRElOR19VVEY4IHdpdGggdGhlIHNhbWUgdGVjaG5pcXVlLjwvcD4KLTxwPkZvciBFbmdsaXNoIHVzZXJzLCB1c2luZyBFbmdsaXNoIFhNTCwgVVRGLTggaXMgdGhlIHNhbWUgYXMgbG93LUFTQ0lJLiBZb3UgZG9uJ3QgbmVlZCB0byBiZSBhd2FyZSBvZiBVVEYtOCBvciBjaGFuZ2UgeW91ciBjb2RlIGluIGFueSB3YXkuIFlvdSBjYW4gdGhpbmsgb2YgVVRGLTggYXMgYSAic3VwZXJzZXQiIG9mIEFTQ0lJLjwvcD4KLTxwPlVURi04IGlzIG5vdCBhIGRvdWJsZSBieXRlIGZvcm1hdCAtIGJ1dCBpdCBpcyBhIHN0YW5kYXJkIGVuY29kaW5nIG9mIFVuaWNvZGUhIFRpbnlYTUwgZG9lcyBub3QgdXNlIG9yIGRpcmVjdGx5IHN1cHBvcnQgd2NoYXIsIFRDSEFSLCBvciBNaWNyb3NvZnQncyBfVU5JQ09ERSBhdCB0aGlzIHRpbWUuIEl0IGlzIGNvbW1vbiB0byBzZWUgdGhlIHRlcm0gIlVuaWNvZGUiIGltcHJvcGVybHkgcmVmZXIgdG8gVVRGLTE2LCBhIHdpZGUgYnl0ZSBlbmNvZGluZyBvZiB1bmljb2RlLiBUaGlzIGlzIGEgc291cmNlIG9mIGNvbmZ1c2lvbi48L3A+Ci08cD5Gb3IgImhpZ2gtYXNjaWkiIGxhbmd1YWdlcyAtIGV2ZXJ5dGhpbmcgbm90IEVuZ2xpc2gsIHByZXR0eSBtdWNoIC0gVGlueVhNTCBjYW4gaGFuZGxlIGFsbCBsYW5ndWFnZXMsIGF0IHRoZSBzYW1lIHRpbWUsIGFzIGxvbmcgYXMgdGhlIFhNTCBpcyBlbmNvZGVkIGluIFVURi04LiBUaGF0IGNhbiBiZSBhIGxpdHRsZSB0cmlja3ksIG9sZGVyIHByb2dyYW1zIGFuZCBvcGVyYXRpbmcgc3lzdGVtcyB0ZW5kIHRvIHVzZSB0aGUgImRlZmF1bHQiIG9yICJ0cmFkaXRpb25hbCIgY29kZSBwYWdlLiBNYW55IGFwcHMgKGFuZCBhbG1vc3QgYWxsIG1vZGVybiBvbmVzKSBjYW4gb3V0cHV0IFVURi04LCBidXQgb2xkZXIgb3Igc3R1YmJvcm4gKG9yIGp1c3QgYnJva2VuKSBvbmVzIHN0aWxsIG91dHB1dCB0ZXh0IGluIHRoZSBkZWZhdWx0IGNvZGUgcGFnZS48L3A+Ci08cD5Gb3IgZXhhbXBsZSwgSmFwYW5lc2Ugc3lzdGVtcyB0cmFkaXRpb25hbGx5IHVzZSBTSElGVC1KSVMgZW5jb2RpbmcuIFRleHQgZW5jb2RlZCBhcyBTSElGVC1KSVMgY2FuIG5vdCBiZSByZWFkIGJ5IFRpbnlYTUwuIEEgZ29vZCB0ZXh0IGVkaXRvciBjYW4gaW1wb3J0IFNISUZULUpJUyBhbmQgdGhlbiBzYXZlIGFzIFVURi04LjwvcD4KLTxwPlRoZSA8YSBocmVmPSJodHRwOi8vc2tldy5vcmcveG1sL3R1dG9yaWFsLyI+U2tldy5vcmcgbGluazwvYT4gZG9lcyBhIGdyZWF0IGpvYiBjb3ZlcmluZyB0aGUgZW5jb2RpbmcgaXNzdWUuPC9wPgotPHA+VGhlIHRlc3QgZmlsZSAidXRmOHRlc3QueG1sIiBpcyBhbiBYTUwgY29udGFpbmluZyBFbmdsaXNoLCBTcGFuaXNoLCBSdXNzaWFuLCBhbmQgU2ltcGxpZmllZCBDaGluZXNlLiAoSG9wZWZ1bGx5IHRoZXkgYXJlIHRyYW5zbGF0ZWQgY29ycmVjdGx5KS4gVGhlIGZpbGUgInV0Zjh0ZXN0LmdpZiIgaXMgYSBzY3JlZW4gY2FwdHVyZSBvZiB0aGUgWE1MIGZpbGUsIHJlbmRlcmVkIGluIElFLiBOb3RlIHRoYXQgaWYgeW91IGRvbid0IGhhdmUgdGhlIGNvcnJlY3QgZm9udHMgKFNpbXBsaWZpZWQgQ2hpbmVzZSBvciBSdXNzaWFuKSBvbiB5b3VyIHN5c3RlbSwgeW91IHdvbid0IHNlZSBvdXRwdXQgdGhhdCBtYXRjaGVzIHRoZSBHSUYgZmlsZSBldmVuIGlmIHlvdSBjYW4gcGFyc2UgaXQgY29ycmVjdGx5LiBBbHNvIG5vdGUgdGhhdCAoYXQgbGVhc3Qgb24gbXkgV2luZG93cyBtYWNoaW5lKSBjb25zb2xlIG91dHB1dCBpcyBpbiBhIFdlc3Rlcm4gY29kZSBwYWdlLCBzbyB0aGF0IFByaW50KCkgb3IgcHJpbnRmKCkgY2Fubm90IGNvcnJlY3RseSBkaXNwbGF5IHRoZSBmaWxlLiBUaGlzIGlzIG5vdCBhIGJ1ZyBpbiBUaW55WE1MIC0ganVzdCBhbiBPUyBpc3N1ZS4gTm8gZGF0YSBpcyBsb3N0IG9yIGRlc3Ryb3llZCBieSBUaW55WE1MLiBUaGUgY29uc29sZSBqdXN0IGRvZXNuJ3QgcmVuZGVyIFVURi04LjwvcD4KKzxwPgorV2hhdCBoYXBwZW5zIGlmIHRoZSBlbmNvZGluZyBpcyBpbmNvcnJlY3RseSBzZXQgb3IgZGV0ZWN0ZWQ/IFRpbnlYbWwgd2lsbCB0cnkgdG8gcmVhZCBhbmQgcGFzcyB0aHJvdWdoIHRleHQgc2VlbiBhcyBpbXByb3Blcmx5IGVuY29kZWQuIFlvdSBtYXkgZ2V0IHNvbWUgc3RyYW5nZSByZXN1bHRzIG9yIG1hbmdsZWQgY2hhcmFjdGVycy4gWW91IG1heSB3YW50IHRvIGZvcmNlIFRpbnlYbWwgdG8gdGhlIGNvcnJlY3QgbW9kZS48cD4KKzxiPiBZb3UgbWF5IGZvcmNlIFRpbnlYbWwgdG8gTGVnYWN5IE1vZGUgYnkgdXNpbmcgTG9hZEZpbGUoIFRJWE1MX0VOQ09ESU5HX0xFR0FDWSApIG9yIExvYWRGaWxlKCBmaWxlbmFtZSwgVElYTUxfRU5DT0RJTkdfTEVHQUNZICkuIFlvdSBtYXkgZm9yY2UgaXQgdG8gdXNlIGxlZ2FjeSBtb2RlIGFsbCB0aGUgdGltZSBieSBzZXR0aW5nIFRJWE1MX0RFRkFVTFRfRU5DT0RJTkcgPSBUSVhNTF9FTkNPRElOR19MRUdBQ1kuIExpa2V3aXNlLCB5b3UgbWF5IGZvcmNlIGl0IHRvIFRJWE1MX0VOQ09ESU5HX1VURjggd2l0aCB0aGUgc2FtZSB0ZWNobmlxdWUuPC9iPjxwPgorRm9yIEVuZ2xpc2ggdXNlcnMsIHVzaW5nIEVuZ2xpc2ggWE1MLCBVVEYtOCBpcyB0aGUgc2FtZSBhcyBsb3ctQVNDSUkuIFlvdSBkb24ndCBuZWVkIHRvIGJlIGF3YXJlIG9mIFVURi04IG9yIGNoYW5nZSB5b3VyIGNvZGUgaW4gYW55IHdheS4gWW91IGNhbiB0aGluayBvZiBVVEYtOCBhcyBhICJzdXBlcnNldCIgb2YgQVNDSUkuPHA+CitVVEYtOCBpcyBub3QgYSBkb3VibGUgYnl0ZSBmb3JtYXQgLSBidXQgaXQgaXMgYSBzdGFuZGFyZCBlbmNvZGluZyBvZiBVbmljb2RlISBUaW55WG1sIGRvZXMgbm90IHVzZSBvciBkaXJlY3RseSBzdXBwb3J0IHdjaGFyLCBUQ0hBUiwgb3IgTWljcm9zb2Z0cyBfVU5JQ09ERSBhdCB0aGlzIHRpbWUuIEl0IGlzIGNvbW1vbiB0byBzZWUgdGhlIHRlcm0gIlVuaWNvZGUiIGltcHJvcGVybHkgcmVmZXIgdG8gVVRGLTE2LCBhIHdpZGUgYnl0ZSBlbmNvZGluZyBvZiB1bmljb2RlLiBUaGlzIGlzIGEgc291cmNlIG9mIGNvbmZ1c2lvbi48cD4KK0ZvciAiaGlnaC1hc2NpaSIgbGFuZ3VhZ2VzIC0gZXZlcnl0aGluZyBub3QgRW5nbGlzaCwgcHJldHR5IG11Y2ggLSBUaW55WG1sIGNhbiBoYW5kbGUgYWxsIGxhbmd1YWdlcywgYXQgdGhlIHNhbWUgdGltZSwgYXMgbG9uZyBhcyB0aGUgWE1MIGlzIGVuY29kZWQgaW4gVVRGLTguIFRoYXQgY2FuIGJlIGEgbGl0dGxlIHRyaWNreSwgb2xkZXIgcHJvZ3JhbXMgYW5kIG9wZXJhdGluZyBzeXN0ZW1zIHRlbmQgdG8gdXNlIHRoZSAiZGVmYXVsdCIgb3IgInRyYWRpdGlvbmFsIiBjb2RlIHBhZ2UuIE1hbnkgYXBwcyAoYW5kIGFsbW9zdCBhbGwgbW9kZXJuIG9uZXMpIGNhbiBvdXRwdXQgVVRGLTgsIGJ1dCBvbGRlciBvciBzdHViYm9ybiAob3IganVzdCBicm9rZW4pIG9uZXMgc3RpbGwgb3V0cHV0IHRleHQgaW4gdGhlIGRlZmF1bHQgY29kZSBwYWdlLjxwPgorRm9yIGV4YW1wbGUsIEphcGFuZXNlIHN5c3RlbXMgdHJhZGl0aW9uYWxseSB1c2UgU0hJRlQtSklTIGVuY29kaW5nLiBUZXh0IGVuY29kZWQgYXMgU0hJRlQtSklTIGNhbiBub3QgYmUgcmVhZCBieSB0aW55eG1sLiBBIGdvb2QgdGV4dCBlZGl0b3IgY2FuIGltcG9ydCBTSElGVC1KSVMgYW5kIHRoZW4gc2F2ZSBhcyBVVEYtOC48cD4KK1RoZSA8YSBocmVmPSJodHRwOi8vc2tldy5vcmcveG1sL3R1dG9yaWFsLyI+U2tldy5vcmcgbGluazwvYT4gZG9lcyBhIGdyZWF0IGpvYiBjb3ZlcmluZyB0aGUgZW5jb2RpbmcgaXNzdWUuPHA+CitUaGUgdGVzdCBmaWxlICJ1dGY4dGVzdC54bWwiIGlzIGFuIFhNTCBjb250YWluaW5nIEVuZ2xpc2gsIFNwYW5pc2gsIFJ1c3NpYW4sIGFuZCBTaW1wbGlmaWVkIENoaW5lc2UuIChIb3BlZnVsbHkgdGhleSBhcmUgdHJhbnNsYXRlZCBjb3JyZWN0bHkpLiBUaGUgZmlsZSAidXRmOHRlc3QuZ2lmIiBpcyBhIHNjcmVlbiBjYXB0dXJlIG9mIHRoZSBYTUwgZmlsZSwgcmVuZGVyZWQgaW4gSUUuIE5vdGUgdGhhdCBpZiB5b3UgZG9uJ3QgaGF2ZSB0aGUgY29ycmVjdCBmb250cyAoU2ltcGxpZmllZCBDaGluZXNlIG9yIFJ1c3NpYW4pIG9uIHlvdXIgc3lzdGVtLCB5b3Ugd29uJ3Qgc2VlIG91dHB1dCB0aGF0IG1hdGNoZXMgdGhlIEdJRiBmaWxlIGV2ZW4gaWYgeW91IGNhbiBwYXJzZSBpdCBjb3JyZWN0bHkuIEFsc28gbm90ZSB0aGF0IChhdCBsZWFzdCBvbiBteSBXaW5kb3dzIG1hY2hpbmUpIGNvbnNvbGUgb3V0cHV0IGlzIGluIGEgV2VzdGVybiBjb2RlIHBhZ2UsIHNvIHRoYXQgUHJpbnQoKSBvciBwcmludGYoKSBjYW5ub3QgY29ycmVjdGx5IGRpc3BsYXkgdGhlIGZpbGUuIFRoaXMgaXMgbm90IGEgYnVnIGluIFRpbnlYbWwgLSBqdXN0IGFuIE9TIGlzc3VlLiBObyBkYXRhIGlzIGxvc3Qgb3IgZGVzdHJveWVkIGJ5IFRpbnlYbWwuIFRoZSBjb25zb2xlIGp1c3QgZG9lc24ndCByZW5kZXIgVVRGLTguPHA+CiA8aDM+RW50aXRpZXMgPC9oMz4KLTxwPlRpbnlYTUwgcmVjb2duaXplcyB0aGUgcHJlLWRlZmluZWQgImNoYXJhY3RlciBlbnRpdGllcyIsIG1lYW5pbmcgc3BlY2lhbCBjaGFyYWN0ZXJzLiBOYW1lbHk6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLQkmYW1wO2FtcDsJJmFtcDsKKzxwPgorVGlueVhtbCByZWNvZ25pemVzIHRoZSBwcmUtZGVmaW5lZCAiY2hhcmFjdGVyIGVudGl0aWVzIiwgbWVhbmluZyBzcGVjaWFsIGNoYXJhY3RlcnMuIE5hbWVseTo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CSZhbXA7YW1wOwkmYW1wOwogCSZhbXA7bHQ7CSZsdDsKIAkmYW1wO2d0OwkmZ3Q7CiAJJmFtcDtxdW90OwkiCiAJJmFtcDthcG9zOwknCi08L3ByZT48L2Rpdj48cD5UaGVzZSBhcmUgcmVjb2duaXplZCB3aGVuIHRoZSBYTUwgZG9jdW1lbnQgaXMgcmVhZCwgYW5kIHRyYW5zbGF0ZWQgdG8gdGhlcmUgVVRGLTggZXF1aXZhbGVudHMuIEZvciBpbnN0YW5jZSwgdGV4dCB3aXRoIHRoZSBYTUwgb2Y6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLQlGYXIgJmFtcDthbXA7IEF3YXkKLTwvcHJlPjwvZGl2PjxwPndpbGwgaGF2ZSB0aGUgVmFsdWUoKSBvZiAiRmFyICZhbXA7IEF3YXkiIHdoZW4gcXVlcmllZCBmcm9tIHRoZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIHRpdGxlPSJYTUwgdGV4dC4iPlRpWG1sVGV4dDwvYT4gb2JqZWN0LCBhbmQgd2lsbCBiZSB3cml0dGVuIGJhY2sgdG8gdGhlIFhNTCBzdHJlYW0vZmlsZSBhcyBhbiBhbXBlcnNhbmQuIE9sZGVyIHZlcnNpb25zIG9mIFRpbnlYTUwgInByZXNlcnZlZCIgY2hhcmFjdGVyIGVudGl0aWVzLCBidXQgdGhlIG5ld2VyIHZlcnNpb25zIHdpbGwgdHJhbnNsYXRlIHRoZW0gaW50byBjaGFyYWN0ZXJzLjwvcD4KLTxwPkFkZGl0aW9uYWxseSwgYW55IGNoYXJhY3RlciBjYW4gYmUgc3BlY2lmaWVkIGJ5IGl0cyBVbmljb2RlIGNvZGUgcG9pbnQ6IFRoZSBzeW50YXggIiZhbXA7I3hBMDsiIG9yICImYW1wOyMxNjA7IiBhcmUgYm90aCB0byB0aGUgbm9uLWJyZWFraW5nIHNwYWNlIGNoYXJhY2hlci48L3A+Ci08aDM+UHJpbnRpbmcgPC9oMz4KLTxwPlRpbnlYTUwgY2FuIHByaW50IG91dHB1dCBpbiBzZXZlcmFsIGRpZmZlcmVudCB3YXlzIHRoYXQgYWxsIGhhdmUgc3RyZW5ndGhzIGFuZCBsaW1pdGF0aW9ucy48L3A+Ci08dWw+Ci08bGk+UHJpbnQoIEZJTEUqICkuIE91dHB1dCB0byBhIHN0ZC1DIHN0cmVhbSwgd2hpY2ggaW5jbHVkZXMgYWxsIEMgZmlsZXMgYXMgd2VsbCBhcyBzdGRvdXQuPHVsPgotPGxpPiJQcmV0dHkgcHJpbnRzIiwgYnV0IHlvdSBkb24ndCBoYXZlIGNvbnRyb2wgb3ZlciBwcmludGluZyBvcHRpb25zLjwvbGk+Ci08bGk+VGhlIG91dHB1dCBpcyBzdHJlYW1lZCBkaXJlY3RseSB0byB0aGUgRklMRSBvYmplY3QsIHNvIHRoZXJlIGlzIG5vIG1lbW9yeSBvdmVyaGVhZCBpbiB0aGUgVGlueVhNTCBjb2RlLjwvbGk+Ci08bGk+dXNlZCBieSBQcmludCgpIGFuZCBTYXZlRmlsZSgpPC9saT4KLTwvdWw+Ci08L2xpPgotPC91bD4KLTx1bD4KLTxsaT5vcGVyYXRvciZsdDsmbHQ7LiBPdXRwdXQgdG8gYSBjKysgc3RyZWFtLjx1bD4KLTxsaT5JbnRlZ3JhdGVzIHdpdGggc3RhbmRhcnQgQysrIGlvc3RyZWFtcy48L2xpPgotPGxpPk91dHB1dHMgaW4gIm5ldHdvcmsgcHJpbnRpbmciIG1vZGUgd2l0aG91dCBsaW5lIGJyZWFrcy4gR29vZCBmb3IgbmV0d29yayB0cmFuc21pc3Npb24gYW5kIG1vdmluZyBYTUwgYmV0d2VlbiBDKysgb2JqZWN0cywgYnV0IGhhcmQgZm9yIGEgaHVtYW4gdG8gcmVhZC48L2xpPgotPC91bD4KLTwvbGk+Ci08L3VsPgotPHVsPgotPGxpPjxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCIgdGl0bGU9IlByaW50IHRvIG1lbW9yeSBmdW5jdGlvbmFsaXR5LiI+VGlYbWxQcmludGVyPC9hPi4gT3V0cHV0IHRvIGEgc3RkOjpzdHJpbmcgb3IgbWVtb3J5IGJ1ZmZlci48dWw+Ci08bGk+QVBJIGlzIGxlc3MgY29uY2lzZTwvbGk+Ci08bGk+RnV0dXJlIHByaW50aW5nIG9wdGlvbnMgd2lsbCBiZSBwdXQgaGVyZS48L2xpPgotPGxpPlByaW50aW5nIG1heSBjaGFuZ2Ugc2xpZ2h0bHkgaW4gZnV0dXJlIHZlcnNpb25zIGFzIGl0IGlzIHJlZmluZWQgYW5kIGV4cGFuZGVkLjwvbGk+Ci08L3VsPgotPC9saT4KLTwvdWw+Cis8L3ByZT48L2Rpdj48cD4KK1RoZXNlIGFyZSByZWNvZ25pemVkIHdoZW4gdGhlIFhNTCBkb2N1bWVudCBpcyByZWFkLCBhbmQgdHJhbnNsYXRlZCB0byB0aGVyZSBVVEYtOCBlcXVpdmFsZW50cy4gRm9yIGluc3RhbmNlLCB0ZXh0IHdpdGggdGhlIFhNTCBvZjo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CUZhciAmYW1wO2FtcDsgQXdheQorPC9wcmU+PC9kaXY+PHA+Cit3aWxsIGhhdmUgdGhlIFZhbHVlKCkgb2YgIkZhciAmYW1wOyBBd2F5IiB3aGVuIHF1ZXJpZWQgZnJvbSB0aGUgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+IG9iamVjdCwgYW5kIHdpbGwgYmUgd3JpdHRlbiBiYWNrIHRvIHRoZSBYTUwgc3RyZWFtL2ZpbGUgYXMgYW4gYW1wZXJzYW5kLiBPbGRlciB2ZXJzaW9ucyBvZiBUaW55WG1sICJwcmVzZXJ2ZWQiIGNoYXJhY3RlciBlbnRpdGllcywgYnV0IHRoZSBuZXdlciB2ZXJzaW9ucyB3aWxsIHRyYW5zbGF0ZSB0aGVtIGludG8gY2hhcmFjdGVycy48cD4KK0FkZGl0aW9uYWxseSwgYW55IGNoYXJhY3RlciBjYW4gYmUgc3BlY2lmaWVkIGJ5IGl0cyBVbmljb2RlIGNvZGUgcG9pbnQ6IFRoZSBzeW50YXggIiZhbXA7I3hBMDsiIG9yICImYW1wOyMxNjA7IiBhcmUgYm90aCB0byB0aGUgbm9uLWJyZWFraW5nIHNwYWNlIGNoYXJhY2hlci48cD4KIDxoMz5TdHJlYW1zIDwvaDM+Ci08cD5XaXRoIFRJWE1MX1VTRV9TVEwgb24gVGlueVhNTCBzdXBwb3J0cyBDKysgc3RyZWFtcyAob3BlcmF0b3IgJmx0OyZsdDssJmd0OyZndDspIHN0cmVhbXMgYXMgd2VsbCBhcyBDIChGSUxFKikgc3RyZWFtcy4gVGhlcmUgYXJlIHNvbWUgZGlmZmVyZW5jZXMgdGhhdCB5b3UgbWF5IG5lZWQgdG8gYmUgYXdhcmUgb2YuPC9wPgotPHA+QyBzdHlsZSBvdXRwdXQ6PC9wPgotPHVsPgotPGxpPmJhc2VkIG9uIEZJTEUqPC9saT4KLTxsaT50aGUgUHJpbnQoKSBhbmQgU2F2ZUZpbGUoKSBtZXRob2RzPC9saT4KLTwvdWw+Ci08cD5HZW5lcmF0ZXMgZm9ybWF0dGVkIG91dHB1dCwgd2l0aCBwbGVudHkgb2Ygd2hpdGUgc3BhY2UsIGludGVuZGVkIHRvIGJlIGFzIGh1bWFuLXJlYWRhYmxlIGFzIHBvc3NpYmxlLiBUaGV5IGFyZSB2ZXJ5IGZhc3QsIGFuZCB0b2xlcmFudCBvZiBpbGwgZm9ybWVkIFhNTCBkb2N1bWVudHMuIEZvciBleGFtcGxlLCBhbiBYTUwgZG9jdW1lbnQgdGhhdCBjb250YWlucyAyIHJvb3QgZWxlbWVudHMgYW5kIDIgZGVjbGFyYXRpb25zLCB3aWxsIHN0aWxsIHByaW50LjwvcD4KLTxwPkMgc3R5bGUgaW5wdXQ6PC9wPgotPHVsPgotPGxpPmJhc2VkIG9uIEZJTEUqPC9saT4KLTxsaT50aGUgUGFyc2UoKSBhbmQgTG9hZEZpbGUoKSBtZXRob2RzPC9saT4KLTwvdWw+Ci08cD5BIGZhc3QsIHRvbGVyYW50IHJlYWQuIFVzZSB3aGVuZXZlciB5b3UgZG9uJ3QgbmVlZCB0aGUgQysrIHN0cmVhbXMuPC9wPgotPHA+QysrIHN0eWxlIG91dHB1dDo8L3A+Ci08dWw+Ci08bGk+YmFzZWQgb24gc3RkOjpvc3RyZWFtPC9saT4KLTxsaT5vcGVyYXRvciZsdDsmbHQ7PC9saT4KLTwvdWw+Ci08cD5HZW5lcmF0ZXMgY29uZGVuc2VkIG91dHB1dCwgaW50ZW5kZWQgZm9yIG5ldHdvcmsgdHJhbnNtaXNzaW9uIHJhdGhlciB0aGFuIHJlYWRhYmlsaXR5LiBEZXBlbmRpbmcgb24geW91ciBzeXN0ZW0ncyBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgb3N0cmVhbSBjbGFzcywgdGhlc2UgbWF5IGJlIHNvbWV3aGF0IHNsb3dlci4gKE9yIG1heSBub3QuKSBOb3QgdG9sZXJhbnQgb2YgaWxsIGZvcm1lZCBYTUw6IGEgZG9jdW1lbnQgc2hvdWxkIGNvbnRhaW4gdGhlIGNvcnJlY3Qgb25lIHJvb3QgZWxlbWVudC4gQWRkaXRpb25hbCByb290IGxldmVsIGVsZW1lbnRzIHdpbGwgbm90IGJlIHN0cmVhbWVkIG91dC48L3A+Ci08cD5DKysgc3R5bGUgaW5wdXQ6PC9wPgotPHVsPgotPGxpPmJhc2VkIG9uIHN0ZDo6aXN0cmVhbTwvbGk+Ci08bGk+b3BlcmF0b3ImZ3Q7Jmd0OzwvbGk+Ci08L3VsPgotPHA+UmVhZHMgWE1MIGZyb20gYSBzdHJlYW0sIG1ha2luZyBpdCB1c2VmdWwgZm9yIG5ldHdvcmsgdHJhbnNtaXNzaW9uLiBUaGUgdHJpY2t5IHBhcnQgaXMga25vd2luZyB3aGVuIHRoZSBYTUwgZG9jdW1lbnQgaXMgY29tcGxldGUsIHNpbmNlIHRoZXJlIHdpbGwgYWxtb3N0IGNlcnRhaW5seSBiZSBvdGhlciBkYXRhIGluIHRoZSBzdHJlYW0uIFRpbnlYTUwgd2lsbCBhc3N1bWUgdGhlIFhNTCBkYXRhIGlzIGNvbXBsZXRlIGFmdGVyIGl0IHJlYWRzIHRoZSByb290IGVsZW1lbnQuIFB1dCBhbm90aGVyIHdheSwgZG9jdW1lbnRzIHRoYXQgYXJlIGlsbC1jb25zdHJ1Y3RlZCB3aXRoIG1vcmUgdGhhbiBvbmUgcm9vdCBlbGVtZW50IHdpbGwgbm90IHJlYWQgY29ycmVjdGx5LiBBbHNvIG5vdGUgdGhhdCBvcGVyYXRvciZndDsmZ3Q7IGlzIHNvbWV3aGF0IHNsb3dlciB0aGFuIFBhcnNlLCBkdWUgdG8gYm90aCBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgU1RMIGFuZCBsaW1pdGF0aW9ucyBvZiBUaW55WE1MLjwvcD4KKzxwPgorV2l0aCBUSVhNTF9VU0VfU1RMIG9uLCBUaVhtbCBoYXMgYmVlbiBtb2RpZmllZCB0byBzdXBwb3J0IGJvdGggQyAoRklMRSkgYW5kIEMrKyAob3BlcmF0b3IgJmx0OyZsdDssJmd0OyZndDspIHN0cmVhbXMuIFRoZXJlIGFyZSBzb21lIGRpZmZlcmVuY2VzIHRoYXQgeW91IG1heSBuZWVkIHRvIGJlIGF3YXJlIG9mLjxwPgorQyBzdHlsZSBvdXRwdXQ6PHVsPgorPGxpPmJhc2VkIG9uIEZJTEUqPC9saT48bGk+dGhlIFByaW50KCkgYW5kIFNhdmVGaWxlKCkgbWV0aG9kczwvbGk+PC91bD4KKzxwPgorR2VuZXJhdGVzIGZvcm1hdHRlZCBvdXRwdXQsIHdpdGggcGxlbnR5IG9mIHdoaXRlIHNwYWNlLCBpbnRlbmRlZCB0byBiZSBhcyBodW1hbi1yZWFkYWJsZSBhcyBwb3NzaWJsZS4gVGhleSBhcmUgdmVyeSBmYXN0LCBhbmQgdG9sZXJhbnQgb2YgaWxsIGZvcm1lZCBYTUwgZG9jdW1lbnRzLiBGb3IgZXhhbXBsZSwgYW4gWE1MIGRvY3VtZW50IHRoYXQgY29udGFpbnMgMiByb290IGVsZW1lbnRzIGFuZCAyIGRlY2xhcmF0aW9ucywgd2lsbCBzdGlsbCBwcmludC48cD4KK0Mgc3R5bGUgaW5wdXQ6PHVsPgorPGxpPmJhc2VkIG9uIEZJTEUqPC9saT48bGk+dGhlIFBhcnNlKCkgYW5kIExvYWRGaWxlKCkgbWV0aG9kczwvbGk+PC91bD4KKzxwPgorQSBmYXN0LCB0b2xlcmFudCByZWFkLiBVc2Ugd2hlbmV2ZXIgeW91IGRvbid0IG5lZWQgdGhlIEMrKyBzdHJlYW1zLjxwPgorQysrIHN0eWxlIG91cHV0Ojx1bD4KKzxsaT5iYXNlZCBvbiBzdGQ6Om9zdHJlYW08L2xpPjxsaT5vcGVyYXRvciZsdDsmbHQ7PC9saT48L3VsPgorPHA+CitHZW5lcmF0ZXMgY29uZGVuc2VkIG91dHB1dCwgaW50ZW5kZWQgZm9yIG5ldHdvcmsgdHJhbnNtaXNzaW9uIHJhdGhlciB0aGFuIHJlYWRhYmlsaXR5LiBEZXBlbmRpbmcgb24geW91ciBzeXN0ZW0ncyBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgb3N0cmVhbSBjbGFzcywgdGhlc2UgbWF5IGJlIHNvbWV3aGF0IHNsb3dlci4gKE9yIG1heSBub3QuKSBOb3QgdG9sZXJhbnQgb2YgaWxsIGZvcm1lZCBYTUw6IGEgZG9jdW1lbnQgc2hvdWxkIGNvbnRhaW4gdGhlIGNvcnJlY3Qgb25lIHJvb3QgZWxlbWVudC4gQWRkaXRpb25hbCByb290IGxldmVsIGVsZW1lbnRzIHdpbGwgbm90IGJlIHN0cmVhbWVkIG91dC48cD4KK0MrKyBzdHlsZSBpbnB1dDo8dWw+Cis8bGk+YmFzZWQgb24gc3RkOjppc3RyZWFtPC9saT48bGk+b3BlcmF0b3ImZ3Q7Jmd0OzwvbGk+PC91bD4KKzxwPgorUmVhZHMgWE1MIGZyb20gYSBzdHJlYW0sIG1ha2luZyBpdCB1c2VmdWwgZm9yIG5ldHdvcmsgdHJhbnNtaXNzaW9uLiBUaGUgdHJpY2t5IHBhcnQgaXMga25vd2luZyB3aGVuIHRoZSBYTUwgZG9jdW1lbnQgaXMgY29tcGxldGUsIHNpbmNlIHRoZXJlIHdpbGwgYWxtb3N0IGNlcnRhaW5seSBiZSBvdGhlciBkYXRhIGluIHRoZSBzdHJlYW0uIFRpbnlYbWwgd2lsbCBhc3N1bWUgdGhlIFhNTCBkYXRhIGlzIGNvbXBsZXRlIGFmdGVyIGl0IHJlYWRzIHRoZSByb290IGVsZW1lbnQuIFB1dCBhbm90aGVyIHdheSwgZG9jdW1lbnRzIHRoYXQgYXJlIGlsbC1jb25zdHJ1Y3RlZCB3aXRoIG1vcmUgdGhhbiBvbmUgcm9vdCBlbGVtZW50IHdpbGwgbm90IHJlYWQgY29ycmVjdGx5LiBBbHNvIG5vdGUgdGhhdCBvcGVyYXRvciZndDsmZ3Q7IGlzIHNvbWV3aGF0IHNsb3dlciB0aGFuIFBhcnNlLCBkdWUgdG8gYm90aCBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgU1RMIGFuZCBsaW1pdGF0aW9ucyBvZiBUaW55WG1sLjxwPgogPGgzPldoaXRlIHNwYWNlIDwvaDM+Ci08cD5UaGUgd29ybGQgc2ltcGx5IGRvZXMgbm90IGFncmVlIG9uIHdoZXRoZXIgd2hpdGUgc3BhY2Ugc2hvdWxkIGJlIGtlcHQsIG9yIGNvbmRlbnNlZC4gRm9yIGV4YW1wbGUsIHByZXRlbmQgdGhlICdfJyBpcyBhIHNwYWNlLCBhbmQgbG9vayBhdCAiSGVsbG9fX19fd29ybGQiLiBIVE1MLCBhbmQgYXQgbGVhc3Qgc29tZSBYTUwgcGFyc2Vycywgd2lsbCBpbnRlcnByZXQgdGhpcyBhcyAiSGVsbG9fd29ybGQiLiBUaGV5IGNvbmRlbnNlIHdoaXRlIHNwYWNlLiBTb21lIFhNTCBwYXJzZXJzIGRvIG5vdCwgYW5kIHdpbGwgbGVhdmUgaXQgYXMgIkhlbGxvX19fX3dvcmxkIi4gKFJlbWVtYmVyIHRvIGtlZXAgcHJldGVuZGluZyB0aGUgXyBpcyBhIHNwYWNlLikgT3RoZXJzIHN1Z2dlc3QgdGhhdCBfX0hlbGxvX19fd29ybGRfXyBzaG91bGQgYmVjb21lIEhlbGxvX19fd29ybGQuPC9wPgotPHA+SXQncyBhbiBpc3N1ZSB0aGF0IGhhc24ndCBiZWVuIHJlc29sdmVkIHRvIG15IHNhdGlzZmFjdGlvbi4gVGlueVhNTCBzdXBwb3J0cyB0aGUgZmlyc3QgMiBhcHByb2FjaGVzLiBDYWxsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGY3OTllYzY0NWJmYjhkOGE5NjllODM0NzhmMzc5YzEiIHRpdGxlPSJUaGUgd29ybGQgZG9lcyBub3QgYWdyZWUgb24gd2hldGhlciB3aGl0ZSBzcGFjZSBzaG91bGQgYmUga2VwdCBvciBub3QuIj5UaVhtbEJhc2U6OlNldENvbmRlbnNlV2hpdGVTcGFjZSggYm9vbCApPC9hPiB0byBzZXQgdGhlIGRlc2lyZWQgYmVoYXZpb3IuIFRoZSBkZWZhdWx0IGlzIHRvIGNvbmRlbnNlIHdoaXRlIHNwYWNlLjwvcD4KLTxwPklmIHlvdSBjaGFuZ2UgdGhlIGRlZmF1bHQsIHlvdSBzaG91bGQgY2FsbCA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTBmNzk5ZWM2NDViZmI4ZDhhOTY5ZTgzNDc4ZjM3OWMxIiB0aXRsZT0iVGhlIHdvcmxkIGRvZXMgbm90IGFncmVlIG9uIHdoZXRoZXIgd2hpdGUgc3BhY2Ugc2hvdWxkIGJlIGtlcHQgb3Igbm90LiI+VGlYbWxCYXNlOjpTZXRDb25kZW5zZVdoaXRlU3BhY2UoIGJvb2wgKTwvYT4gYmVmb3JlIG1ha2luZyBhbnkgY2FsbHMgdG8gUGFyc2UgWE1MIGRhdGEsIGFuZCBJIGRvbid0IHJlY29tbWVuZCBjaGFuZ2luZyBpdCBhZnRlciBpdCBoYXMgYmVlbiBzZXQuPC9wPgorPHA+CitUaGUgd29ybGQgc2ltcGx5IGRvZXMgbm90IGFncmVlIG9uIHdoZXRoZXIgd2hpdGUgc3BhY2Ugc2hvdWxkIGJlIGtlcHQsIG9yIGNvbmRlbnNlZC4gRm9yIGV4YW1wbGUsIHByZXRlbmQgdGhlICdfJyBpcyBhIHNwYWNlLCBhbmQgbG9vayBhdCAiSGVsbG9fX19fd29ybGQiLiBIVE1MLCBhbmQgYXQgbGVhc3Qgc29tZSBYTUwgcGFyc2Vycywgd2lsbCBpbnRlcnByZXQgdGhpcyBhcyAiSGVsbG9fd29ybGQiLiBUaGV5IGNvbmRlbnNlIHdoaXRlIHNwYWNlLiBTb21lIFhNTCBwYXJzZXJzIGRvIG5vdCwgYW5kIHdpbGwgbGVhdmUgaXQgYXMgIkhlbGxvX19fX3dvcmxkIi4gKFJlbWVtYmVyIHRvIGtlZXAgcHJldGVuZGluZyB0aGUgXyBpcyBhIHNwYWNlLikgT3RoZXJzIHN1Z2dlc3QgdGhhdCBfX0hlbGxvX19fd29ybGRfXyBzaG91bGQgYmVjb21lIEhlbGxvX19fd29ybGQuPHA+CitJdCdzIGFuIGlzc3VlIHRoYXQgaGFzbid0IGJlZW4gcmVzb2x2ZWQgdG8gbXkgc2F0aXNmYWN0aW9uLiBUaW55WG1sIHN1cHBvcnRzIHRoZSBmaXJzdCAyIGFwcHJvYWNoZXMuIENhbGwgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2UwIj5UaVhtbEJhc2U6OlNldENvbmRlbnNlV2hpdGVTcGFjZSggYm9vbCApPC9hPiB0byBzZXQgdGhlIGRlc2lyZWQgYmVoYXZpb3IuIFRoZSBkZWZhdWx0IGlzIHRvIGNvbmRlbnNlIHdoaXRlIHNwYWNlLjxwPgorSWYgeW91IGNoYW5nZSB0aGUgZGVmYXVsdCwgeW91IHNob3VsZCBjYWxsIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNlMCI+VGlYbWxCYXNlOjpTZXRDb25kZW5zZVdoaXRlU3BhY2UoIGJvb2wgKTwvYT4gYmVmb3JlIG1ha2luZyBhbnkgY2FsbHMgdG8gUGFyc2UgWE1MIGRhdGEsIGFuZCBJIGRvbid0IHJlY29tbWVuZCBjaGFuZ2luZyBpdCBhZnRlciBpdCBoYXMgYmVlbiBzZXQuPHA+CiA8aDM+SGFuZGxlcyA8L2gzPgotPHA+V2hlcmUgYnJvd3NpbmcgYW4gWE1MIGRvY3VtZW50IGluIGEgcm9idXN0IHdheSwgaXQgaXMgaW1wb3J0YW50IHRvIGNoZWNrIGZvciBudWxsIHJldHVybnMgZnJvbSBtZXRob2QgY2FsbHMuIEFuIGVycm9yIHNhZmUgaW1wbGVtZW50YXRpb24gY2FuIGdlbmVyYXRlIGEgbG90IG9mIGNvZGUgbGlrZTo8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotVGlYbWxFbGVtZW50KiByb290ID0gZG9jdW1lbnQuRmlyc3RDaGlsZEVsZW1lbnQoICJEb2N1bWVudCIgKTsKKzxwPgorV2hlcmUgYnJvd3NpbmcgYW4gWE1MIGRvY3VtZW50IGluIGEgcm9idXN0IHdheSwgaXQgaXMgaW1wb3J0YW50IHRvIGNoZWNrIGZvciBudWxsIHJldHVybnMgZnJvbSBtZXRob2QgY2FsbHMuIEFuIGVycm9yIHNhZmUgaW1wbGVtZW50YXRpb24gY2FuIGdlbmVyYXRlIGEgbG90IG9mIGNvZGUgbGlrZTo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+VGlYbWxFbGVtZW50KiByb290ID0gZG9jdW1lbnQuRmlyc3RDaGlsZEVsZW1lbnQoICJEb2N1bWVudCIgKTsKIGlmICggcm9vdCApCiB7CiAJVGlYbWxFbGVtZW50KiBlbGVtZW50ID0gcm9vdC0mZ3Q7Rmlyc3RDaGlsZEVsZW1lbnQoICJFbGVtZW50IiApOwpAQCAtMTY5LDIyICsxMjcsMjYgQEAKIAkJCWlmICggY2hpbGQyICkKIAkJCXsKIAkJCQkvLyBGaW5hbGx5IGRvIHNvbWV0aGluZyB1c2VmdWwuCi08L3ByZT48L2Rpdj48cD5IYW5kbGVzIGhhdmUgYmVlbiBpbnRyb2R1Y2VkIHRvIGNsZWFuIHRoaXMgdXAuIFVzaW5nIHRoZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCIgdGl0bGU9IkEgVGlYbWxIYW5kbGUgaXMgYSBjbGFzcyB0aGF0IHdyYXBzIGEgbm9kZSBwb2ludGVyIHdpdGggbnVsbCBjaGVja3M7IHRoaXMgaXMgYW4gaW5jcmVkaWJseS4uLiI+VGlYbWxIYW5kbGU8L2E+IGNsYXNzLCB0aGUgcHJldmlvdXMgY29kZSByZWR1Y2VzIHRvOjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci1UaVhtbEhhbmRsZSBkb2NIYW5kbGUoICZhbXA7ZG9jdW1lbnQgKTsKLVRpWG1sRWxlbWVudCogY2hpbGQyID0gZG9jSGFuZGxlLkZpcnN0Q2hpbGQoICJEb2N1bWVudCIgKS5GaXJzdENoaWxkKCAiRWxlbWVudCIgKS5DaGlsZCggIkNoaWxkIiwgMSApLlRvRWxlbWVudCgpOworPC9wcmU+PC9kaXY+PHA+CitIYW5kbGVzIGhhdmUgYmVlbiBpbnRyb2R1Y2VkIHRvIGNsZWFuIHRoaXMgdXAuIFVzaW5nIHRoZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+IGNsYXNzLCB0aGUgcHJldmlvdXMgY29kZSByZWR1Y2VzIHRvOjxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij5UaVhtbEhhbmRsZSBkb2NIYW5kbGUoICZhbXA7ZG9jdW1lbnQgKTsKK1RpWG1sRWxlbWVudCogY2hpbGQyID0gZG9jSGFuZGxlLkZpcnN0Q2hpbGQoICJEb2N1bWVudCIgKS5GaXJzdENoaWxkKCAiRWxlbWVudCIgKS5DaGlsZCggIkNoaWxkIiwgMSApLkVsZW1lbnQoKTsKIGlmICggY2hpbGQyICkKIHsKIAkvLyBkbyBzb21ldGhpbmcgdXNlZnVsCi08L3ByZT48L2Rpdj48cD5XaGljaCBpcyBtdWNoIGVhc2llciB0byBkZWFsIHdpdGguIFNlZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCIgdGl0bGU9IkEgVGlYbWxIYW5kbGUgaXMgYSBjbGFzcyB0aGF0IHdyYXBzIGEgbm9kZSBwb2ludGVyIHdpdGggbnVsbCBjaGVja3M7IHRoaXMgaXMgYW4gaW5jcmVkaWJseS4uLiI+VGlYbWxIYW5kbGU8L2E+IGZvciBtb3JlIGluZm9ybWF0aW9uLjwvcD4KKzwvcHJlPjwvZGl2PjxwPgorV2hpY2ggaXMgbXVjaCBlYXNpZXIgdG8gZGVhbCB3aXRoLiBTZWUgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiBmb3IgbW9yZSBpbmZvcm1hdGlvbi48cD4KIDxoMz5Sb3cgYW5kIENvbHVtbiB0cmFja2luZyA8L2gzPgotPHA+QmVpbmcgYWJsZSB0byB0cmFjayBub2RlcyBhbmQgYXR0cmlidXRlcyBiYWNrIHRvIHRoZWlyIG9yaWdpbiBsb2NhdGlvbiBpbiBzb3VyY2UgZmlsZXMgY2FuIGJlIHZlcnkgaW1wb3J0YW50IGZvciBzb21lIGFwcGxpY2F0aW9ucy4gQWRkaXRpb25hbGx5LCBrbm93aW5nIHdoZXJlIHBhcnNpbmcgZXJyb3JzIG9jY3VyZWQgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZSBjYW4gYmUgdmVyeSB0aW1lIHNhdmluZy48L3A+Ci08cD5UaW55WE1MIGNhbiB0cmFja3MgdGhlIHJvdyBhbmQgY29sdW1uIG9yaWdpbiBvZiBhbGwgbm9kZXMgYW5kIGF0dHJpYnV0ZXMgaW4gYSB0ZXh0IGZpbGUuIFRoZSA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTAyNGJjZWIwNzAxODhkZjkyYzJhOGQ4ODUyZGQwODUzIiB0aXRsZT0iUmV0dXJuIHRoZSBwb3NpdGlvbiwgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZSBmaWxlLCBvZiB0aGlzIG5vZGUgb3IgYXR0cmlidXRlLiI+VGlYbWxCYXNlOjpSb3coKTwvYT4gYW5kIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjU0YmZiOWI3MGZlNmRkMjc2ZTdiMjc5Y2FiN2YwMDMiIHRpdGxlPSJTZWUgUm93KCkuIj5UaVhtbEJhc2U6OkNvbHVtbigpPC9hPiBtZXRob2RzIHJldHVybiB0aGUgb3JpZ2luIG9mIHRoZSBub2RlIGluIHRoZSBzb3VyY2UgdGV4dC4gVGhlIGNvcnJlY3QgdGFicyBjYW4gYmUgY29uZmlndXJlZCBpbiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E1MWRhYzU2MzE2Zjg5YjM1YmRiN2QwZDQzM2JhOTg4ZSIgdGl0bGU9IlNldFRhYlNpemUoKSBhbGxvd3MgdGhlIGVycm9yIHJlcG9ydGluZyBmdW5jdGlvbnMgKEVycm9yUm93KCkgYW5kIEVycm9yQ29sKCkpIHRvLi4uIj5UaVhtbERvY3VtZW50OjpTZXRUYWJTaXplKCk8L2E+LjwvcD4KKzxwPgorQmVpbmcgYWJsZSB0byB0cmFjayBub2RlcyBhbmQgYXR0cmlidXRlcyBiYWNrIHRvIHRoZWlyIG9yaWdpbiBsb2NhdGlvbiBpbiBzb3VyY2UgZmlsZXMgY2FuIGJlIHZlcnkgaW1wb3J0YW50IGZvciBzb21lIGFwcGxpY2F0aW9ucy4gQWRkaXRpb25hbGx5LCBrbm93aW5nIHdoZXJlIHBhcnNpbmcgZXJyb3JzIG9jY3VyZWQgaW4gdGhlIG9yaWdpbmFsIHNvdXJjZSBjYW4gYmUgdmVyeSB0aW1lIHNhdmluZy48cD4KK1RpbnlYbWwgY2FuIHRyYWNrcyB0aGUgcm93IGFuZCBjb2x1bW4gb3JpZ2luIG9mIGFsbCBub2RlcyBhbmQgYXR0cmlidXRlcyBpbiBhIHRleHQgZmlsZS4gVGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMyI+VGlYbWxCYXNlOjpSb3coKTwvYT4gYW5kIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNCI+VGlYbWxCYXNlOjpDb2x1bW4oKTwvYT4gbWV0aG9kcyByZXR1cm4gdGhlIG9yaWdpbiBvZiB0aGUgbm9kZSBpbiB0aGUgc291cmNlIHRleHQuIFRoZSBjb3JyZWN0IHRhYnMgY2FuIGJlIGNvbmZpZ3VyZWQgaW4gPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMjAiPlRpWG1sRG9jdW1lbnQ6OlNldFRhYlNpemUoKTwvYT4uPHA+CiA8aDI+VXNpbmcgYW5kIEluc3RhbGxpbmcgPC9oMj4KLTxwPlRvIENvbXBpbGUgYW5kIFJ1biB4bWx0ZXN0OjwvcD4KLTxwPkEgTGludXggTWFrZWZpbGUgYW5kIGEgV2luZG93cyBWaXN1YWwgQysrIC5kc3cgZmlsZSBpcyBwcm92aWRlZC4gU2ltcGx5IGNvbXBpbGUgYW5kIHJ1bi4gSXQgd2lsbCB3cml0ZSB0aGUgZmlsZSBkZW1vdGVzdC54bWwgdG8geW91ciBkaXNrIGFuZCBnZW5lcmF0ZSBvdXRwdXQgb24gdGhlIHNjcmVlbi4gSXQgYWxzbyB0ZXN0cyB3YWxraW5nIHRoZSBET00gYnkgcHJpbnRpbmcgb3V0IHRoZSBudW1iZXIgb2Ygbm9kZXMgZm91bmQgdXNpbmcgZGlmZmVyZW50IHRlY2huaXF1ZXMuPC9wPgotPHA+VGhlIExpbnV4IG1ha2VmaWxlIGlzIHZlcnkgZ2VuZXJpYyBhbmQgcnVucyBvbiBtYW55IHN5c3RlbXMgLSBpdCBpcyBjdXJyZW50bHkgdGVzdGVkIG9uIG1pbmd3IGFuZCBNYWNPU1guIFlvdSBkbyBub3QgbmVlZCB0byBydW4gJ21ha2UgZGVwZW5kJy4gVGhlIGRlcGVuZGVjaWVzIGhhdmUgYmVlbiBoYXJkIGNvZGVkLjwvcD4KKzxwPgorVG8gQ29tcGlsZSBhbmQgUnVuIHhtbHRlc3Q6PHA+CitBIExpbnV4IE1ha2VmaWxlIGFuZCBhIFdpbmRvd3MgVmlzdWFsIEMrKyAuZHN3IGZpbGUgaXMgcHJvdmlkZWQuIFNpbXBseSBjb21waWxlIGFuZCBydW4uIEl0IHdpbGwgd3JpdGUgdGhlIGZpbGUgZGVtb3Rlc3QueG1sIHRvIHlvdXIgZGlzayBhbmQgZ2VuZXJhdGUgb3V0cHV0IG9uIHRoZSBzY3JlZW4uIEl0IGFsc28gdGVzdHMgd2Fsa2luZyB0aGUgRE9NIGJ5IHByaW50aW5nIG91dCB0aGUgbnVtYmVyIG9mIG5vZGVzIGZvdW5kIHVzaW5nIGRpZmZlcmVudCB0ZWNobmlxdWVzLjxwPgorVGhlIExpbnV4IG1ha2VmaWxlIGlzIHZlcnkgZ2VuZXJpYyBhbmQgd2lsbCBwcm9iYWJseSBydW4gb24gb3RoZXIgc3lzdGVtcywgYnV0IGlzIG9ubHkgdGVzdGVkIG9uIExpbnV4LiBZb3Ugbm8gbG9uZ2VyIG5lZWQgdG8gcnVuICdtYWtlIGRlcGVuZCcuIFRoZSBkZXBlbmRlY2llcyBoYXZlIGJlZW4gaGFyZCBjb2RlZC48cD4KIDxoMz5XaW5kb3dzIHByb2plY3QgZmlsZSBmb3IgVkM2PC9oMz4KKzxwPgogPHVsPgogPGxpPgogdGlueXhtbDogdGlueXhtbCBsaWJyYXJ5LCBub24tU1RMICA8L2xpPgpAQCAtMTk1LDgxICsxNTcsODMgQEAKIDxsaT4KIHRpbnlYbWxUZXN0U1RMOiB0ZXN0IGFwcCwgU1RMICA8L2xpPgogPC91bD4KLTxoMz5NYWtlZmlsZTwvaDM+Ci08cD5BdCB0aGUgdG9wIG9mIHRoZSBtYWtlZmlsZSB5b3UgY2FuIHNldDo8L3A+Ci08cD5QUk9GSUxFLCBERUJVRywgYW5kIFRJTllYTUxfVVNFX1NUTC4gRGV0YWlscyAoc3VjaCB0aGF0IHRoZXkgYXJlKSBhcmUgaW4gdGhlIG1ha2VmaWxlLjwvcD4KLTxwPkluIHRoZSB0aW55eG1sIGRpcmVjdG9yeSwgdHlwZSAibWFrZSBjbGVhbiIgdGhlbiAibWFrZSIuIFRoZSBleGVjdXRhYmxlIGZpbGUgJ3htbHRlc3QnIHdpbGwgYmUgY3JlYXRlZC48L3A+Cis8cD4KKzxoMz5MaW51eCBNYWtlIGZpbGU8L2gzPgorPHA+CitBdCB0aGUgdG9wIG9mIHRoZSBtYWtlZmlsZSB5b3UgY2FuIHNldDo8cD4KK1BST0ZJTEUsIERFQlVHLCBhbmQgVElOWVhNTF9VU0VfU1RMLiBEZXRhaWxzIChzdWNoIHRoYXQgdGhleSBhcmUpIGFyZSBpbiB0aGUgbWFrZWZpbGUuPHA+CitJbiB0aGUgdGlueXhtbCBkaXJlY3RvcnksIHR5cGUgIm1ha2UgY2xlYW4iIHRoZW4gIm1ha2UiLiBUaGUgZXhlY3V0YWJsZSBmaWxlICd4bWx0ZXN0JyB3aWxsIGJlIGNyZWF0ZWQuPHA+CiA8aDM+VG8gVXNlIGluIGFuIEFwcGxpY2F0aW9uOjwvaDM+Ci08cD5BZGQgdGlueXhtbC5jcHAsIDxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXhtbF84aF9zb3VyY2UuaHRtbCI+dGlueXhtbC5oPC9hPiwgdGlueXhtbGVycm9yLmNwcCwgdGlueXhtbHBhcnNlci5jcHAsIHRpbnlzdHIuY3BwLCBhbmQgPGEgY2xhc3M9ImVsIiBocmVmPSJ0aW55c3RyXzhoX3NvdXJjZS5odG1sIj50aW55c3RyLmg8L2E+IHRvIHlvdXIgcHJvamVjdCBvciBtYWtlIGZpbGUuIFRoYXQncyBpdCEgSXQgc2hvdWxkIGNvbXBpbGUgb24gYW55IHJlYXNvbmFibHkgY29tcGxpYW50IEMrKyBzeXN0ZW0uIFlvdSBkbyBub3QgbmVlZCB0byBlbmFibGUgZXhjZXB0aW9ucyBvciBSVFRJIGZvciBUaW55WE1MLjwvcD4KLTxoMj5Ib3cgVGlueVhNTCB3b3Jrcy4gPC9oMj4KLTxwPkFuIGV4YW1wbGUgaXMgcHJvYmFibHkgdGhlIGJlc3Qgd2F5IHRvIGdvLiBUYWtlOiA8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotCSZsdDs/eG1sIHZlcnNpb249IjEuMCIgc3RhbmRhbG9uZT1ubyZndDsKKzxwPgorQWRkIHRpbnl4bWwuY3BwLCA8YSBjbGFzcz0iZWwiIGhyZWY9InRpbnl4bWxfOGgtc291cmNlLmh0bWwiPnRpbnl4bWwuaDwvYT4sIHRpbnl4bWxlcnJvci5jcHAsIHRpbnl4bWxwYXJzZXIuY3BwLCB0aW55c3RyLmNwcCwgYW5kIDxhIGNsYXNzPSJlbCIgaHJlZj0idGlueXN0cl84aC1zb3VyY2UuaHRtbCI+dGlueXN0ci5oPC9hPiB0byB5b3VyIHByb2plY3Qgb3IgbWFrZSBmaWxlLiBUaGF0J3MgaXQhIEl0IHNob3VsZCBjb21waWxlIG9uIGFueSByZWFzb25hYmx5IGNvbXBsaWFudCBDKysgc3lzdGVtLiBZb3UgZG8gbm90IG5lZWQgdG8gZW5hYmxlIGV4Y2VwdGlvbnMgb3IgUlRUSSBmb3IgVGlueVhtbC48cD4KKzxoMj5Ib3cgVGlueVhtbCB3b3Jrcy4gPC9oMj4KKzxwPgorQW4gZXhhbXBsZSBpcyBwcm9iYWJseSB0aGUgYmVzdCB3YXkgdG8gZ28uIFRha2U6IDxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CSZsdDs/eG1sIHZlcnNpb249IjEuMCIgc3RhbmRhbG9uZT1ubyZndDsKIAkmbHQ7IS0tIE91ciB0byBkbyBsaXN0IGRhdGEgLS0mZ3Q7CiAJJmx0O1RvRG8mZ3Q7CiAJCSZsdDtJdGVtIHByaW9yaXR5PSIxIiZndDsgR28gdG8gdGhlICZsdDtib2xkJmd0O1RveSBzdG9yZSEmbHQ7L2JvbGQmZ3Q7Jmx0Oy9JdGVtJmd0OwogCQkmbHQ7SXRlbSBwcmlvcml0eT0iMiImZ3Q7IERvIGJpbGxzJmx0Oy9JdGVtJmd0OwogCSZsdDsvVG9EbyZndDsKLTwvcHJlPjwvZGl2PjxwPkl0cyBub3QgbXVjaCBvZiBhIFRvIERvIGxpc3QsIGJ1dCBpdCB3aWxsIGRvLiBUbyByZWFkIHRoaXMgZmlsZSAoc2F5ICJkZW1vLnhtbCIpIHlvdSB3b3VsZCBjcmVhdGUgYSBkb2N1bWVudCwgYW5kIHBhcnNlIGl0IGluOiA8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotCVRpWG1sRG9jdW1lbnQgZG9jKCAiZGVtby54bWwiICk7Cis8L3ByZT48L2Rpdj48cD4KK0l0cyBub3QgbXVjaCBvZiBhIFRvIERvIGxpc3QsIGJ1dCBpdCB3aWxsIGRvLiBUbyByZWFkIHRoaXMgZmlsZSAoc2F5ICJkZW1vLnhtbCIpIHlvdSB3b3VsZCBjcmVhdGUgYSBkb2N1bWVudCwgYW5kIHBhcnNlIGl0IGluOiA8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPglUaVhtbERvY3VtZW50IGRvYyggImRlbW8ueG1sIiApOwogCWRvYy5Mb2FkRmlsZSgpOwotPC9wcmU+PC9kaXY+PHA+QW5kIGl0cyByZWFkeSB0byBnby4gTm93IGxldHMgbG9vayBhdCBzb21lIGxpbmVzIGFuZCBob3cgdGhleSByZWxhdGUgdG8gdGhlIERPTS48L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotJmx0Oz94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPW5vJmd0OwotPC9wcmU+PC9kaXY+PHA+VGhlIGZpcnN0IGxpbmUgaXMgYSBkZWNsYXJhdGlvbiwgYW5kIGdldHMgdHVybmVkIGludG8gdGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiIHRpdGxlPSJJbiBjb3JyZWN0IFhNTCB0aGUgZGVjbGFyYXRpb24gaXMgdGhlIGZpcnN0IGVudHJ5IGluIHRoZSBmaWxlLiI+VGlYbWxEZWNsYXJhdGlvbjwvYT4gY2xhc3MuIEl0IHdpbGwgYmUgdGhlIGZpcnN0IGNoaWxkIG9mIHRoZSBkb2N1bWVudCBub2RlLjwvcD4KLTxwPlRoaXMgaXMgdGhlIG9ubHkgZGlyZWN0aXZlL3NwZWNpYWwgdGFnIHBhcnNlZCBieSBUaW55WE1MLiBHZW5lcmFsbHkgZGlyZWN0aXZlIHRhZ3MgYXJlIHN0b3JlZCBpbiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiIHRpdGxlPSJBbnkgdGFnIHRoYXQgdGlueVhtbCBkb2VzbiYjMzk7dCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4iPlRpWG1sVW5rbm93bjwvYT4gc28gdGhlIGNvbW1hbmRzIHdvbnQgYmUgbG9zdCB3aGVuIGl0IGlzIHNhdmVkIGJhY2sgdG8gZGlzay48L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotJmx0OyEtLSBPdXIgdG8gZG8gbGlzdCBkYXRhIC0tJmd0OwotPC9wcmU+PC9kaXY+PHA+QSBjb21tZW50LiBXaWxsIGJlY29tZSBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCIgdGl0bGU9IkFuIFhNTCBjb21tZW50LiI+VGlYbWxDb21tZW50PC9hPiBvYmplY3QuPC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLSZsdDtUb0RvJmd0OwotPC9wcmU+PC9kaXY+PHA+VGhlICJUb0RvIiB0YWcgZGVmaW5lcyBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiBvYmplY3QuIFRoaXMgb25lIGRvZXMgbm90IGhhdmUgYW55IGF0dHJpYnV0ZXMsIGJ1dCBkb2VzIGNvbnRhaW4gMiBvdGhlciBlbGVtZW50cy48L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotJmx0O0l0ZW0gcHJpb3JpdHk9IjEiJmd0OyAKLTwvcHJlPjwvZGl2PjxwPkNyZWF0ZXMgYW5vdGhlciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4gd2hpY2ggaXMgYSBjaGlsZCBvZiB0aGUgIlRvRG8iIGVsZW1lbnQuIFRoaXMgZWxlbWVudCBoYXMgMSBhdHRyaWJ1dGUsIHdpdGggdGhlIG5hbWUgInByaW9yaXR5IiBhbmQgdGhlIHZhbHVlICIxIi48L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotR28gdG8gdGhlCi08L3ByZT48L2Rpdj48cD5BIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCIgdGl0bGU9IlhNTCB0ZXh0LiI+VGlYbWxUZXh0PC9hPi4gVGhpcyBpcyBhIGxlYWYgbm9kZSBhbmQgY2Fubm90IGNvbnRhaW4gb3RoZXIgbm9kZXMuIEl0IGlzIGEgY2hpbGQgb2YgdGhlICJJdGVtIiA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4uPC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLSZsdDtib2xkJmd0OwotPC9wcmU+PC9kaXY+PHA+QW5vdGhlciA8YSBjbGFzcz0iZWwiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4sIHRoaXMgb25lIGEgY2hpbGQgb2YgdGhlICJJdGVtIiBlbGVtZW50LjwvcD4KLTxwPkV0Yy48L3A+Ci08cD5Mb29raW5nIGF0IHRoZSBlbnRpcmUgb2JqZWN0IHRyZWUsIHlvdSBlbmQgdXAgd2l0aDogPC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLVRpWG1sRG9jdW1lbnQJCQkJCSJkZW1vLnhtbCIKLQlUaVhtbERlY2xhcmF0aW9uCQkJInZlcnNpb249JzEuMCciICJzdGFuZGFsb25lPW5vIgotCVRpWG1sQ29tbWVudAkJCQkiIE91ciB0byBkbyBsaXN0IGRhdGEiCi0JVGlYbWxFbGVtZW50CQkJCSJUb0RvIgotCQlUaVhtbEVsZW1lbnQJCQkiSXRlbSIgQXR0cmlidHV0ZXM6IHByaW9yaXR5ID0gMQotCQkJVGlYbWxUZXh0CQkJIkdvIHRvIHRoZSAiCi0JCQlUaVhtbEVsZW1lbnQJCSJib2xkIgotCQkJCVRpWG1sVGV4dAkJIlRveSBzdG9yZSEiCi0JCVRpWG1sRWxlbWVudAkJCSJJdGVtIiBBdHRyaWJ1dGVzOiBwcmlvcml0eT0yCis8L3ByZT48L2Rpdj48cD4KK0FuZCBpdHMgcmVhZHkgdG8gZ28uIE5vdyBsZXRzIGxvb2sgYXQgc29tZSBsaW5lcyBhbmQgaG93IHRoZXkgcmVsYXRlIHRvIHRoZSBET00uPHA+Cis8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPiZsdDs/eG1sIHZlcnNpb249IjEuMCIgc3RhbmRhbG9uZT1ubyZndDsKKzwvcHJlPjwvZGl2PjxwPgorVGhlIGZpcnN0IGxpbmUgaXMgYSBkZWNsYXJhdGlvbiwgYW5kIGdldHMgdHVybmVkIGludG8gdGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiPlRpWG1sRGVjbGFyYXRpb248L2E+IGNsYXNzLiBJdCB3aWxsIGJlIHRoZSBmaXJzdCBjaGlsZCBvZiB0aGUgZG9jdW1lbnQgbm9kZS48cD4KK1RoaXMgaXMgdGhlIG9ubHkgZGlyZWN0aXZlL3NwZWNpYWwgdGFnIHBhcnNlZCBieSBieSBUaW55WG1sLiBHZW5lcmFsbHkgZGlyZWN0aXZlIHRhcmdzIGFyZSBzdG9yZWQgaW4gPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+IHNvIHRoZSBjb21tYW5kcyB3b250IGJlIGxvc3Qgd2hlbiBpdCBpcyBzYXZlZCBiYWNrIHRvIGRpc2suPHA+Cis8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPiZsdDshLS0gT3VyIHRvIGRvIGxpc3QgZGF0YSAtLSZndDsKKzwvcHJlPjwvZGl2PjxwPgorQSBjb21tZW50LiBXaWxsIGJlY29tZSBhIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCI+VGlYbWxDb21tZW50PC9hPiBvYmplY3QuPHA+Cis8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPiZsdDtUb0RvJmd0OworPC9wcmU+PC9kaXY+PHA+CitUaGUgIlRvRG8iIHRhZyBkZWZpbmVzIGEgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+IG9iamVjdC4gVGhpcyBvbmUgZG9lcyBub3QgaGF2ZSBhbnkgYXR0cmlidXRlcywgYnV0IGRvZXMgY29udGFpbiAyIG90aGVyIGVsZW1lbnRzLjxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4mbHQ7SXRlbSBwcmlvcml0eT0iMSImZ3Q7IAorPC9wcmU+PC9kaXY+PHA+CitDcmVhdGVzIGFub3RoZXIgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+IHdoaWNoIGlzIGEgY2hpbGQgb2YgdGhlICJUb0RvIiBlbGVtZW50LiBUaGlzIGVsZW1lbnQgaGFzIDEgYXR0cmlidXRlLCB3aXRoIHRoZSBuYW1lICJwcmlvcml0eSIgYW5kIHRoZSB2YWx1ZSAiMSIuPHA+CitHbyB0byB0aGU8cD4KK0EgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+LiBUaGlzIGlzIGEgbGVhZiBub2RlIGFuZCBjYW5ub3QgY29udGFpbiBvdGhlciBub2Rlcy4gSXQgaXMgYSBjaGlsZCBvZiB0aGUgIkl0ZW0iIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPi48cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Jmx0O2JvbGQmZ3Q7Cis8L3ByZT48L2Rpdj48cD4KK0Fub3RoZXIgPGEgY2xhc3M9ImVsIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+LCB0aGlzIG9uZSBhIGNoaWxkIG9mIHRoZSAiSXRlbSIgZWxlbWVudC48cD4KK0V0Yy48cD4KK0xvb2tpbmcgYXQgdGhlIGVudGlyZSBvYmplY3QgdHJlZSwgeW91IGVuZCB1cCB3aXRoOiA8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPlRpWG1sRG9jdW1lbnQJCQkJImRlbW8ueG1sIgorCVRpWG1sRGVjbGFyYXRpb24JCSJ2ZXJzaW9uPScxLjAnIiAic3RhbmRhbG9uZT1ubyIKKwlUaVhtbENvbW1lbnQJCQkiIE91ciB0byBkbyBsaXN0IGRhdGEiCisJVGlYbWxFbGVtZW50CQkJIlRvRG8iCisJCVRpWG1sRWxlbWVudAkJIkl0ZW0iCQlBdHRyaWJ0dXRlczogcHJpb3JpdHkgPSAxCisJCQlUaVhtbFRleHQJCSJHbyB0byB0aGUgIgorCQkJVGlYbWxFbGVtZW50ICAgICJib2xkIgorCQkJCVRpWG1sVGV4dAkiVG95IHN0b3JlISIKKwkJVGlYbWxFbGVtZW50CQkJIkl0ZW0iCQlBdHRyaWJ1dGVzOiBwcmlvcml0eT0yCiAJCQlUaVhtbFRleHQJCQkiRG8gYmlsbHMiCi08L3ByZT48L2Rpdj48aDI+RG9jdW1lbnRhdGlvbiA8L2gyPgotPHA+VGhlIGRvY3VtZW50YXRpb24gaXMgYnVpbGQgd2l0aCBEb3h5Z2VuLCB1c2luZyB0aGUgJ2RveCcgY29uZmlndXJhdGlvbiBmaWxlLjwvcD4KKzwvcHJlPjwvZGl2PjxwPgorPGgyPkRvY3VtZW50YXRpb24gPC9oMj4KKzxwPgorVGhlIGRvY3VtZW50YXRpb24gaXMgYnVpbGQgd2l0aCBEb3h5Z2VuLCB1c2luZyB0aGUgJ2RveCcgY29uZmlndXJhdGlvbiBmaWxlLjxwPgogPGgyPkxpY2Vuc2UgPC9oMj4KLTxwPlRpbnlYTUwgaXMgcmVsZWFzZWQgdW5kZXIgdGhlIHpsaWIgbGljZW5zZTo8L3A+Ci08cD5UaGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkICdhcy1pcycsIHdpdGhvdXQgYW55IGV4cHJlc3Mgb3IgaW1wbGllZCB3YXJyYW50eS4gSW4gbm8gZXZlbnQgd2lsbCB0aGUgYXV0aG9ycyBiZSBoZWxkIGxpYWJsZSBmb3IgYW55IGRhbWFnZXMgYXJpc2luZyBmcm9tIHRoZSB1c2Ugb2YgdGhpcyBzb2Z0d2FyZS48L3A+Ci08cD5QZXJtaXNzaW9uIGlzIGdyYW50ZWQgdG8gYW55b25lIHRvIHVzZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkgcHVycG9zZSwgaW5jbHVkaW5nIGNvbW1lcmNpYWwgYXBwbGljYXRpb25zLCBhbmQgdG8gYWx0ZXIgaXQgYW5kIHJlZGlzdHJpYnV0ZSBpdCBmcmVlbHksIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyByZXN0cmljdGlvbnM6PC9wPgotPHA+MS4gVGhlIG9yaWdpbiBvZiB0aGlzIHNvZnR3YXJlIG11c3Qgbm90IGJlIG1pc3JlcHJlc2VudGVkOyB5b3UgbXVzdCBub3QgY2xhaW0gdGhhdCB5b3Ugd3JvdGUgdGhlIG9yaWdpbmFsIHNvZnR3YXJlLiBJZiB5b3UgdXNlIHRoaXMgc29mdHdhcmUgaW4gYSBwcm9kdWN0LCBhbiBhY2tub3dsZWRnbWVudCBpbiB0aGUgcHJvZHVjdCBkb2N1bWVudGF0aW9uIHdvdWxkIGJlIGFwcHJlY2lhdGVkIGJ1dCBpcyBub3QgcmVxdWlyZWQuPC9wPgotPHA+Mi4gQWx0ZXJlZCBzb3VyY2UgdmVyc2lvbnMgbXVzdCBiZSBwbGFpbmx5IG1hcmtlZCBhcyBzdWNoLCBhbmQgbXVzdCBub3QgYmUgbWlzcmVwcmVzZW50ZWQgYXMgYmVpbmcgdGhlIG9yaWdpbmFsIHNvZnR3YXJlLjwvcD4KLTxwPjMuIFRoaXMgbm90aWNlIG1heSBub3QgYmUgcmVtb3ZlZCBvciBhbHRlcmVkIGZyb20gYW55IHNvdXJjZSBkaXN0cmlidXRpb24uPC9wPgorPHA+CitUaW55WG1sIGlzIHJlbGVhc2VkIHVuZGVyIHRoZSB6bGliIGxpY2Vuc2U6PHA+CitUaGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkICdhcy1pcycsIHdpdGhvdXQgYW55IGV4cHJlc3Mgb3IgaW1wbGllZCB3YXJyYW50eS4gSW4gbm8gZXZlbnQgd2lsbCB0aGUgYXV0aG9ycyBiZSBoZWxkIGxpYWJsZSBmb3IgYW55IGRhbWFnZXMgYXJpc2luZyBmcm9tIHRoZSB1c2Ugb2YgdGhpcyBzb2Z0d2FyZS48cD4KK1Blcm1pc3Npb24gaXMgZ3JhbnRlZCB0byBhbnlvbmUgdG8gdXNlIHRoaXMgc29mdHdhcmUgZm9yIGFueSBwdXJwb3NlLCBpbmNsdWRpbmcgY29tbWVyY2lhbCBhcHBsaWNhdGlvbnMsIGFuZCB0byBhbHRlciBpdCBhbmQgcmVkaXN0cmlidXRlIGl0IGZyZWVseSwgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIHJlc3RyaWN0aW9uczo8cD4KKzEuIFRoZSBvcmlnaW4gb2YgdGhpcyBzb2Z0d2FyZSBtdXN0IG5vdCBiZSBtaXNyZXByZXNlbnRlZDsgeW91IG11c3Qgbm90IGNsYWltIHRoYXQgeW91IHdyb3RlIHRoZSBvcmlnaW5hbCBzb2Z0d2FyZS4gSWYgeW91IHVzZSB0aGlzIHNvZnR3YXJlIGluIGEgcHJvZHVjdCwgYW4gYWNrbm93bGVkZ21lbnQgaW4gdGhlIHByb2R1Y3QgZG9jdW1lbnRhdGlvbiB3b3VsZCBiZSBhcHByZWNpYXRlZCBidXQgaXMgbm90IHJlcXVpcmVkLjxwPgorMi4gQWx0ZXJlZCBzb3VyY2UgdmVyc2lvbnMgbXVzdCBiZSBwbGFpbmx5IG1hcmtlZCBhcyBzdWNoLCBhbmQgbXVzdCBub3QgYmUgbWlzcmVwcmVzZW50ZWQgYXMgYmVpbmcgdGhlIG9yaWdpbmFsIHNvZnR3YXJlLjxwPgorMy4gVGhpcyBub3RpY2UgbWF5IG5vdCBiZSByZW1vdmVkIG9yIGFsdGVyZWQgZnJvbSBhbnkgc291cmNlIGRpc3RyaWJ1dGlvbi48cD4KIDxoMj5SZWZlcmVuY2VzIDwvaDI+Ci08cD5UaGUgV29ybGQgV2lkZSBXZWIgQ29uc29ydGl1bSBpcyB0aGUgZGVmaW5pdGl2ZSBzdGFuZGFyZCBib2R5IGZvciBYTUwsIGFuZCB0aGVpciB3ZWIgcGFnZXMgY29udGFpbiBodWdlIGFtb3VudHMgb2YgaW5mb3JtYXRpb24uPC9wPgotPHA+VGhlIGRlZmluaXRpdmUgc3BlYzogPGEgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMteG1sLTIwMDQwMjA0LyI+aHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMteG1sLTIwMDQwMjA0LzwvYT48L3A+Ci08cD5JIGFsc28gcmVjb21tZW5kICJYTUwgUG9ja2V0IFJlZmVyZW5jZSIgYnkgUm9iZXJ0IEVja3N0ZWluIGFuZCBwdWJsaXNoZWQgYnkgT1JlaWxseS4uLnRoZSBib29rIHRoYXQgZ290IHRoZSB3aG9sZSB0aGluZyBzdGFydGVkLjwvcD4KKzxwPgorVGhlIFdvcmxkIFdpZGUgV2ViIENvbnNvcnRpdW0gaXMgdGhlIGRlZmluaXRpdmUgc3RhbmRhcmQgYm9keSBmb3IgWE1MLCBhbmQgdGhlcmUgd2ViIHBhZ2VzIGNvbnRhaW4gaHVnZSBhbW91bnRzIG9mIGluZm9ybWF0aW9uLjxwPgorVGhlIGRlZmluaXRpdmUgc3BlYzogPGEgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMteG1sLTIwMDQwMjA0LyI+aHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMteG1sLTIwMDQwMjA0LzwvYT48cD4KK0kgYWxzbyByZWNvbW1lbmQgIlhNTCBQb2NrZXQgUmVmZXJlbmNlIiBieSBSb2JlcnQgRWNrc3RlaW4gYW5kIHB1Ymxpc2hlZCBieSBPUmVpbGx5Li4udGhlIGJvb2sgdGhhdCBnb3QgdGhlIHdob2xlIHRoaW5nIHN0YXJ0ZWQuPHA+CiA8aDI+Q29udHJpYnV0b3JzLCBDb250YWN0cywgYW5kIGEgQnJpZWYgSGlzdG9yeSA8L2gyPgotPHA+VGhhbmtzIHZlcnkgbXVjaCB0byBldmVyeW9uZSB3aG8gc2VuZHMgc3VnZ2VzdGlvbnMsIGJ1Z3MsIGlkZWFzLCBhbmQgZW5jb3VyYWdlbWVudC4gSXQgYWxsIGhlbHBzLCBhbmQgbWFrZXMgdGhpcyBwcm9qZWN0IGZ1bi4gQSBzcGVjaWFsIHRoYW5rcyB0byB0aGUgY29udHJpYnV0b3JzIG9uIHRoZSB3ZWIgcGFnZXMgdGhhdCBrZWVwIGl0IGxpdmVseS48L3A+Ci08cD5TbyBtYW55IHBlb3BsZSBoYXZlIHNlbnQgaW4gYnVncyBhbmQgaWRlYXMsIHRoYXQgcmF0aGVyIHRoYW4gbGlzdCBoZXJlIHdlIHRyeSB0byBnaXZlIGNyZWRpdCBkdWUgaW4gdGhlICJjaGFuZ2VzLnR4dCIgZmlsZS48L3A+Ci08cD5UaW55WE1MIHdhcyBvcmlnaW5hbGx5IHdyaXR0ZW4gYnkgTGVlIFRob21hc29uLiAoT2Z0ZW4gdGhlICJJIiBzdGlsbCBpbiB0aGUgZG9jdW1lbnRhdGlvbi4pIExlZSByZXZpZXdzIGNoYW5nZXMgYW5kIHJlbGVhc2VzIG5ldyB2ZXJzaW9ucywgd2l0aCB0aGUgaGVscCBvZiBZdmVzIEJlcnF1aW4sIEFuZHJldyBFbGxlcnRvbiwgYW5kIHRoZSB0aW55WG1sIGNvbW11bml0eS48L3A+Ci08cD5XZSBhcHByZWNpYXRlIHlvdXIgc3VnZ2VzdGlvbnMsIGFuZCB3b3VsZCBsb3ZlIHRvIGtub3cgaWYgeW91IHVzZSBUaW55WE1MLiBIb3BlZnVsbHkgeW91IHdpbGwgZW5qb3kgaXQgYW5kIGZpbmQgaXQgdXNlZnVsLiBQbGVhc2UgcG9zdCBxdWVzdGlvbnMsIGNvbW1lbnRzLCBmaWxlIGJ1Z3MsIG9yIGNvbnRhY3QgdXMgYXQ6PC9wPgotPHA+d3d3LnNvdXJjZWZvcmdlLm5ldC9wcm9qZWN0cy90aW55eG1sPC9wPgotPHA+TGVlIFRob21hc29uLCBZdmVzIEJlcnF1aW4sIEFuZHJldyBFbGxlcnRvbiA8L3A+Ci08L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOworPHA+CitUaGFua3MgdmVyeSBtdWNoIHRvIGV2ZXJ5b25lIHdobyBzZW5kcyBzdWdnZXN0aW9ucywgYnVncywgaWRlYXMsIGFuZCBlbmNvdXJhZ2VtZW50LiBJdCBhbGwgaGVscHMsIGFuZCBtYWtlcyB0aGlzIHByb2plY3QgZnVuLiBBIHNwZWNpYWwgdGhhbmtzIHRvIHRoZSBjb250cmlidXRvcnMgb24gdGhlIHdlYiBwYWdlcyB0aGF0IGtlZXAgaXQgbGl2ZWx5LjxwPgorU28gbWFueSBwZW9wbGUgaGF2ZSBzZW50IGluIGJ1Z3MgYW5kIGlkZWFzLCB0aGF0IHJhdGhlciB0aGFuIGxpc3QgaGVyZSB3ZSB0cnkgdG8gZ2l2ZSBjcmVkaXQgZHVlIGluIHRoZSAiY2hhbmdlcy50eHQiIGZpbGUuPHA+CitUaW55WG1sIHdhcyBvcmlnaW5hbGx5IHdyaXR0ZW4gYmUgTGVlIFRob21hc29uLiAoT2Z0ZW4gdGhlICJJIiBzdGlsbCBpbiB0aGUgZG9jdW1lbmF0aW9uLikgTGVlIHJldmlld3MgY2hhbmdlcyBhbmQgcmVsZWFzZXMgbmV3IHZlcnNpb25zLCB3aXRoIHRoZSBoZWxwIG9mIFl2ZXMgQmVycXVpbiBhbmQgdGhlIHRpbnlYbWwgY29tbXVuaXR5LjxwPgorV2UgYXBwcmVjaWF0ZSB5b3VyIHN1Z2dlc3Rpb25zLCBhbmQgd291bGQgbG92ZSB0byBrbm93IGlmIHlvdSB1c2UgVGlueVhtbC4gSG9wZWZ1bGx5IHlvdSB3aWxsIGVuam95IGl0IGFuZCBmaW5kIGl0IHVzZWZ1bC4gUGxlYXNlIHBvc3QgcXVlc3Rpb25zLCBjb21tZW50cywgZmlsZSBidWdzLCBvciBjb250YWN0IHVzIGF0OjxwPgord3d3LnNvdXJjZWZvcmdlLm5ldC9wcm9qZWN0cy90aW55eG1sPHA+CitMZWUgVGhvbWFzb24sIFl2ZXMgQmVycXVpbiA8aHIgc2l6ZT0iMSI+PGFkZHJlc3Mgc3R5bGU9ImFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgb24gU2F0IE9jdCA4IDE0OjE1OjMwIDIwMDUgZm9yIFRpbnlYbWwgYnkmbmJzcDsKIDxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Cis8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2E+IDEuNC40IDwvc21hbGw+PC9hZGRyZXNzPgogPC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvZG9jcy9wYWdlcy5odG1sIGIvZG9jcy9wYWdlcy5odG1sCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNGE5NjU5Li4wMDAwMDAwCi0tLSBhL2RvY3MvcGFnZXMuaHRtbAorKysgL2Rldi9udWxsCkBAIC0xLDMxICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiBQYWdlIEluZGV4PC90aXRsZT4KLTxsaW5rIGhyZWY9InRhYnMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08bGluayBocmVmPSJkb3h5Z2VuLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPC9oZWFkPgotPGJvZHk+Ci08IS0tIEdlbmVyYXRlZCBieSBEb3h5Z2VuIDEuNi4yIC0tPgotPGRpdiBjbGFzcz0ibmF2aWdhdGlvbiIgaWQ9InRvcCI+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluJm5ic3A7UGFnZTwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0icGFnZXMuaHRtbCI+PHNwYW4+UmVsYXRlZCZuYnNwO1BhZ2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgotICAgIDwvdWw+Ci0gIDwvZGl2PgotPC9kaXY+Ci08ZGl2IGNsYXNzPSJjb250ZW50cyI+Ci08aDE+UmVsYXRlZCBQYWdlczwvaDE+SGVyZSBpcyBhIGxpc3Qgb2YgYWxsIHJlbGF0ZWQgZG9jdW1lbnRhdGlvbiBwYWdlczo8dWw+Ci08bGk+PGEgY2xhc3M9ImVsIiBocmVmPSJkZXByZWNhdGVkLmh0bWwiPkRlcHJlY2F0ZWQgTGlzdDwvYT4KLTwvbGk+Ci08L3VsPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL3RhYl9iLmdpZiBiL2RvY3MvdGFiX2IuZ2lmCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwZDYyMzQ4Li4wMDAwMDAwCi0tLSBhL2RvY3MvdGFiX2IuZ2lmCisrKyAvZGV2L251bGwKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvZG9jcy90YWJfbC5naWYgYi9kb2NzL3RhYl9sLmdpZgpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggOWIxZTYzMy4uMDAwMDAwMAotLS0gYS9kb2NzL3RhYl9sLmdpZgorKysgL2Rldi9udWxsCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL2RvY3MvdGFiX3IuZ2lmIGIvZG9jcy90YWJfci5naWYKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNlOWRkOWYuLjAwMDAwMDAKLS0tIGEvZG9jcy90YWJfci5naWYKKysrIC9kZXYvbnVsbApCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9kb2NzL3RhYnMuY3NzIGIvZG9jcy90YWJzLmNzcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTQ0NDE2My4uMDAwMDAwMAotLS0gYS9kb2NzL3RhYnMuY3NzCisrKyAvZGV2L251bGwKQEAgLTEsMTA1ICswLDAgQEAKLS8qIHRhYnMgc3R5bGVzLCBiYXNlZCBvbiBodHRwOi8vd3d3LmFsaXN0YXBhcnQuY29tL2FydGljbGVzL3NsaWRpbmdkb29ycyAqLwotCi1ESVYudGFicwotewotICAgZmxvYXQgICAgICAgICAgICA6IGxlZnQ7Ci0gICB3aWR0aCAgICAgICAgICAgIDogMTAwJTsKLSAgIGJhY2tncm91bmQgICAgICAgOiB1cmwoInRhYl9iLmdpZiIpIHJlcGVhdC14IGJvdHRvbTsKLSAgIG1hcmdpbi1ib3R0b20gICAgOiA0cHg7Ci19Ci0KLURJVi50YWJzIFVMCi17Ci0gICBtYXJnaW4gICAgICAgICAgIDogMHB4OwotICAgcGFkZGluZy1sZWZ0ICAgICA6IDEwcHg7Ci0gICBsaXN0LXN0eWxlICAgICAgIDogbm9uZTsKLX0KLQotRElWLnRhYnMgTEksIERJVi50YWJzIEZPUk0KLXsKLSAgIGRpc3BsYXkgICAgICAgICAgOiBpbmxpbmU7Ci0gICBtYXJnaW4gICAgICAgICAgIDogMHB4OwotICAgcGFkZGluZyAgICAgICAgICA6IDBweDsKLX0KLQotRElWLnRhYnMgRk9STQotewotICAgZmxvYXQgICAgICAgICAgICA6IHJpZ2h0OwotfQotCi1ESVYudGFicyBBCi17Ci0gICBmbG9hdCAgICAgICAgICAgIDogbGVmdDsKLSAgIGJhY2tncm91bmQgICAgICAgOiB1cmwoInRhYl9yLmdpZiIpIG5vLXJlcGVhdCByaWdodCB0b3A7Ci0gICBib3JkZXItYm90dG9tICAgIDogMXB4IHNvbGlkICM4NEIwQzc7Ci0gICBmb250LXNpemUgICAgICAgIDogODAlOwotICAgZm9udC13ZWlnaHQgICAgICA6IGJvbGQ7Ci0gICB0ZXh0LWRlY29yYXRpb24gIDogbm9uZTsKLX0KLQotRElWLnRhYnMgQTpob3ZlcgotewotICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAtMTUwcHg7Ci19Ci0KLURJVi50YWJzIEE6bGluaywgRElWLnRhYnMgQTp2aXNpdGVkLAotRElWLnRhYnMgQTphY3RpdmUsIERJVi50YWJzIEE6aG92ZXIKLXsKLSAgICAgICBjb2xvcjogIzFBNDE5RDsKLX0KLQotRElWLnRhYnMgU1BBTgotewotICAgZmxvYXQgICAgICAgICAgICA6IGxlZnQ7Ci0gICBkaXNwbGF5ICAgICAgICAgIDogYmxvY2s7Ci0gICBiYWNrZ3JvdW5kICAgICAgIDogdXJsKCJ0YWJfbC5naWYiKSBuby1yZXBlYXQgbGVmdCB0b3A7Ci0gICBwYWRkaW5nICAgICAgICAgIDogNXB4IDlweDsKLSAgIHdoaXRlLXNwYWNlICAgICAgOiBub3dyYXA7Ci19Ci0KLURJVi50YWJzICNNU2VhcmNoQm94Ci17Ci0gICBmbG9hdCAgICAgICAgICAgIDogcmlnaHQ7Ci0gICBkaXNwbGF5ICAgICAgICAgIDogaW5saW5lOwotICAgZm9udC1zaXplICAgICAgICA6IDFlbTsKLX0KLQotRElWLnRhYnMgVEQKLXsKLSAgIGZvbnQtc2l6ZSAgICAgICAgOiA4MCU7Ci0gICBmb250LXdlaWdodCAgICAgIDogYm9sZDsKLSAgIHRleHQtZGVjb3JhdGlvbiAgOiBub25lOwotfQotCi0KLQotLyogQ29tbWVudGVkIEJhY2tzbGFzaCBIYWNrIGhpZGVzIHJ1bGUgZnJvbSBJRTUtTWFjIFwqLwotRElWLnRhYnMgU1BBTiB7ZmxvYXQgOiBub25lO30KLS8qIEVuZCBJRTUtTWFjIGhhY2sgKi8KLQotRElWLnRhYnMgQTpob3ZlciBTUEFOCi17Ci0gICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSAtMTUwcHg7Ci19Ci0KLURJVi50YWJzIExJLmN1cnJlbnQgQQotewotICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAtMTUwcHg7Ci0gICBib3JkZXItd2lkdGggICAgIDogMHB4OwotfQotCi1ESVYudGFicyBMSS5jdXJyZW50IFNQQU4KLXsKLSAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIC0xNTBweDsKLSAgIHBhZGRpbmctYm90dG9tICAgOiA2cHg7Ci19Ci0KLURJVi5uYXZwYXRoCi17Ci0gICBiYWNrZ3JvdW5kICAgICAgIDogbm9uZTsKLSAgIGJvcmRlciAgICAgICAgICAgOiBub25lOwotICAgYm9yZGVyLWJvdHRvbSAgICA6IDFweCBzb2xpZCAjODRCMEM3OwotICAgdGV4dC1hbGlnbiAgICAgICA6IGNlbnRlcjsKLSAgIG1hcmdpbiAgICAgICAgICAgOiAycHg7Ci0gICBwYWRkaW5nICAgICAgICAgIDogMnB4OwotfQpkaWZmIC0tZ2l0IGEvZG9jcy90aW55c3RyXzhoLXNvdXJjZS5odG1sIGIvZG9jcy90aW55c3RyXzhoLXNvdXJjZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ0MGEzYzUKLS0tIC9kZXYvbnVsbAorKysgYi9kb2NzL3RpbnlzdHJfOGgtc291cmNlLmh0bWwKQEAgLTAsMCArMSwzMDYgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iPgorPGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1pc28tODg1OS0xIj4KKzx0aXRsZT5UaW55WG1sOiB0aW55c3RyLmggU291cmNlIEZpbGU8L3RpdGxlPgorPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPkNsYXNzJm5ic3A7TWVtYmVyczwvYT48L2Rpdj4KKzxoMT50aW55c3RyLmg8L2gxPjxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+PGEgbmFtZT0ibDAwMDAxIj48L2E+MDAwMDEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8qPC9zcGFuPgorPGEgbmFtZT0ibDAwMDAyIj48L2E+MDAwMDIgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPnd3dy5zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvdGlueXhtbDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAwMyI+PC9hPjAwMDAzIDxzcGFuIGNsYXNzPSJjb21tZW50Ij5PcmlnaW5hbCBmaWxlIGJ5IFl2ZXMgQmVycXVpbi48L3NwYW4+Cis8YSBuYW1lPSJsMDAwMDQiPjwvYT4wMDAwNCA8c3BhbiBjbGFzcz0iY29tbWVudCI+PC9zcGFuPgorPGEgbmFtZT0ibDAwMDA1Ij48L2E+MDAwMDUgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPlRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgJ2FzLWlzJywgd2l0aG91dCBhbnkgZXhwcmVzcyBvciBpbXBsaWVkPC9zcGFuPgorPGEgbmFtZT0ibDAwMDA2Ij48L2E+MDAwMDYgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPndhcnJhbnR5LiBJbiBubyBldmVudCB3aWxsIHRoZSBhdXRob3JzIGJlIGhlbGQgbGlhYmxlIGZvciBhbnk8L3NwYW4+Cis8YSBuYW1lPSJsMDAwMDciPjwvYT4wMDAwNyA8c3BhbiBjbGFzcz0iY29tbWVudCI+ZGFtYWdlcyBhcmlzaW5nIGZyb20gdGhlIHVzZSBvZiB0aGlzIHNvZnR3YXJlLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAwOCI+PC9hPjAwMDA4IDxzcGFuIGNsYXNzPSJjb21tZW50Ij48L3NwYW4+Cis8YSBuYW1lPSJsMDAwMDkiPjwvYT4wMDAwOSA8c3BhbiBjbGFzcz0iY29tbWVudCI+UGVybWlzc2lvbiBpcyBncmFudGVkIHRvIGFueW9uZSB0byB1c2UgdGhpcyBzb2Z0d2FyZSBmb3IgYW55PC9zcGFuPgorPGEgbmFtZT0ibDAwMDEwIj48L2E+MDAwMTAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPnB1cnBvc2UsIGluY2x1ZGluZyBjb21tZXJjaWFsIGFwcGxpY2F0aW9ucywgYW5kIHRvIGFsdGVyIGl0IGFuZDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAxMSI+PC9hPjAwMDExIDxzcGFuIGNsYXNzPSJjb21tZW50Ij5yZWRpc3RyaWJ1dGUgaXQgZnJlZWx5LCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgcmVzdHJpY3Rpb25zOjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAxMiI+PC9hPjAwMDEyIDxzcGFuIGNsYXNzPSJjb21tZW50Ij48L3NwYW4+Cis8YSBuYW1lPSJsMDAwMTMiPjwvYT4wMDAxMyA8c3BhbiBjbGFzcz0iY29tbWVudCI+MS4gVGhlIG9yaWdpbiBvZiB0aGlzIHNvZnR3YXJlIG11c3Qgbm90IGJlIG1pc3JlcHJlc2VudGVkOyB5b3UgbXVzdDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAxNCI+PC9hPjAwMDE0IDxzcGFuIGNsYXNzPSJjb21tZW50Ij5ub3QgY2xhaW0gdGhhdCB5b3Ugd3JvdGUgdGhlIG9yaWdpbmFsIHNvZnR3YXJlLiBJZiB5b3UgdXNlIHRoaXM8L3NwYW4+Cis8YSBuYW1lPSJsMDAwMTUiPjwvYT4wMDAxNSA8c3BhbiBjbGFzcz0iY29tbWVudCI+c29mdHdhcmUgaW4gYSBwcm9kdWN0LCBhbiBhY2tub3dsZWRnbWVudCBpbiB0aGUgcHJvZHVjdCBkb2N1bWVudGF0aW9uPC9zcGFuPgorPGEgbmFtZT0ibDAwMDE2Ij48L2E+MDAwMTYgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPndvdWxkIGJlIGFwcHJlY2lhdGVkIGJ1dCBpcyBub3QgcmVxdWlyZWQuPC9zcGFuPgorPGEgbmFtZT0ibDAwMDE3Ij48L2E+MDAwMTcgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAxOCI+PC9hPjAwMDE4IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4yLiBBbHRlcmVkIHNvdXJjZSB2ZXJzaW9ucyBtdXN0IGJlIHBsYWlubHkgbWFya2VkIGFzIHN1Y2gsIGFuZDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAxOSI+PC9hPjAwMDE5IDxzcGFuIGNsYXNzPSJjb21tZW50Ij5tdXN0IG5vdCBiZSBtaXNyZXByZXNlbnRlZCBhcyBiZWluZyB0aGUgb3JpZ2luYWwgc29mdHdhcmUuPC9zcGFuPgorPGEgbmFtZT0ibDAwMDIwIj48L2E+MDAwMjAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAyMSI+PC9hPjAwMDIxIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4zLiBUaGlzIG5vdGljZSBtYXkgbm90IGJlIHJlbW92ZWQgb3IgYWx0ZXJlZCBmcm9tIGFueSBzb3VyY2U8L3NwYW4+Cis8YSBuYW1lPSJsMDAwMjIiPjwvYT4wMDAyMiA8c3BhbiBjbGFzcz0iY29tbWVudCI+ZGlzdHJpYnV0aW9uLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAyMyI+PC9hPjAwMDIzIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4qLzwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAyNCI+PC9hPjAwMDI0IAorPGEgbmFtZT0ibDAwMDI1Ij48L2E+MDAwMjUgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8qPC9zcGFuPgorPGEgbmFtZT0ibDAwMDI2Ij48L2E+MDAwMjYgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAqIFRISVMgRklMRSBXQVMgQUxURVJFRCBCWSBUeWdlIExvdnNldCwgNy4gQXByaWwgMjAwNS48L3NwYW4+Cis8YSBuYW1lPSJsMDAwMjciPjwvYT4wMDAyNyA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICo8L3NwYW4+Cis8YSBuYW1lPSJsMDAwMjgiPjwvYT4wMDAyOCA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICogLSBjb21wbGV0ZWx5IHJld3JpdHRlbi4gY29tcGFjdCwgY2xlYW4sIGFuZCBmYXN0IGltcGxlbWVudGF0aW9uLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAyOSI+PC9hPjAwMDI5IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gKiAtIHNpemVvZihUaVhtbFN0cmluZykgPSBwb2ludGVyIHNpemUgKDQgYnl0ZXMgb24gMzItYml0IHN5c3RlbXMpPC9zcGFuPgorPGEgbmFtZT0ibDAwMDMwIj48L2E+MDAwMzAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAqIC0gZml4ZWQgcmVzZXJ2ZSgpIHRvIHdvcmsgYXMgcGVyIHNwZWNpZmljYXRpb24uPC9zcGFuPgorPGEgbmFtZT0ibDAwMDMxIj48L2E+MDAwMzEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAqIC0gZml4ZWQgYnVnZ3kgY29tcGFyZXMgb3BlcmF0b3I9PSgpLCBvcGVyYXRvciZsdDsoKSwgYW5kIG9wZXJhdG9yJmd0OygpPC9zcGFuPgorPGEgbmFtZT0ibDAwMDMyIj48L2E+MDAwMzIgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAqIC0gZml4ZWQgb3BlcmF0b3IrPSgpIHRvIHRha2UgYSBjb25zdCByZWYgYXJndW1lbnQsIGZvbGxvd2luZyBzcGVjLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAzMyI+PC9hPjAwMDMzIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gKiAtIGFkZGVkICJjb3B5IiBjb25zdHJ1Y3RvciB3aXRoIGxlbmd0aCwgYW5kIG1vc3QgY29tcGFyZSBvcGVyYXRvcnMuPC9zcGFuPgorPGEgbmFtZT0ibDAwMDM0Ij48L2E+MDAwMzQgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAqIC0gYWRkZWQgc3dhcCgpLCBjbGVhcigpLCBzaXplKCksIGNhcGFjaXR5KCksIG9wZXJhdG9yKygpLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAzNSI+PC9hPjAwMDM1IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gKi88L3NwYW4+Cis8YSBuYW1lPSJsMDAwMzYiPjwvYT4wMDAzNiAKKzxhIG5hbWU9ImwwMDAzNyI+PC9hPjAwMDM3IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNpZm5kZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAzOCI+PC9hPjAwMDM4IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAzOSI+PC9hPjAwMDM5IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNpZm5kZWYgVElYTUxfU1RSSU5HX0lOQ0xVREVEPC9zcGFuPgorPGEgbmFtZT0ibDAwMDQwIj48L2E+MDAwNDAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNkZWZpbmUgVElYTUxfU1RSSU5HX0lOQ0xVREVEPC9zcGFuPgorPGEgbmFtZT0ibDAwMDQxIj48L2E+MDAwNDEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwMDQyIj48L2E+MDAwNDIgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2luY2x1ZGUgJmx0O2Fzc2VydC5oJmd0Ozwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA0MyI+PC9hPjAwMDQzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNpbmNsdWRlICZsdDtzdHJpbmcuaCZndDs8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNDQiPjwvYT4wMDA0NCAKKzxhIG5hbWU9ImwwMDA0NSI+PC9hPjAwMDQ1IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA0NiI+PC9hPjAwMDQ2IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICBUaVhtbFN0cmluZyBpcyBhbiBlbXVsYXRpb24gb2YgYSBzdWJzZXQgb2YgdGhlIHN0ZDo6c3RyaW5nIHRlbXBsYXRlLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA0NyI+PC9hPjAwMDQ3IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICBJdHMgcHVycG9zZSBpcyB0byBhbGxvdyBjb21waWxpbmcgVGlueVhNTCBvbiBjb21waWxlcnMgd2l0aCBubyBvciBwb29yIFNUTCBzdXBwb3J0Ljwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA0OCI+PC9hPjAwMDQ4IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICBPbmx5IHRoZSBtZW1iZXIgZnVuY3Rpb25zIHJlbGV2YW50IHRvIHRoZSBUaW55WE1MIHByb2plY3QgaGF2ZSBiZWVuIGltcGxlbWVudGVkLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA0OSI+PC9hPjAwMDQ5IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICBUaGUgYnVmZmVyIGFsbG9jYXRpb24gaXMgbWFkZSBieSBhIHNpbXBsaXN0aWMgcG93ZXIgb2YgMiBsaWtlIG1lY2hhbmlzbSA6IGlmIHdlIGluY3JlYXNlPC9zcGFuPgorPGEgbmFtZT0ibDAwMDUwIj48L2E+MDAwNTAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgIGEgc3RyaW5nIGFuZCB0aGVyZSdzIG5vIG1vcmUgcm9vbSwgd2UgYWxsb2NhdGUgYSBidWZmZXIgdHdpY2UgYXMgYmlnIGFzIHdlIG5lZWQuPC9zcGFuPgorPGEgbmFtZT0ibDAwMDUxIj48L2E+MDAwNTEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiovPC9zcGFuPgorPGEgbmFtZT0ibDAwMDUyIj48L2E+MDAwNTIgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj5UaVhtbFN0cmluZworPGEgbmFtZT0ibDAwMDUzIj48L2E+MDAwNTMgeworPGEgbmFtZT0ibDAwMDU0Ij48L2E+MDAwNTQgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPiA6Cis8YSBuYW1lPSJsMDAwNTUiPjwvYT4wMDA1NSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFRoZSBzaXplIHR5cGUgdXNlZDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA1NiI+PC9hPjAwMDU2ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dHlwZWRlZjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj51bnNpZ25lZDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IHNpemVfdHlwZTsKKzxhIG5hbWU9ImwwMDA1NyI+PC9hPjAwMDU3IAorPGEgbmFtZT0ibDAwMDU4Ij48L2E+MDAwNTggICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBFcnJvciB2YWx1ZSBmb3IgZmluZCBwcmltaXRpdmU8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNTkiPjwvYT4wMDA1OSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzaXplX3R5cGUgbnBvczsgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vID0gLTE7PC9zcGFuPgorPGEgbmFtZT0ibDAwMDYwIj48L2E+MDAwNjAgCis8YSBuYW1lPSJsMDAwNjEiPjwvYT4wMDA2MSAKKzxhIG5hbWU9ImwwMDA2MiI+PC9hPjAwMDYyICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gVGlYbWxTdHJpbmcgZW1wdHkgY29uc3RydWN0b3I8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNjMiPjwvYT4wMDA2MyAgICAgVGlYbWxTdHJpbmcgKCkgOiByZXBfKCZhbXA7bnVsbHJlcF8pCis8YSBuYW1lPSJsMDAwNjQiPjwvYT4wMDA2NCAgICAgeworPGEgbmFtZT0ibDAwMDY1Ij48L2E+MDAwNjUgICAgIH0KKzxhIG5hbWU9ImwwMDA2NiI+PC9hPjAwMDY2IAorPGEgbmFtZT0ibDAwMDY3Ij48L2E+MDAwNjcgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBUaVhtbFN0cmluZyBjb3B5IGNvbnN0cnVjdG9yPC9zcGFuPgorPGEgbmFtZT0ibDAwMDY4Ij48L2E+MDAwNjggICAgIFRpWG1sU3RyaW5nICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGNvcHkpCis8YSBuYW1lPSJsMDAwNjkiPjwvYT4wMDA2OSAgICAgeworPGEgbmFtZT0ibDAwMDcwIj48L2E+MDAwNzAgICAgICAgICBpbml0KGNvcHkubGVuZ3RoKCkpOworPGEgbmFtZT0ibDAwMDcxIj48L2E+MDAwNzEgICAgICAgICBtZW1jcHkoc3RhcnQoKSwgY29weS5kYXRhKCksIGxlbmd0aCgpKTsKKzxhIG5hbWU9ImwwMDA3MiI+PC9hPjAwMDcyICAgICB9Cis8YSBuYW1lPSJsMDAwNzMiPjwvYT4wMDA3MyAKKzxhIG5hbWU9ImwwMDA3NCI+PC9hPjAwMDc0ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gVGlYbWxTdHJpbmcgY29uc3RydWN0b3IsIGJhc2VkIG9uIGEgc3RyaW5nPC9zcGFuPgorPGEgbmFtZT0ibDAwMDc1Ij48L2E+MDAwNzUgICAgIFRpWG1sU3RyaW5nICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBjb3B5KQorPGEgbmFtZT0ibDAwMDc2Ij48L2E+MDAwNzYgICAgIHsKKzxhIG5hbWU9ImwwMDA3NyI+PC9hPjAwMDc3ICAgICAgICAgaW5pdCggc3RhdGljX2Nhc3QmbHQ7c2l6ZV90eXBlJmd0Oyggc3RybGVuKGNvcHkpICkpOworPGEgbmFtZT0ibDAwMDc4Ij48L2E+MDAwNzggICAgICAgICBtZW1jcHkoc3RhcnQoKSwgY29weSwgbGVuZ3RoKCkpOworPGEgbmFtZT0ibDAwMDc5Ij48L2E+MDAwNzkgICAgIH0KKzxhIG5hbWU9ImwwMDA4MCI+PC9hPjAwMDgwIAorPGEgbmFtZT0ibDAwMDgxIj48L2E+MDAwODEgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBUaVhtbFN0cmluZyBjb25zdHJ1Y3RvciwgYmFzZWQgb24gYSBzdHJpbmc8L3NwYW4+Cis8YSBuYW1lPSJsMDAwODIiPjwvYT4wMDA4MiAgICAgVGlYbWxTdHJpbmcgKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIHN0ciwgc2l6ZV90eXBlIGxlbikKKzxhIG5hbWU9ImwwMDA4MyI+PC9hPjAwMDgzICAgICB7Cis8YSBuYW1lPSJsMDAwODQiPjwvYT4wMDA4NCAgICAgICAgIGluaXQobGVuKTsKKzxhIG5hbWU9ImwwMDA4NSI+PC9hPjAwMDg1ICAgICAgICAgbWVtY3B5KHN0YXJ0KCksIHN0ciwgbGVuKTsKKzxhIG5hbWU9ImwwMDA4NiI+PC9hPjAwMDg2ICAgICB9Cis8YSBuYW1lPSJsMDAwODciPjwvYT4wMDA4NyAKKzxhIG5hbWU9ImwwMDA4OCI+PC9hPjAwMDg4ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gVGlYbWxTdHJpbmcgZGVzdHJ1Y3Rvcjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA4OSI+PC9hPjAwMDg5ICAgICB+VGlYbWxTdHJpbmcgKCkKKzxhIG5hbWU9ImwwMDA5MCI+PC9hPjAwMDkwICAgICB7Cis8YSBuYW1lPSJsMDAwOTEiPjwvYT4wMDA5MSAgICAgICAgIHF1aXQoKTsKKzxhIG5hbWU9ImwwMDA5MiI+PC9hPjAwMDkyICAgICB9Cis8YSBuYW1lPSJsMDAwOTMiPjwvYT4wMDA5MyAKKzxhIG5hbWU9ImwwMDA5NCI+PC9hPjAwMDk0ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gPSBvcGVyYXRvcjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA5NSI+PC9hPjAwMDk1ICAgICBUaVhtbFN0cmluZyZhbXA7IG9wZXJhdG9yID0gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIGNvcHkpCis8YSBuYW1lPSJsMDAwOTYiPjwvYT4wMDA5NiAgICAgeworPGEgbmFtZT0ibDAwMDk3Ij48L2E+MDAwOTcgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gYXNzaWduKCBjb3B5LCAoc2l6ZV90eXBlKXN0cmxlbihjb3B5KSk7Cis8YSBuYW1lPSJsMDAwOTgiPjwvYT4wMDA5OCAgICAgfQorPGEgbmFtZT0ibDAwMDk5Ij48L2E+MDAwOTkgCis8YSBuYW1lPSJsMDAxMDAiPjwvYT4wMDEwMCAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vID0gb3BlcmF0b3I8L3NwYW4+Cis8YSBuYW1lPSJsMDAxMDEiPjwvYT4wMDEwMSAgICAgVGlYbWxTdHJpbmcmYW1wOyBvcGVyYXRvciA9ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGNvcHkpCis8YSBuYW1lPSJsMDAxMDIiPjwvYT4wMDEwMiAgICAgeworPGEgbmFtZT0ibDAwMTAzIj48L2E+MDAxMDMgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gYXNzaWduKGNvcHkuc3RhcnQoKSwgY29weS5sZW5ndGgoKSk7Cis8YSBuYW1lPSJsMDAxMDQiPjwvYT4wMDEwNCAgICAgfQorPGEgbmFtZT0ibDAwMTA1Ij48L2E+MDAxMDUgCis8YSBuYW1lPSJsMDAxMDYiPjwvYT4wMDEwNiAKKzxhIG5hbWU9ImwwMDEwNyI+PC9hPjAwMTA3ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gKz0gb3BlcmF0b3IuIE1hcHMgdG8gYXBwZW5kPC9zcGFuPgorPGEgbmFtZT0ibDAwMTA4Ij48L2E+MDAxMDggICAgIFRpWG1sU3RyaW5nJmFtcDsgb3BlcmF0b3IgKz0gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIHN1ZmZpeCkKKzxhIG5hbWU9ImwwMDEwOSI+PC9hPjAwMTA5ICAgICB7Cis8YSBuYW1lPSJsMDAxMTAiPjwvYT4wMDExMCAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBhcHBlbmQoc3VmZml4LCBzdGF0aWNfY2FzdCZsdDtzaXplX3R5cGUmZ3Q7KCBzdHJsZW4oc3VmZml4KSApKTsKKzxhIG5hbWU9ImwwMDExMSI+PC9hPjAwMTExICAgICB9Cis8YSBuYW1lPSJsMDAxMTIiPjwvYT4wMDExMiAKKzxhIG5hbWU9ImwwMDExMyI+PC9hPjAwMTEzICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gKz0gb3BlcmF0b3IuIE1hcHMgdG8gYXBwZW5kPC9zcGFuPgorPGEgbmFtZT0ibDAwMTE0Ij48L2E+MDAxMTQgICAgIFRpWG1sU3RyaW5nJmFtcDsgb3BlcmF0b3IgKz0gKDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gc2luZ2xlKQorPGEgbmFtZT0ibDAwMTE1Ij48L2E+MDAxMTUgICAgIHsKKzxhIG5hbWU9ImwwMDExNiI+PC9hPjAwMTE2ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGFwcGVuZCgmYW1wO3NpbmdsZSwgMSk7Cis8YSBuYW1lPSJsMDAxMTciPjwvYT4wMDExNyAgICAgfQorPGEgbmFtZT0ibDAwMTE4Ij48L2E+MDAxMTggCis8YSBuYW1lPSJsMDAxMTkiPjwvYT4wMDExOSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vICs9IG9wZXJhdG9yLiBNYXBzIHRvIGFwcGVuZDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDEyMCI+PC9hPjAwMTIwICAgICBUaVhtbFN0cmluZyZhbXA7IG9wZXJhdG9yICs9ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IHN1ZmZpeCkKKzxhIG5hbWU9ImwwMDEyMSI+PC9hPjAwMTIxICAgICB7Cis8YSBuYW1lPSJsMDAxMjIiPjwvYT4wMDEyMiAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBhcHBlbmQoc3VmZml4LmRhdGEoKSwgc3VmZml4Lmxlbmd0aCgpKTsKKzxhIG5hbWU9ImwwMDEyMyI+PC9hPjAwMTIzICAgICB9Cis8YSBuYW1lPSJsMDAxMjQiPjwvYT4wMDEyNCAKKzxhIG5hbWU9ImwwMDEyNSI+PC9hPjAwMTI1IAorPGEgbmFtZT0ibDAwMTI2Ij48L2E+MDAxMjYgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBDb252ZXJ0IGEgVGlYbWxTdHJpbmcgaW50byBhIG51bGwtdGVybWluYXRlZCBjaGFyICo8L3NwYW4+Cis8YSBuYW1lPSJsMDAxMjciPjwvYT4wMDEyNyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogY19zdHIgKCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0IDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiByZXBfLSZndDtzdHI7IH0KKzxhIG5hbWU9ImwwMDEyOCI+PC9hPjAwMTI4IAorPGEgbmFtZT0ibDAwMTI5Ij48L2E+MDAxMjkgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBDb252ZXJ0IGEgVGlYbWxTdHJpbmcgaW50byBhIGNoYXIgKiAobmVlZCBub3QgYmUgbnVsbCB0ZXJtaW5hdGVkKS48L3NwYW4+Cis8YSBuYW1lPSJsMDAxMzAiPjwvYT4wMDEzMCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogZGF0YSAoKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHJlcF8tJmd0O3N0cjsgfQorPGEgbmFtZT0ibDAwMTMxIj48L2E+MDAxMzEgCis8YSBuYW1lPSJsMDAxMzIiPjwvYT4wMDEzMiAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFJldHVybiB0aGUgbGVuZ3RoIG9mIGEgVGlYbWxTdHJpbmc8L3NwYW4+Cis8YSBuYW1lPSJsMDAxMzMiPjwvYT4wMDEzMyAgICAgc2l6ZV90eXBlIGxlbmd0aCAoKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHJlcF8tJmd0O3NpemU7IH0KKzxhIG5hbWU9ImwwMDEzNCI+PC9hPjAwMTM0IAorPGEgbmFtZT0ibDAwMTM1Ij48L2E+MDAxMzUgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBBbGlhcyBmb3IgbGVuZ3RoKCk8L3NwYW4+Cis8YSBuYW1lPSJsMDAxMzYiPjwvYT4wMDEzNiAgICAgc2l6ZV90eXBlIHNpemUgKCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0IDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiByZXBfLSZndDtzaXplOyB9Cis8YSBuYW1lPSJsMDAxMzciPjwvYT4wMDEzNyAKKzxhIG5hbWU9ImwwMDEzOCI+PC9hPjAwMTM4ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gQ2hlY2tzIGlmIGEgVGlYbWxTdHJpbmcgaXMgZW1wdHk8L3NwYW4+Cis8YSBuYW1lPSJsMDAxMzkiPjwvYT4wMDEzOSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBlbXB0eSAoKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHJlcF8tJmd0O3NpemUgPT0gMDsgfQorPGEgbmFtZT0ibDAwMTQwIj48L2E+MDAxNDAgCis8YSBuYW1lPSJsMDAxNDEiPjwvYT4wMDE0MSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFJldHVybiBjYXBhY2l0eSBvZiBzdHJpbmc8L3NwYW4+Cis8YSBuYW1lPSJsMDAxNDIiPjwvYT4wMDE0MiAgICAgc2l6ZV90eXBlIGNhcGFjaXR5ICgpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gcmVwXy0mZ3Q7Y2FwYWNpdHk7IH0KKzxhIG5hbWU9ImwwMDE0MyI+PC9hPjAwMTQzIAorPGEgbmFtZT0ibDAwMTQ0Ij48L2E+MDAxNDQgCis8YSBuYW1lPSJsMDAxNDUiPjwvYT4wMDE0NSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIHNpbmdsZSBjaGFyIGV4dHJhY3Rpb248L3NwYW4+Cis8YSBuYW1lPSJsMDAxNDYiPjwvYT4wMDE0NiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+JmFtcDsgYXQgKHNpemVfdHlwZSBpbmRleCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0PC9zcGFuPgorPGEgbmFtZT0ibDAwMTQ3Ij48L2E+MDAxNDcgPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgICA8L3NwYW4+eworPGEgbmFtZT0ibDAwMTQ4Ij48L2E+MDAxNDggICAgICAgICBhc3NlcnQoIGluZGV4ICZsdDsgbGVuZ3RoKCkgKTsKKzxhIG5hbWU9ImwwMDE0OSI+PC9hPjAwMTQ5ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHJlcF8tJmd0O3N0clsgaW5kZXggXTsKKzxhIG5hbWU9ImwwMDE1MCI+PC9hPjAwMTUwICAgICB9Cis8YSBuYW1lPSJsMDAxNTEiPjwvYT4wMDE1MSAKKzxhIG5hbWU9ImwwMDE1MiI+PC9hPjAwMTUyICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gW10gb3BlcmF0b3I8L3NwYW4+Cis8YSBuYW1lPSJsMDAxNTMiPjwvYT4wMDE1MyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiZhbXA7IG9wZXJhdG9yIFtdIChzaXplX3R5cGUgaW5kZXgpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDE1NCI+PC9hPjAwMTU0IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gICAgPC9zcGFuPnsKKzxhIG5hbWU9ImwwMDE1NSI+PC9hPjAwMTU1ICAgICAgICAgYXNzZXJ0KCBpbmRleCAmbHQ7IGxlbmd0aCgpICk7Cis8YSBuYW1lPSJsMDAxNTYiPjwvYT4wMDE1NiAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiByZXBfLSZndDtzdHJbIGluZGV4IF07Cis8YSBuYW1lPSJsMDAxNTciPjwvYT4wMDE1NyAgICAgfQorPGEgbmFtZT0ibDAwMTU4Ij48L2E+MDAxNTggCis8YSBuYW1lPSJsMDAxNTkiPjwvYT4wMDE1OSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIGZpbmQgYSBjaGFyIGluIGEgc3RyaW5nLiBSZXR1cm4gVGlYbWxTdHJpbmc6Om5wb3MgaWYgbm90IGZvdW5kPC9zcGFuPgorPGEgbmFtZT0ibDAwMTYwIj48L2E+MDAxNjAgICAgIHNpemVfdHlwZSBmaW5kICg8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+IGxvb2t1cCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0PC9zcGFuPgorPGEgbmFtZT0ibDAwMTYxIj48L2E+MDAxNjEgPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgICA8L3NwYW4+eworPGEgbmFtZT0ibDAwMTYyIj48L2E+MDAxNjIgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gZmluZChsb29rdXAsIDApOworPGEgbmFtZT0ibDAwMTYzIj48L2E+MDAxNjMgICAgIH0KKzxhIG5hbWU9ImwwMDE2NCI+PC9hPjAwMTY0IAorPGEgbmFtZT0ibDAwMTY1Ij48L2E+MDAxNjUgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBmaW5kIGEgY2hhciBpbiBhIHN0cmluZyBmcm9tIGFuIG9mZnNldC4gUmV0dXJuIFRpWG1sU3RyaW5nOjpucG9zIGlmIG5vdCBmb3VuZDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDE2NiI+PC9hPjAwMTY2ICAgICBzaXplX3R5cGUgZmluZCAoPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiB0b2ZpbmQsIHNpemVfdHlwZSBvZmZzZXQpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDE2NyI+PC9hPjAwMTY3IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gICAgPC9zcGFuPnsKKzxhIG5hbWU9ImwwMDE2OCI+PC9hPjAwMTY4ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKG9mZnNldCAmZ3Q7PSBsZW5ndGgoKSkgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IG5wb3M7Cis8YSBuYW1lPSJsMDAxNjkiPjwvYT4wMDE2OSAKKzxhIG5hbWU9ImwwMDE3MCI+PC9hPjAwMTcwICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5mb3I8L3NwYW4+ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHAgPSBjX3N0cigpICsgb2Zmc2V0OyAqcCAhPSA8c3BhbiBjbGFzcz0iY2hhcmxpdGVyYWwiPidcMCc8L3NwYW4+OyArK3ApCis8YSBuYW1lPSJsMDAxNzEiPjwvYT4wMDE3MSAgICAgICAgIHsKKzxhIG5hbWU9ImwwMDE3MiI+PC9hPjAwMTcyICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKCpwID09IHRvZmluZCkgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHN0YXRpY19jYXN0Jmx0OyBzaXplX3R5cGUgJmd0OyggcCAtIGNfc3RyKCkgKTsKKzxhIG5hbWU9ImwwMDE3MyI+PC9hPjAwMTczICAgICAgICAgfQorPGEgbmFtZT0ibDAwMTc0Ij48L2E+MDAxNzQgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gbnBvczsKKzxhIG5hbWU9ImwwMDE3NSI+PC9hPjAwMTc1ICAgICB9Cis8YSBuYW1lPSJsMDAxNzYiPjwvYT4wMDE3NiAKKzxhIG5hbWU9ImwwMDE3NyI+PC9hPjAwMTc3ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IGNsZWFyICgpCis8YSBuYW1lPSJsMDAxNzgiPjwvYT4wMDE3OCAgICAgeworPGEgbmFtZT0ibDAwMTc5Ij48L2E+MDAxNzkgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly9MZWU6PC9zcGFuPgorPGEgbmFtZT0ibDAwMTgwIj48L2E+MDAxODAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly9UaGUgb3JpZ2luYWwgd2FzIGp1c3QgdG9vIHN0cmFuZ2UsIHRob3VnaCBjb3JyZWN0Ojwvc3Bhbj4KKzxhIG5hbWU9ImwwMDE4MSI+PC9hPjAwMTgxICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vICBUaVhtbFN0cmluZygpLnN3YXAoKnRoaXMpOzwvc3Bhbj4KKzxhIG5hbWU9ImwwMDE4MiI+PC9hPjAwMTgyICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vSW5zdGVhZCB1c2UgdGhlIHF1aXQgJmFtcDsgcmUtaW5pdDo8L3NwYW4+Cis8YSBuYW1lPSJsMDAxODMiPjwvYT4wMDE4MyAgICAgICAgIHF1aXQoKTsKKzxhIG5hbWU9ImwwMDE4NCI+PC9hPjAwMTg0ICAgICAgICAgaW5pdCgwLDApOworPGEgbmFtZT0ibDAwMTg1Ij48L2E+MDAxODUgICAgIH0KKzxhIG5hbWU9ImwwMDE4NiI+PC9hPjAwMTg2IAorPGEgbmFtZT0ibDAwMTg3Ij48L2E+MDAxODcgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKiAgRnVuY3Rpb24gdG8gcmVzZXJ2ZSBhIGJpZyBhbW91bnQgb2YgZGF0YSB3aGVuIHdlIGtub3cgd2UnbGwgbmVlZCBpdC4gQmUgYXdhcmUgdGhhdCB0aGlzPC9zcGFuPgorPGEgbmFtZT0ibDAwMTg4Ij48L2E+MDAxODggPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAgICAgZnVuY3Rpb24gRE9FUyBOT1QgY2xlYXIgdGhlIGNvbnRlbnQgb2YgdGhlIFRpWG1sU3RyaW5nIGlmIGFueSBleGlzdHMuPC9zcGFuPgorPGEgbmFtZT0ibDAwMTg5Ij48L2E+MDAxODkgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAqLzwvc3Bhbj4KKzxhIG5hbWU9ImwwMDE5MCI+PC9hPjAwMTkwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IHJlc2VydmUgKHNpemVfdHlwZSBjYXApOworPGEgbmFtZT0ibDAwMTkxIj48L2E+MDAxOTEgCis8YSBuYW1lPSJsMDAxOTIiPjwvYT4wMDE5MiAgICAgVGlYbWxTdHJpbmcmYW1wOyBhc3NpZ24gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogc3RyLCBzaXplX3R5cGUgbGVuKTsKKzxhIG5hbWU9ImwwMDE5MyI+PC9hPjAwMTkzIAorPGEgbmFtZT0ibDAwMTk0Ij48L2E+MDAxOTQgICAgIFRpWG1sU3RyaW5nJmFtcDsgYXBwZW5kICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHN0ciwgc2l6ZV90eXBlIGxlbik7Cis8YSBuYW1lPSJsMDAxOTUiPjwvYT4wMDE5NSAKKzxhIG5hbWU9ImwwMDE5NiI+PC9hPjAwMTk2ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IHN3YXAgKFRpWG1sU3RyaW5nJmFtcDsgb3RoZXIpCis8YSBuYW1lPSJsMDAxOTciPjwvYT4wMDE5NyAgICAgeworPGEgbmFtZT0ibDAwMTk4Ij48L2E+MDAxOTggICAgICAgICBSZXAqIHIgPSByZXBfOworPGEgbmFtZT0ibDAwMTk5Ij48L2E+MDAxOTkgICAgICAgICByZXBfID0gb3RoZXIucmVwXzsKKzxhIG5hbWU9ImwwMDIwMCI+PC9hPjAwMjAwICAgICAgICAgb3RoZXIucmVwXyA9IHI7Cis8YSBuYW1lPSJsMDAyMDEiPjwvYT4wMDIwMSAgICAgfQorPGEgbmFtZT0ibDAwMjAyIj48L2E+MDAyMDIgCis8YSBuYW1lPSJsMDAyMDMiPjwvYT4wMDIwMyAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wcml2YXRlPC9zcGFuPjoKKzxhIG5hbWU9ImwwMDIwNCI+PC9hPjAwMjA0IAorPGEgbmFtZT0ibDAwMjA1Ij48L2E+MDAyMDUgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gaW5pdChzaXplX3R5cGUgc3opIHsgaW5pdChzeiwgc3opOyB9Cis8YSBuYW1lPSJsMDAyMDYiPjwvYT4wMDIwNiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBzZXRfc2l6ZShzaXplX3R5cGUgc3opIHsgcmVwXy0mZ3Q7c3RyWyByZXBfLSZndDtzaXplID0gc3ogXSA9IDxzcGFuIGNsYXNzPSJjaGFybGl0ZXJhbCI+J1wwJzwvc3Bhbj47IH0KKzxhIG5hbWU9ImwwMDIwNyI+PC9hPjAwMjA3ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBzdGFydCgpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gcmVwXy0mZ3Q7c3RyOyB9Cis8YSBuYW1lPSJsMDAyMDgiPjwvYT4wMDIwOCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogZmluaXNoKCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0IDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiByZXBfLSZndDtzdHIgKyByZXBfLSZndDtzaXplOyB9Cis8YSBuYW1lPSJsMDAyMDkiPjwvYT4wMDIwOSAKKzxhIG5hbWU9ImwwMDIxMCI+PC9hPjAwMjEwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RydWN0IDwvc3Bhbj5SZXAKKzxhIG5hbWU9ImwwMDIxMSI+PC9hPjAwMjExICAgICB7Cis8YSBuYW1lPSJsMDAyMTIiPjwvYT4wMDIxMiAgICAgICAgIHNpemVfdHlwZSBzaXplLCBjYXBhY2l0eTsKKzxhIG5hbWU9ImwwMDIxMyI+PC9hPjAwMjEzICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiBzdHJbMV07Cis8YSBuYW1lPSJsMDAyMTQiPjwvYT4wMDIxNCAgICAgfTsKKzxhIG5hbWU9ImwwMDIxNSI+PC9hPjAwMjE1IAorPGEgbmFtZT0ibDAwMjE2Ij48L2E+MDAyMTYgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gaW5pdChzaXplX3R5cGUgc3osIHNpemVfdHlwZSBjYXApCis8YSBuYW1lPSJsMDAyMTciPjwvYT4wMDIxNyAgICAgeworPGEgbmFtZT0ibDAwMjE4Ij48L2E+MDAyMTggICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPmlmPC9zcGFuPiAoY2FwKQorPGEgbmFtZT0ibDAwMjE5Ij48L2E+MDAyMTkgICAgICAgICB7Cis8YSBuYW1lPSJsMDAyMjAiPjwvYT4wMDIyMCAgICAgICAgICAgICByZXBfID0gc3RhdGljX2Nhc3QmbHQ7UmVwKiZndDsob3BlcmF0b3IgbmV3KDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zaXplb2Y8L3NwYW4+KFJlcCkgKyBjYXApKTsKKzxhIG5hbWU9ImwwMDIyMSI+PC9hPjAwMjIxICAgICAgICAgICAgIHJlcF8tJmd0O3N0clsgcmVwXy0mZ3Q7c2l6ZSA9IHN6IF0gPSA8c3BhbiBjbGFzcz0iY2hhcmxpdGVyYWwiPidcMCc8L3NwYW4+OworPGEgbmFtZT0ibDAwMjIyIj48L2E+MDAyMjIgICAgICAgICAgICAgcmVwXy0mZ3Q7Y2FwYWNpdHkgPSBjYXA7Cis8YSBuYW1lPSJsMDAyMjMiPjwvYT4wMDIyMyAgICAgICAgIH0KKzxhIG5hbWU9ImwwMDIyNCI+PC9hPjAwMjI0ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5lbHNlPC9zcGFuPgorPGEgbmFtZT0ibDAwMjI1Ij48L2E+MDAyMjUgICAgICAgICB7Cis8YSBuYW1lPSJsMDAyMjYiPjwvYT4wMDIyNiAgICAgICAgICAgICByZXBfID0gJmFtcDtudWxscmVwXzsKKzxhIG5hbWU9ImwwMDIyNyI+PC9hPjAwMjI3ICAgICAgICAgfQorPGEgbmFtZT0ibDAwMjI4Ij48L2E+MDAyMjggICAgIH0KKzxhIG5hbWU9ImwwMDIyOSI+PC9hPjAwMjI5IAorPGEgbmFtZT0ibDAwMjMwIj48L2E+MDAyMzAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gcXVpdCgpCis8YSBuYW1lPSJsMDAyMzEiPjwvYT4wMDIzMSAgICAgeworPGEgbmFtZT0ibDAwMjMyIj48L2E+MDAyMzIgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPmlmPC9zcGFuPiAocmVwXyAhPSAmYW1wO251bGxyZXBfKQorPGEgbmFtZT0ibDAwMjMzIj48L2E+MDAyMzMgICAgICAgICB7Cis8YSBuYW1lPSJsMDAyMzQiPjwvYT4wMDIzNCAgICAgICAgICAgICBvcGVyYXRvciBkZWxldGUocmVwXyk7Cis8YSBuYW1lPSJsMDAyMzUiPjwvYT4wMDIzNSAgICAgICAgIH0KKzxhIG5hbWU9ImwwMDIzNiI+PC9hPjAwMjM2ICAgICB9Cis8YSBuYW1lPSJsMDAyMzciPjwvYT4wMDIzNyAKKzxhIG5hbWU9ImwwMDIzOCI+PC9hPjAwMjM4ICAgICBSZXAgKiByZXBfOworPGEgbmFtZT0ibDAwMjM5Ij48L2E+MDAyMzkgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdGF0aWM8L3NwYW4+IFJlcCBudWxscmVwXzsKKzxhIG5hbWU9ImwwMDI0MCI+PC9hPjAwMjQwIAorPGEgbmFtZT0ibDAwMjQxIj48L2E+MDAyNDEgfSA7Cis8YSBuYW1lPSJsMDAyNDIiPjwvYT4wMDI0MiAKKzxhIG5hbWU9ImwwMDI0MyI+PC9hPjAwMjQzIAorPGEgbmFtZT0ibDAwMjQ0Ij48L2E+MDAyNDQgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmlubGluZTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBvcGVyYXRvciA9PSAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBhLCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGIpCis8YSBuYW1lPSJsMDAyNDUiPjwvYT4wMDI0NSB7Cis8YSBuYW1lPSJsMDAyNDYiPjwvYT4wMDI0NiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICAgICggYS5sZW5ndGgoKSA9PSBiLmxlbmd0aCgpICkgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBvcHRpbWl6YXRpb24gb24gc29tZSBwbGF0Zm9ybXM8L3NwYW4+Cis8YSBuYW1lPSJsMDAyNDciPjwvYT4wMDI0NyAgICAgICAgICAgICZhbXA7JmFtcDsgKCBzdHJjbXAoYS5jX3N0cigpLCBiLmNfc3RyKCkpID09IDAgKTsgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIGFjdHVhbCBjb21wYXJlPC9zcGFuPgorPGEgbmFtZT0ibDAwMjQ4Ij48L2E+MDAyNDggfQorPGEgbmFtZT0ibDAwMjQ5Ij48L2E+MDAyNDkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmlubGluZTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBvcGVyYXRvciAmbHQ7ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGEsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgYikKKzxhIG5hbWU9ImwwMDI1MCI+PC9hPjAwMjUwIHsKKzxhIG5hbWU9ImwwMDI1MSI+PC9hPjAwMjUxICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gc3RyY21wKGEuY19zdHIoKSwgYi5jX3N0cigpKSAmbHQ7IDA7Cis8YSBuYW1lPSJsMDAyNTIiPjwvYT4wMDI1MiB9Cis8YSBuYW1lPSJsMDAyNTMiPjwvYT4wMDI1MyAKKzxhIG5hbWU9ImwwMDI1NCI+PC9hPjAwMjU0IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5pbmxpbmU8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gb3BlcmF0b3IgIT0gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgYSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBiKSB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAhKGEgPT0gYik7IH0KKzxhIG5hbWU9ImwwMDI1NSI+PC9hPjAwMjU1IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5pbmxpbmU8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gb3BlcmF0b3IgJmd0OyAgKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgYSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBiKSB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBiICZsdDsgYTsgfQorPGEgbmFtZT0ibDAwMjU2Ij48L2E+MDAyNTYgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmlubGluZTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBvcGVyYXRvciAmbHQ7PSAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBhLCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGIpIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICEoYiAmbHQ7IGEpOyB9Cis8YSBuYW1lPSJsMDAyNTciPjwvYT4wMDI1NyA8c3BhbiBjbGFzcz0ia2V5d29yZCI+aW5saW5lPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IG9wZXJhdG9yICZndDs9ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGEsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgYikgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gIShhICZsdDsgYik7IH0KKzxhIG5hbWU9ImwwMDI1OCI+PC9hPjAwMjU4IAorPGEgbmFtZT0ibDAwMjU5Ij48L2E+MDAyNTkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmlubGluZTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBvcGVyYXRvciA9PSAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBhLCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIGIpIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHN0cmNtcChhLmNfc3RyKCksIGIpID09IDA7IH0KKzxhIG5hbWU9ImwwMDI2MCI+PC9hPjAwMjYwIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5pbmxpbmU8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gb3BlcmF0b3IgPT0gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogYSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBiKSB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBiID09IGE7IH0KKzxhIG5hbWU9ImwwMDI2MSI+PC9hPjAwMjYxIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5pbmxpbmU8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gb3BlcmF0b3IgIT0gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgYSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBiKSB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAhKGEgPT0gYik7IH0KKzxhIG5hbWU9ImwwMDI2MiI+PC9hPjAwMjYyIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5pbmxpbmU8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gb3BlcmF0b3IgIT0gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogYSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBiKSB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAhKGIgPT0gYSk7IH0KKzxhIG5hbWU9ImwwMDI2MyI+PC9hPjAwMjYzIAorPGEgbmFtZT0ibDAwMjY0Ij48L2E+MDAyNjQgVGlYbWxTdHJpbmcgb3BlcmF0b3IgKyAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBhLCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGIpOworPGEgbmFtZT0ibDAwMjY1Ij48L2E+MDAyNjUgVGlYbWxTdHJpbmcgb3BlcmF0b3IgKyAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBhLCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIGIpOworPGEgbmFtZT0ibDAwMjY2Ij48L2E+MDAyNjYgVGlYbWxTdHJpbmcgb3BlcmF0b3IgKyAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBhLCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGIpOworPGEgbmFtZT0ibDAwMjY3Ij48L2E+MDAyNjcgCis8YSBuYW1lPSJsMDAyNjgiPjwvYT4wMDI2OCAKKzxhIG5hbWU9ImwwMDI2OSI+PC9hPjAwMjY5IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDI3MCI+PC9hPjAwMjcwIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICBUaVhtbE91dFN0cmVhbSBpcyBhbiBlbXVsYXRpb24gb2Ygc3RkOjpvc3RyZWFtLiBJdCBpcyBiYXNlZCBvbiBUaVhtbFN0cmluZy48L3NwYW4+Cis8YSBuYW1lPSJsMDAyNzEiPjwvYT4wMDI3MSA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgT25seSB0aGUgb3BlcmF0b3JzIHRoYXQgd2UgbmVlZCBmb3IgVGlueVhNTCBoYXZlIGJlZW4gZGV2ZWxvcHBlZC48L3NwYW4+Cis8YSBuYW1lPSJsMDAyNzIiPjwvYT4wMDI3MiA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ki88L3NwYW4+Cis8YSBuYW1lPSJsMDAyNzMiPjwvYT4wMDI3MyA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPlRpWG1sT3V0U3RyZWFtIDogPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj4gVGlYbWxTdHJpbmcKKzxhIG5hbWU9ImwwMDI3NCI+PC9hPjAwMjc0IHsKKzxhIG5hbWU9ImwwMDI3NSI+PC9hPjAwMjc1IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+IDoKKzxhIG5hbWU9ImwwMDI3NiI+PC9hPjAwMjc2IAorPGEgbmFtZT0ibDAwMjc3Ij48L2E+MDAyNzcgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBUaVhtbE91dFN0cmVhbSAmbHQ7Jmx0OyBvcGVyYXRvci48L3NwYW4+Cis8YSBuYW1lPSJsMDAyNzgiPjwvYT4wMDI3OCAgICAgVGlYbWxPdXRTdHJlYW0gJmFtcDsgb3BlcmF0b3IgJmx0OyZsdDsgKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgaW4pCis8YSBuYW1lPSJsMDAyNzkiPjwvYT4wMDI3OSAgICAgeworPGEgbmFtZT0ibDAwMjgwIj48L2E+MDAyODAgICAgICAgICAqPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+ICs9IGluOworPGEgbmFtZT0ibDAwMjgxIj48L2E+MDAyODEgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKjxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPjsKKzxhIG5hbWU9ImwwMDI4MiI+PC9hPjAwMjgyICAgICB9Cis8YSBuYW1lPSJsMDAyODMiPjwvYT4wMDI4MyAKKzxhIG5hbWU9ImwwMDI4NCI+PC9hPjAwMjg0ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gVGlYbWxPdXRTdHJlYW0gJmx0OyZsdDsgb3BlcmF0b3IuPC9zcGFuPgorPGEgbmFtZT0ibDAwMjg1Ij48L2E+MDAyODUgICAgIFRpWG1sT3V0U3RyZWFtICZhbXA7IG9wZXJhdG9yICZsdDsmbHQ7ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBpbikKKzxhIG5hbWU9ImwwMDI4NiI+PC9hPjAwMjg2ICAgICB7Cis8YSBuYW1lPSJsMDAyODciPjwvYT4wMDI4NyAgICAgICAgICo8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gKz0gaW47Cis8YSBuYW1lPSJsMDAyODgiPjwvYT4wMDI4OCAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAqPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+OworPGEgbmFtZT0ibDAwMjg5Ij48L2E+MDAyODkgICAgIH0KKzxhIG5hbWU9ImwwMDI5MCI+PC9hPjAwMjkwIAorPGEgbmFtZT0ibDAwMjkxIj48L2E+MDAyOTEgfSA7Cis8YSBuYW1lPSJsMDAyOTIiPjwvYT4wMDI5MiAKKzxhIG5hbWU9ImwwMDI5MyI+PC9hPjAwMjkzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNlbmRpZiAgLy8gVElYTUxfU1RSSU5HX0lOQ0xVREVEPC9zcGFuPgorPGEgbmFtZT0ibDAwMjk0Ij48L2E+MDAyOTQgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNlbmRpZiAgLy8gVElYTUxfVVNFX1NUTDwvc3Bhbj4KKzwvcHJlPjwvZGl2PjxociBzaXplPSIxIj48YWRkcmVzcyBzdHlsZT0iYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBvbiBTYXQgT2N0IDggMTQ6MTU6MzAgMjAwNSBmb3IgVGlueVhtbCBieSZuYnNwOworPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KKzxpbWcgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIiBhbGlnbj0ibWlkZGxlIiBib3JkZXI9IjAiPjwvYT4gMS40LjQgPC9zbWFsbD48L2FkZHJlc3M+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL3RpbnlzdHJfOGhfc291cmNlLmh0bWwgYi9kb2NzL3RpbnlzdHJfOGhfc291cmNlLmh0bWwKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDU3OWE5MGUuLjAwMDAwMDAKLS0tIGEvZG9jcy90aW55c3RyXzhoX3NvdXJjZS5odG1sCisrKyAvZGV2L251bGwKQEAgLTEsMzM1ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiB0aW55c3RyLmggU291cmNlIEZpbGU8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTxoMT50aW55c3RyLmg8L2gxPjxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+PGEgbmFtZT0ibDAwMDAxIj48L2E+MDAwMDEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8qPC9zcGFuPgotPGEgbmFtZT0ibDAwMDAyIj48L2E+MDAwMDIgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPnd3dy5zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvdGlueXhtbDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAwMyI+PC9hPjAwMDAzIDxzcGFuIGNsYXNzPSJjb21tZW50Ij48L3NwYW4+Ci08YSBuYW1lPSJsMDAwMDQiPjwvYT4wMDAwNCA8c3BhbiBjbGFzcz0iY29tbWVudCI+VGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCAmIzM5O2FzLWlzJiMzOTssIHdpdGhvdXQgYW55IGV4cHJlc3Mgb3IgaW1wbGllZDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAwNSI+PC9hPjAwMDA1IDxzcGFuIGNsYXNzPSJjb21tZW50Ij53YXJyYW50eS4gSW4gbm8gZXZlbnQgd2lsbCB0aGUgYXV0aG9ycyBiZSBoZWxkIGxpYWJsZSBmb3IgYW55PC9zcGFuPgotPGEgbmFtZT0ibDAwMDA2Ij48L2E+MDAwMDYgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPmRhbWFnZXMgYXJpc2luZyBmcm9tIHRoZSB1c2Ugb2YgdGhpcyBzb2Z0d2FyZS48L3NwYW4+Ci08YSBuYW1lPSJsMDAwMDciPjwvYT4wMDAwNyA8c3BhbiBjbGFzcz0iY29tbWVudCI+PC9zcGFuPgotPGEgbmFtZT0ibDAwMDA4Ij48L2E+MDAwMDggPHNwYW4gY2xhc3M9ImNvbW1lbnQiPlBlcm1pc3Npb24gaXMgZ3JhbnRlZCB0byBhbnlvbmUgdG8gdXNlIHRoaXMgc29mdHdhcmUgZm9yIGFueTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAwOSI+PC9hPjAwMDA5IDxzcGFuIGNsYXNzPSJjb21tZW50Ij5wdXJwb3NlLCBpbmNsdWRpbmcgY29tbWVyY2lhbCBhcHBsaWNhdGlvbnMsIGFuZCB0byBhbHRlciBpdCBhbmQ8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMTAiPjwvYT4wMDAxMCA8c3BhbiBjbGFzcz0iY29tbWVudCI+cmVkaXN0cmlidXRlIGl0IGZyZWVseSwgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIHJlc3RyaWN0aW9uczo8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMTEiPjwvYT4wMDAxMSA8c3BhbiBjbGFzcz0iY29tbWVudCI+PC9zcGFuPgotPGEgbmFtZT0ibDAwMDEyIj48L2E+MDAwMTIgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPjEuIFRoZSBvcmlnaW4gb2YgdGhpcyBzb2Z0d2FyZSBtdXN0IG5vdCBiZSBtaXNyZXByZXNlbnRlZDsgeW91IG11c3Q8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMTMiPjwvYT4wMDAxMyA8c3BhbiBjbGFzcz0iY29tbWVudCI+bm90IGNsYWltIHRoYXQgeW91IHdyb3RlIHRoZSBvcmlnaW5hbCBzb2Z0d2FyZS4gSWYgeW91IHVzZSB0aGlzPC9zcGFuPgotPGEgbmFtZT0ibDAwMDE0Ij48L2E+MDAwMTQgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPnNvZnR3YXJlIGluIGEgcHJvZHVjdCwgYW4gYWNrbm93bGVkZ21lbnQgaW4gdGhlIHByb2R1Y3QgZG9jdW1lbnRhdGlvbjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAxNSI+PC9hPjAwMDE1IDxzcGFuIGNsYXNzPSJjb21tZW50Ij53b3VsZCBiZSBhcHByZWNpYXRlZCBidXQgaXMgbm90IHJlcXVpcmVkLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAxNiI+PC9hPjAwMDE2IDxzcGFuIGNsYXNzPSJjb21tZW50Ij48L3NwYW4+Ci08YSBuYW1lPSJsMDAwMTciPjwvYT4wMDAxNyA8c3BhbiBjbGFzcz0iY29tbWVudCI+Mi4gQWx0ZXJlZCBzb3VyY2UgdmVyc2lvbnMgbXVzdCBiZSBwbGFpbmx5IG1hcmtlZCBhcyBzdWNoLCBhbmQ8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMTgiPjwvYT4wMDAxOCA8c3BhbiBjbGFzcz0iY29tbWVudCI+bXVzdCBub3QgYmUgbWlzcmVwcmVzZW50ZWQgYXMgYmVpbmcgdGhlIG9yaWdpbmFsIHNvZnR3YXJlLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAxOSI+PC9hPjAwMDE5IDxzcGFuIGNsYXNzPSJjb21tZW50Ij48L3NwYW4+Ci08YSBuYW1lPSJsMDAwMjAiPjwvYT4wMDAyMCA8c3BhbiBjbGFzcz0iY29tbWVudCI+My4gVGhpcyBub3RpY2UgbWF5IG5vdCBiZSByZW1vdmVkIG9yIGFsdGVyZWQgZnJvbSBhbnkgc291cmNlPC9zcGFuPgotPGEgbmFtZT0ibDAwMDIxIj48L2E+MDAwMjEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPmRpc3RyaWJ1dGlvbi48L3NwYW4+Ci08YSBuYW1lPSJsMDAwMjIiPjwvYT4wMDAyMiA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ki88L3NwYW4+Ci08YSBuYW1lPSJsMDAwMjMiPjwvYT4wMDAyMyAKLTxhIG5hbWU9ImwwMDAyNCI+PC9hPjAwMDI0IAotPGEgbmFtZT0ibDAwMDI1Ij48L2E+MDAwMjUgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2lmbmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgotPGEgbmFtZT0ibDAwMDI2Ij48L2E+MDAwMjYgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAwMDI3Ij48L2E+MDAwMjcgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2lmbmRlZiBUSVhNTF9TVFJJTkdfSU5DTFVERUQ8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMjgiPjwvYT4wMDAyOCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2RlZmluZSBUSVhNTF9TVFJJTkdfSU5DTFVERUQ8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMjkiPjwvYT4wMDAyOSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDAwMzAiPjwvYT4wMDAzMCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jaW5jbHVkZSAmbHQ7YXNzZXJ0LmgmZ3Q7PC9zcGFuPgotPGEgbmFtZT0ibDAwMDMxIj48L2E+MDAwMzEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2luY2x1ZGUgJmx0O3N0cmluZy5oJmd0Ozwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAzMiI+PC9hPjAwMDMyIAotPGEgbmFtZT0ibDAwMDMzIj48L2E+MDAwMzMgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8qICBUaGUgc3VwcG9ydCBmb3IgZXhwbGljaXQgaXNuJiMzOTt0IHRoYXQgdW5pdmVyc2FsLCBhbmQgaXQgaXNuJiMzOTt0IHJlYWxseTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAzNCI+PC9hPjAwMDM0IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgcmVxdWlyZWQgLSBpdCBpcyB1c2VkIHRvIGNoZWNrIHRoYXQgdGhlIFRpWG1sU3RyaW5nIGNsYXNzIGlzbiYjMzk7dCBpbmNvcnJlY3RseTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAzNSI+PC9hPjAwMDM1IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgdXNlZC4gQmUgbmljZSB0byBvbGQgY29tcGlsZXJzIGFuZCBtYWNybyBpdCBoZXJlOjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAzNiI+PC9hPjAwMDM2IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4qLzwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAzNyI+PC9hPjAwMDM3IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNpZiBkZWZpbmVkKF9NU0NfVkVSKSAmYW1wOyZhbXA7IChfTVNDX1ZFUiAmZ3Q7PSAxMjAwICk8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMzgiPjwvYT4wMDAzOCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBNaWNyb3NvZnQgdmlzdWFsIHN0dWRpbywgdmVyc2lvbiA2IGFuZCBoaWdoZXIuPC9zcGFuPgotPGEgbmFtZT0ibDAwMDM5Ij48L2E+MDAwMzkgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNkZWZpbmUgVElYTUxfRVhQTElDSVQgZXhwbGljaXQ8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNDAiPjwvYT4wMDA0MCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2VsaWYgZGVmaW5lZChfX0dOVUNfXykgJmFtcDsmYW1wOyAoX19HTlVDX18gJmd0Oz0gMyApPC9zcGFuPgotPGEgbmFtZT0ibDAwMDQxIj48L2E+MDAwNDEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPiAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gR0NDIHZlcnNpb24gMyBhbmQgaGlnaGVyLnM8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNDIiPjwvYT4wMDA0MiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2RlZmluZSBUSVhNTF9FWFBMSUNJVCBleHBsaWNpdDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA0MyI+PC9hPjAwMDQzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jZWxzZTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA0NCI+PC9hPjAwMDQ0IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2RlZmluZSBUSVhNTF9FWFBMSUNJVDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA0NSI+PC9hPjAwMDQ1IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNDYiPjwvYT4wMDA0NiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDAwNDciPjwvYT4wMDA0NyAKLTxhIG5hbWU9ImwwMDA0OCI+PC9hPjAwMDQ4IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA0OSI+PC9hPjAwMDQ5IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICBUaVhtbFN0cmluZyBpcyBhbiBlbXVsYXRpb24gb2YgYSBzdWJzZXQgb2YgdGhlIHN0ZDo6c3RyaW5nIHRlbXBsYXRlLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA1MCI+PC9hPjAwMDUwIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICBJdHMgcHVycG9zZSBpcyB0byBhbGxvdyBjb21waWxpbmcgVGlueVhNTCBvbiBjb21waWxlcnMgd2l0aCBubyBvciBwb29yIFNUTCBzdXBwb3J0Ljwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA1MSI+PC9hPjAwMDUxIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICBPbmx5IHRoZSBtZW1iZXIgZnVuY3Rpb25zIHJlbGV2YW50IHRvIHRoZSBUaW55WE1MIHByb2plY3QgaGF2ZSBiZWVuIGltcGxlbWVudGVkLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA1MiI+PC9hPjAwMDUyIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICBUaGUgYnVmZmVyIGFsbG9jYXRpb24gaXMgbWFkZSBieSBhIHNpbXBsaXN0aWMgcG93ZXIgb2YgMiBsaWtlIG1lY2hhbmlzbSA6IGlmIHdlIGluY3JlYXNlPC9zcGFuPgotPGEgbmFtZT0ibDAwMDUzIj48L2E+MDAwNTMgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgIGEgc3RyaW5nIGFuZCB0aGVyZSYjMzk7cyBubyBtb3JlIHJvb20sIHdlIGFsbG9jYXRlIGEgYnVmZmVyIHR3aWNlIGFzIGJpZyBhcyB3ZSBuZWVkLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA1NCI+PC9hPjAwMDU0IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4qLzwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA1NSI+PC9hPjAwMDU1IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+VGlYbWxTdHJpbmcKLTxhIG5hbWU9ImwwMDA1NiI+PC9hPjAwMDU2IHsKLTxhIG5hbWU9ImwwMDA1NyI+PC9hPjAwMDU3ICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj4gOgotPGEgbmFtZT0ibDAwMDU4Ij48L2E+MDAwNTggICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBUaGUgc2l6ZSB0eXBlIHVzZWQ8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNTkiPjwvYT4wMDA1OSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnR5cGVkZWY8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+c2l6ZV90PC9zcGFuPiBzaXplX3R5cGU7Ci08YSBuYW1lPSJsMDAwNjAiPjwvYT4wMDA2MCAKLTxhIG5hbWU9ImwwMDA2MSI+PC9hPjAwMDYxICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gRXJyb3IgdmFsdWUgZm9yIGZpbmQgcHJpbWl0aXZlPC9zcGFuPgotPGEgbmFtZT0ibDAwMDYyIj48L2E+MDAwNjIgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdGF0aWM8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc2l6ZV90eXBlIG5wb3M7IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyA9IC0xOzwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA2MyI+PC9hPjAwMDYzIAotPGEgbmFtZT0ibDAwMDY0Ij48L2E+MDAwNjQgCi08YSBuYW1lPSJsMDAwNjUiPjwvYT4wMDA2NSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFRpWG1sU3RyaW5nIGVtcHR5IGNvbnN0cnVjdG9yPC9zcGFuPgotPGEgbmFtZT0ibDAwMDY2Ij48L2E+MDAwNjYgICAgIFRpWG1sU3RyaW5nICgpIDogcmVwXygmYW1wO251bGxyZXBfKQotPGEgbmFtZT0ibDAwMDY3Ij48L2E+MDAwNjcgICAgIHsKLTxhIG5hbWU9ImwwMDA2OCI+PC9hPjAwMDY4ICAgICB9Ci08YSBuYW1lPSJsMDAwNjkiPjwvYT4wMDA2OSAKLTxhIG5hbWU9ImwwMDA3MCI+PC9hPjAwMDcwICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gVGlYbWxTdHJpbmcgY29weSBjb25zdHJ1Y3Rvcjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA3MSI+PC9hPjAwMDcxICAgICBUaVhtbFN0cmluZyAoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgY29weSkgOiByZXBfKDApCi08YSBuYW1lPSJsMDAwNzIiPjwvYT4wMDA3MiAgICAgewotPGEgbmFtZT0ibDAwMDczIj48L2E+MDAwNzMgICAgICAgICBpbml0KGNvcHkubGVuZ3RoKCkpOwotPGEgbmFtZT0ibDAwMDc0Ij48L2E+MDAwNzQgICAgICAgICBtZW1jcHkoc3RhcnQoKSwgY29weS5kYXRhKCksIGxlbmd0aCgpKTsKLTxhIG5hbWU9ImwwMDA3NSI+PC9hPjAwMDc1ICAgICB9Ci08YSBuYW1lPSJsMDAwNzYiPjwvYT4wMDA3NiAKLTxhIG5hbWU9ImwwMDA3NyI+PC9hPjAwMDc3ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gVGlYbWxTdHJpbmcgY29uc3RydWN0b3IsIGJhc2VkIG9uIGEgc3RyaW5nPC9zcGFuPgotPGEgbmFtZT0ibDAwMDc4Ij48L2E+MDAwNzggICAgIFRJWE1MX0VYUExJQ0lUIFRpWG1sU3RyaW5nICggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogY29weSkgOiByZXBfKDApCi08YSBuYW1lPSJsMDAwNzkiPjwvYT4wMDA3OSAgICAgewotPGEgbmFtZT0ibDAwMDgwIj48L2E+MDAwODAgICAgICAgICBpbml0KCBzdGF0aWNfY2FzdCZsdDtzaXplX3R5cGUmZ3Q7KCBzdHJsZW4oY29weSkgKSk7Ci08YSBuYW1lPSJsMDAwODEiPjwvYT4wMDA4MSAgICAgICAgIG1lbWNweShzdGFydCgpLCBjb3B5LCBsZW5ndGgoKSk7Ci08YSBuYW1lPSJsMDAwODIiPjwvYT4wMDA4MiAgICAgfQotPGEgbmFtZT0ibDAwMDgzIj48L2E+MDAwODMgCi08YSBuYW1lPSJsMDAwODQiPjwvYT4wMDA4NCAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFRpWG1sU3RyaW5nIGNvbnN0cnVjdG9yLCBiYXNlZCBvbiBhIHN0cmluZzwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA4NSI+PC9hPjAwMDg1ICAgICBUSVhNTF9FWFBMSUNJVCBUaVhtbFN0cmluZyAoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIHN0ciwgc2l6ZV90eXBlIGxlbikgOiByZXBfKDApCi08YSBuYW1lPSJsMDAwODYiPjwvYT4wMDA4NiAgICAgewotPGEgbmFtZT0ibDAwMDg3Ij48L2E+MDAwODcgICAgICAgICBpbml0KGxlbik7Ci08YSBuYW1lPSJsMDAwODgiPjwvYT4wMDA4OCAgICAgICAgIG1lbWNweShzdGFydCgpLCBzdHIsIGxlbik7Ci08YSBuYW1lPSJsMDAwODkiPjwvYT4wMDA4OSAgICAgfQotPGEgbmFtZT0ibDAwMDkwIj48L2E+MDAwOTAgCi08YSBuYW1lPSJsMDAwOTEiPjwvYT4wMDA5MSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFRpWG1sU3RyaW5nIGRlc3RydWN0b3I8L3NwYW4+Ci08YSBuYW1lPSJsMDAwOTIiPjwvYT4wMDA5MiAgICAgflRpWG1sU3RyaW5nICgpCi08YSBuYW1lPSJsMDAwOTMiPjwvYT4wMDA5MyAgICAgewotPGEgbmFtZT0ibDAwMDk0Ij48L2E+MDAwOTQgICAgICAgICBxdWl0KCk7Ci08YSBuYW1lPSJsMDAwOTUiPjwvYT4wMDA5NSAgICAgfQotPGEgbmFtZT0ibDAwMDk2Ij48L2E+MDAwOTYgCi08YSBuYW1lPSJsMDAwOTciPjwvYT4wMDA5NyAgICAgVGlYbWxTdHJpbmcmYW1wOyBvcGVyYXRvciA9ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBjb3B5KQotPGEgbmFtZT0ibDAwMDk4Ij48L2E+MDAwOTggICAgIHsKLTxhIG5hbWU9ImwwMDA5OSI+PC9hPjAwMDk5ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGFzc2lnbiggY29weSwgKHNpemVfdHlwZSlzdHJsZW4oY29weSkpOwotPGEgbmFtZT0ibDAwMTAwIj48L2E+MDAxMDAgICAgIH0KLTxhIG5hbWU9ImwwMDEwMSI+PC9hPjAwMTAxIAotPGEgbmFtZT0ibDAwMTAyIj48L2E+MDAxMDIgICAgIFRpWG1sU3RyaW5nJmFtcDsgb3BlcmF0b3IgPSAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBjb3B5KQotPGEgbmFtZT0ibDAwMTAzIj48L2E+MDAxMDMgICAgIHsKLTxhIG5hbWU9ImwwMDEwNCI+PC9hPjAwMTA0ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGFzc2lnbihjb3B5LnN0YXJ0KCksIGNvcHkubGVuZ3RoKCkpOwotPGEgbmFtZT0ibDAwMTA1Ij48L2E+MDAxMDUgICAgIH0KLTxhIG5hbWU9ImwwMDEwNiI+PC9hPjAwMTA2IAotPGEgbmFtZT0ibDAwMTA3Ij48L2E+MDAxMDcgCi08YSBuYW1lPSJsMDAxMDgiPjwvYT4wMDEwOCAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vICs9IG9wZXJhdG9yLiBNYXBzIHRvIGFwcGVuZDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDEwOSI+PC9hPjAwMTA5ICAgICBUaVhtbFN0cmluZyZhbXA7IG9wZXJhdG9yICs9ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBzdWZmaXgpCi08YSBuYW1lPSJsMDAxMTAiPjwvYT4wMDExMCAgICAgewotPGEgbmFtZT0ibDAwMTExIj48L2E+MDAxMTEgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gYXBwZW5kKHN1ZmZpeCwgc3RhdGljX2Nhc3QmbHQ7c2l6ZV90eXBlJmd0Oyggc3RybGVuKHN1ZmZpeCkgKSk7Ci08YSBuYW1lPSJsMDAxMTIiPjwvYT4wMDExMiAgICAgfQotPGEgbmFtZT0ibDAwMTEzIj48L2E+MDAxMTMgCi08YSBuYW1lPSJsMDAxMTQiPjwvYT4wMDExNCAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vICs9IG9wZXJhdG9yLiBNYXBzIHRvIGFwcGVuZDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDExNSI+PC9hPjAwMTE1ICAgICBUaVhtbFN0cmluZyZhbXA7IG9wZXJhdG9yICs9ICg8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+IHNpbmdsZSkKLTxhIG5hbWU9ImwwMDExNiI+PC9hPjAwMTE2ICAgICB7Ci08YSBuYW1lPSJsMDAxMTciPjwvYT4wMDExNyAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBhcHBlbmQoJmFtcDtzaW5nbGUsIDEpOwotPGEgbmFtZT0ibDAwMTE4Ij48L2E+MDAxMTggICAgIH0KLTxhIG5hbWU9ImwwMDExOSI+PC9hPjAwMTE5IAotPGEgbmFtZT0ibDAwMTIwIj48L2E+MDAxMjAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyArPSBvcGVyYXRvci4gTWFwcyB0byBhcHBlbmQ8L3NwYW4+Ci08YSBuYW1lPSJsMDAxMjEiPjwvYT4wMDEyMSAgICAgVGlYbWxTdHJpbmcmYW1wOyBvcGVyYXRvciArPSAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBzdWZmaXgpCi08YSBuYW1lPSJsMDAxMjIiPjwvYT4wMDEyMiAgICAgewotPGEgbmFtZT0ibDAwMTIzIj48L2E+MDAxMjMgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gYXBwZW5kKHN1ZmZpeC5kYXRhKCksIHN1ZmZpeC5sZW5ndGgoKSk7Ci08YSBuYW1lPSJsMDAxMjQiPjwvYT4wMDEyNCAgICAgfQotPGEgbmFtZT0ibDAwMTI1Ij48L2E+MDAxMjUgCi08YSBuYW1lPSJsMDAxMjYiPjwvYT4wMDEyNiAKLTxhIG5hbWU9ImwwMDEyNyI+PC9hPjAwMTI3ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gQ29udmVydCBhIFRpWG1sU3RyaW5nIGludG8gYSBudWxsLXRlcm1pbmF0ZWQgY2hhciAqPC9zcGFuPgotPGEgbmFtZT0ibDAwMTI4Ij48L2E+MDAxMjggICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIGNfc3RyICgpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gcmVwXy0mZ3Q7c3RyOyB9Ci08YSBuYW1lPSJsMDAxMjkiPjwvYT4wMDEyOSAKLTxhIG5hbWU9ImwwMDEzMCI+PC9hPjAwMTMwICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gQ29udmVydCBhIFRpWG1sU3RyaW5nIGludG8gYSBjaGFyICogKG5lZWQgbm90IGJlIG51bGwgdGVybWluYXRlZCkuPC9zcGFuPgotPGEgbmFtZT0ibDAwMTMxIj48L2E+MDAxMzEgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIGRhdGEgKCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0IDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiByZXBfLSZndDtzdHI7IH0KLTxhIG5hbWU9ImwwMDEzMiI+PC9hPjAwMTMyIAotPGEgbmFtZT0ibDAwMTMzIj48L2E+MDAxMzMgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBSZXR1cm4gdGhlIGxlbmd0aCBvZiBhIFRpWG1sU3RyaW5nPC9zcGFuPgotPGEgbmFtZT0ibDAwMTM0Ij48L2E+MDAxMzQgICAgIHNpemVfdHlwZSBsZW5ndGggKCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0IDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiByZXBfLSZndDtzaXplOyB9Ci08YSBuYW1lPSJsMDAxMzUiPjwvYT4wMDEzNSAKLTxhIG5hbWU9ImwwMDEzNiI+PC9hPjAwMTM2ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gQWxpYXMgZm9yIGxlbmd0aCgpPC9zcGFuPgotPGEgbmFtZT0ibDAwMTM3Ij48L2E+MDAxMzcgICAgIHNpemVfdHlwZSBzaXplICgpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gcmVwXy0mZ3Q7c2l6ZTsgfQotPGEgbmFtZT0ibDAwMTM4Ij48L2E+MDAxMzggCi08YSBuYW1lPSJsMDAxMzkiPjwvYT4wMDEzOSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIENoZWNrcyBpZiBhIFRpWG1sU3RyaW5nIGlzIGVtcHR5PC9zcGFuPgotPGEgbmFtZT0ibDAwMTQwIj48L2E+MDAxNDAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gZW1wdHkgKCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0IDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiByZXBfLSZndDtzaXplID09IDA7IH0KLTxhIG5hbWU9ImwwMDE0MSI+PC9hPjAwMTQxIAotPGEgbmFtZT0ibDAwMTQyIj48L2E+MDAxNDIgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBSZXR1cm4gY2FwYWNpdHkgb2Ygc3RyaW5nPC9zcGFuPgotPGEgbmFtZT0ibDAwMTQzIj48L2E+MDAxNDMgICAgIHNpemVfdHlwZSBjYXBhY2l0eSAoKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHJlcF8tJmd0O2NhcGFjaXR5OyB9Ci08YSBuYW1lPSJsMDAxNDQiPjwvYT4wMDE0NCAKLTxhIG5hbWU9ImwwMDE0NSI+PC9hPjAwMTQ1IAotPGEgbmFtZT0ibDAwMTQ2Ij48L2E+MDAxNDYgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBzaW5nbGUgY2hhciBleHRyYWN0aW9uPC9zcGFuPgotPGEgbmFtZT0ibDAwMTQ3Ij48L2E+MDAxNDcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiZhbXA7IGF0IChzaXplX3R5cGUgaW5kZXgpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDE0OCI+PC9hPjAwMTQ4IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gICAgPC9zcGFuPnsKLTxhIG5hbWU9ImwwMDE0OSI+PC9hPjAwMTQ5ICAgICAgICAgYXNzZXJ0KCBpbmRleCAmbHQ7IGxlbmd0aCgpICk7Ci08YSBuYW1lPSJsMDAxNTAiPjwvYT4wMDE1MCAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiByZXBfLSZndDtzdHJbIGluZGV4IF07Ci08YSBuYW1lPSJsMDAxNTEiPjwvYT4wMDE1MSAgICAgfQotPGEgbmFtZT0ibDAwMTUyIj48L2E+MDAxNTIgCi08YSBuYW1lPSJsMDAxNTMiPjwvYT4wMDE1MyAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFtdIG9wZXJhdG9yPC9zcGFuPgotPGEgbmFtZT0ibDAwMTU0Ij48L2E+MDAxNTQgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4mYW1wOyBvcGVyYXRvciBbXSAoc2l6ZV90eXBlIGluZGV4KTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3Q8L3NwYW4+Ci08YSBuYW1lPSJsMDAxNTUiPjwvYT4wMDE1NSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ICAgIDwvc3Bhbj57Ci08YSBuYW1lPSJsMDAxNTYiPjwvYT4wMDE1NiAgICAgICAgIGFzc2VydCggaW5kZXggJmx0OyBsZW5ndGgoKSApOwotPGEgbmFtZT0ibDAwMTU3Ij48L2E+MDAxNTcgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gcmVwXy0mZ3Q7c3RyWyBpbmRleCBdOwotPGEgbmFtZT0ibDAwMTU4Ij48L2E+MDAxNTggICAgIH0KLTxhIG5hbWU9ImwwMDE1OSI+PC9hPjAwMTU5IAotPGEgbmFtZT0ibDAwMTYwIj48L2E+MDAxNjAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBmaW5kIGEgY2hhciBpbiBhIHN0cmluZy4gUmV0dXJuIFRpWG1sU3RyaW5nOjpucG9zIGlmIG5vdCBmb3VuZDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDE2MSI+PC9hPjAwMTYxICAgICBzaXplX3R5cGUgZmluZCAoPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiBsb29rdXApPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDE2MiI+PC9hPjAwMTYyIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gICAgPC9zcGFuPnsKLTxhIG5hbWU9ImwwMDE2MyI+PC9hPjAwMTYzICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGZpbmQobG9va3VwLCAwKTsKLTxhIG5hbWU9ImwwMDE2NCI+PC9hPjAwMTY0ICAgICB9Ci08YSBuYW1lPSJsMDAxNjUiPjwvYT4wMDE2NSAKLTxhIG5hbWU9ImwwMDE2NiI+PC9hPjAwMTY2ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gZmluZCBhIGNoYXIgaW4gYSBzdHJpbmcgZnJvbSBhbiBvZmZzZXQuIFJldHVybiBUaVhtbFN0cmluZzo6bnBvcyBpZiBub3QgZm91bmQ8L3NwYW4+Ci08YSBuYW1lPSJsMDAxNjciPjwvYT4wMDE2NyAgICAgc2l6ZV90eXBlIGZpbmQgKDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gdG9maW5kLCBzaXplX3R5cGUgb2Zmc2V0KTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3Q8L3NwYW4+Ci08YSBuYW1lPSJsMDAxNjgiPjwvYT4wMDE2OCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ICAgIDwvc3Bhbj57Ci08YSBuYW1lPSJsMDAxNjkiPjwvYT4wMDE2OSAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+aWY8L3NwYW4+IChvZmZzZXQgJmd0Oz0gbGVuZ3RoKCkpIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBucG9zOwotPGEgbmFtZT0ibDAwMTcwIj48L2E+MDAxNzAgCi08YSBuYW1lPSJsMDAxNzEiPjwvYT4wMDE3MSAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+Zm9yPC9zcGFuPiAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBwID0gY19zdHIoKSArIG9mZnNldDsgKnAgIT0gPHNwYW4gY2xhc3M9ImNoYXJsaXRlcmFsIj4mIzM5O1wwJiMzOTs8L3NwYW4+OyArK3ApCi08YSBuYW1lPSJsMDAxNzIiPjwvYT4wMDE3MiAgICAgICAgIHsKLTxhIG5hbWU9ImwwMDE3MyI+PC9hPjAwMTczICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKCpwID09IHRvZmluZCkgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdGF0aWNfY2FzdCZsdDs8L3NwYW4+IHNpemVfdHlwZSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Jmd0Ozwvc3Bhbj4oIHAgLSBjX3N0cigpICk7Ci08YSBuYW1lPSJsMDAxNzQiPjwvYT4wMDE3NCAgICAgICAgIH0KLTxhIG5hbWU9ImwwMDE3NSI+PC9hPjAwMTc1ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IG5wb3M7Ci08YSBuYW1lPSJsMDAxNzYiPjwvYT4wMDE3NiAgICAgfQotPGEgbmFtZT0ibDAwMTc3Ij48L2E+MDAxNzcgCi08YSBuYW1lPSJsMDAxNzgiPjwvYT4wMDE3OCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBjbGVhciAoKQotPGEgbmFtZT0ibDAwMTc5Ij48L2E+MDAxNzkgICAgIHsKLTxhIG5hbWU9ImwwMDE4MCI+PC9hPjAwMTgwICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vTGVlOjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDE4MSI+PC9hPjAwMTgxICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vVGhlIG9yaWdpbmFsIHdhcyBqdXN0IHRvbyBzdHJhbmdlLCB0aG91Z2ggY29ycmVjdDo8L3NwYW4+Ci08YSBuYW1lPSJsMDAxODIiPjwvYT4wMDE4MiAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyAgVGlYbWxTdHJpbmcoKS5zd2FwKCp0aGlzKTs8L3NwYW4+Ci08YSBuYW1lPSJsMDAxODMiPjwvYT4wMDE4MyAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vL0luc3RlYWQgdXNlIHRoZSBxdWl0ICZhbXA7IHJlLWluaXQ6PC9zcGFuPgotPGEgbmFtZT0ibDAwMTg0Ij48L2E+MDAxODQgICAgICAgICBxdWl0KCk7Ci08YSBuYW1lPSJsMDAxODUiPjwvYT4wMDE4NSAgICAgICAgIGluaXQoMCwwKTsKLTxhIG5hbWU9ImwwMDE4NiI+PC9hPjAwMTg2ICAgICB9Ci08YSBuYW1lPSJsMDAxODciPjwvYT4wMDE4NyAKLTxhIG5hbWU9ImwwMDE4OCI+PC9hPjAwMTg4ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+LyogIEZ1bmN0aW9uIHRvIHJlc2VydmUgYSBiaWcgYW1vdW50IG9mIGRhdGEgd2hlbiB3ZSBrbm93IHdlJiMzOTtsbCBuZWVkIGl0LiBCZSBhd2FyZSB0aGF0IHRoaXM8L3NwYW4+Ci08YSBuYW1lPSJsMDAxODkiPjwvYT4wMDE4OSA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgICAgICBmdW5jdGlvbiBET0VTIE5PVCBjbGVhciB0aGUgY29udGVudCBvZiB0aGUgVGlYbWxTdHJpbmcgaWYgYW55IGV4aXN0cy48L3NwYW4+Ci08YSBuYW1lPSJsMDAxOTAiPjwvYT4wMDE5MCA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgICovPC9zcGFuPgotPGEgbmFtZT0ibDAwMTkxIj48L2E+MDAxOTEgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gcmVzZXJ2ZSAoc2l6ZV90eXBlIGNhcCk7Ci08YSBuYW1lPSJsMDAxOTIiPjwvYT4wMDE5MiAKLTxhIG5hbWU9ImwwMDE5MyI+PC9hPjAwMTkzICAgICBUaVhtbFN0cmluZyZhbXA7IGFzc2lnbiAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBzdHIsIHNpemVfdHlwZSBsZW4pOwotPGEgbmFtZT0ibDAwMTk0Ij48L2E+MDAxOTQgCi08YSBuYW1lPSJsMDAxOTUiPjwvYT4wMDE5NSAgICAgVGlYbWxTdHJpbmcmYW1wOyBhcHBlbmQgKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogc3RyLCBzaXplX3R5cGUgbGVuKTsKLTxhIG5hbWU9ImwwMDE5NiI+PC9hPjAwMTk2IAotPGEgbmFtZT0ibDAwMTk3Ij48L2E+MDAxOTcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gc3dhcCAoVGlYbWxTdHJpbmcmYW1wOyBvdGhlcikKLTxhIG5hbWU9ImwwMDE5OCI+PC9hPjAwMTk4ICAgICB7Ci08YSBuYW1lPSJsMDAxOTkiPjwvYT4wMDE5OSAgICAgICAgIFJlcCogciA9IHJlcF87Ci08YSBuYW1lPSJsMDAyMDAiPjwvYT4wMDIwMCAgICAgICAgIHJlcF8gPSBvdGhlci5yZXBfOwotPGEgbmFtZT0ibDAwMjAxIj48L2E+MDAyMDEgICAgICAgICBvdGhlci5yZXBfID0gcjsKLTxhIG5hbWU9ImwwMDIwMiI+PC9hPjAwMjAyICAgICB9Ci08YSBuYW1lPSJsMDAyMDMiPjwvYT4wMDIwMyAKLTxhIG5hbWU9ImwwMDIwNCI+PC9hPjAwMjA0ICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByaXZhdGU8L3NwYW4+OgotPGEgbmFtZT0ibDAwMjA1Ij48L2E+MDAyMDUgCi08YSBuYW1lPSJsMDAyMDYiPjwvYT4wMDIwNiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBpbml0KHNpemVfdHlwZSBzeikgeyBpbml0KHN6LCBzeik7IH0KLTxhIG5hbWU9ImwwMDIwNyI+PC9hPjAwMjA3ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IHNldF9zaXplKHNpemVfdHlwZSBzeikgeyByZXBfLSZndDtzdHJbIHJlcF8tJmd0O3NpemUgPSBzeiBdID0gPHNwYW4gY2xhc3M9ImNoYXJsaXRlcmFsIj4mIzM5O1wwJiMzOTs8L3NwYW4+OyB9Ci08YSBuYW1lPSJsMDAyMDgiPjwvYT4wMDIwOCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogc3RhcnQoKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHJlcF8tJmd0O3N0cjsgfQotPGEgbmFtZT0ibDAwMjA5Ij48L2E+MDAyMDkgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIGZpbmlzaCgpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gcmVwXy0mZ3Q7c3RyICsgcmVwXy0mZ3Q7c2l6ZTsgfQotPGEgbmFtZT0ibDAwMjEwIj48L2E+MDAyMTAgCi08YSBuYW1lPSJsMDAyMTEiPjwvYT4wMDIxMSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0cnVjdCA8L3NwYW4+UmVwCi08YSBuYW1lPSJsMDAyMTIiPjwvYT4wMDIxMiAgICAgewotPGEgbmFtZT0ibDAwMjEzIj48L2E+MDAyMTMgICAgICAgICBzaXplX3R5cGUgc2l6ZSwgY2FwYWNpdHk7Ci08YSBuYW1lPSJsMDAyMTQiPjwvYT4wMDIxNCAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gc3RyWzFdOwotPGEgbmFtZT0ibDAwMjE1Ij48L2E+MDAyMTUgICAgIH07Ci08YSBuYW1lPSJsMDAyMTYiPjwvYT4wMDIxNiAKLTxhIG5hbWU9ImwwMDIxNyI+PC9hPjAwMjE3ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IGluaXQoc2l6ZV90eXBlIHN6LCBzaXplX3R5cGUgY2FwKQotPGEgbmFtZT0ibDAwMjE4Ij48L2E+MDAyMTggICAgIHsKLTxhIG5hbWU9ImwwMDIxOSI+PC9hPjAwMjE5ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKGNhcCkKLTxhIG5hbWU9ImwwMDIyMCI+PC9hPjAwMjIwICAgICAgICAgewotPGEgbmFtZT0ibDAwMjIxIj48L2E+MDAyMjEgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIExlZTogdGhlIG9yaWdpbmFsIGZvcm06PC9zcGFuPgotPGEgbmFtZT0ibDAwMjIyIj48L2E+MDAyMjIgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vICByZXBfID0gc3RhdGljX2Nhc3QmbHQ7UmVwKiZndDsob3BlcmF0b3IgbmV3KHNpemVvZihSZXApICsgY2FwKSk7PC9zcGFuPgotPGEgbmFtZT0ibDAwMjIzIj48L2E+MDAyMjMgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIGRvZXNuJiMzOTt0IHdvcmsgaW4gc29tZSBjYXNlcyBvZiBuZXcgYmVpbmcgb3ZlcmxvYWRlZC4gU3dpdGNoaW5nPC9zcGFuPgotPGEgbmFtZT0ibDAwMjI0Ij48L2E+MDAyMjQgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIHRvIHRoZSBub3JtYWwgYWxsb2NhdGlvbiwgYWx0aG91Z2ggdXNlIGFuICYjMzk7aW50JiMzOTsgZm9yIHN5c3RlbXM8L3NwYW4+Ci08YSBuYW1lPSJsMDAyMjUiPjwvYT4wMDIyNSAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gdGhhdCBhcmUgb3Zlcmx5IHBpY2t5IGFib3V0IHN0cnVjdHVyZSBhbGlnbm1lbnQuPC9zcGFuPgotPGEgbmFtZT0ibDAwMjI2Ij48L2E+MDAyMjYgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzaXplX3R5cGUgYnl0ZXNOZWVkZWQgPSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c2l6ZW9mPC9zcGFuPihSZXApICsgY2FwOwotPGEgbmFtZT0ibDAwMjI3Ij48L2E+MDAyMjcgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzaXplX3R5cGUgaW50c05lZWRlZCA9ICggYnl0ZXNOZWVkZWQgKyA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c2l6ZW9mPC9zcGFuPihpbnQpIC0gMSApIC8gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnNpemVvZjwvc3Bhbj4oIGludCApOyAKLTxhIG5hbWU9ImwwMDIyOCI+PC9hPjAwMjI4ICAgICAgICAgICAgIHJlcF8gPSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cmVpbnRlcnByZXRfY2FzdCZsdDs8L3NwYW4+UmVwKjxzcGFuIGNsYXNzPSJrZXl3b3JkIj4mZ3Q7PC9zcGFuPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPm5ldzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+WyBpbnRzTmVlZGVkIF0gKTsKLTxhIG5hbWU9ImwwMDIyOSI+PC9hPjAwMjI5IAotPGEgbmFtZT0ibDAwMjMwIj48L2E+MDAyMzAgICAgICAgICAgICAgcmVwXy0mZ3Q7c3RyWyByZXBfLSZndDtzaXplID0gc3ogXSA9IDxzcGFuIGNsYXNzPSJjaGFybGl0ZXJhbCI+JiMzOTtcMCYjMzk7PC9zcGFuPjsKLTxhIG5hbWU9ImwwMDIzMSI+PC9hPjAwMjMxICAgICAgICAgICAgIHJlcF8tJmd0O2NhcGFjaXR5ID0gY2FwOwotPGEgbmFtZT0ibDAwMjMyIj48L2E+MDAyMzIgICAgICAgICB9Ci08YSBuYW1lPSJsMDAyMzMiPjwvYT4wMDIzMyAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+ZWxzZTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDIzNCI+PC9hPjAwMjM0ICAgICAgICAgewotPGEgbmFtZT0ibDAwMjM1Ij48L2E+MDAyMzUgICAgICAgICAgICAgcmVwXyA9ICZhbXA7bnVsbHJlcF87Ci08YSBuYW1lPSJsMDAyMzYiPjwvYT4wMDIzNiAgICAgICAgIH0KLTxhIG5hbWU9ImwwMDIzNyI+PC9hPjAwMjM3ICAgICB9Ci08YSBuYW1lPSJsMDAyMzgiPjwvYT4wMDIzOCAKLTxhIG5hbWU9ImwwMDIzOSI+PC9hPjAwMjM5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IHF1aXQoKQotPGEgbmFtZT0ibDAwMjQwIj48L2E+MDAyNDAgICAgIHsKLTxhIG5hbWU9ImwwMDI0MSI+PC9hPjAwMjQxICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKHJlcF8gIT0gJmFtcDtudWxscmVwXykKLTxhIG5hbWU9ImwwMDI0MiI+PC9hPjAwMjQyICAgICAgICAgewotPGEgbmFtZT0ibDAwMjQzIj48L2E+MDAyNDMgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFRoZSByZXBfIGlzIHJlYWxseSBhbiBhcnJheSBvZiBpbnRzLiAoc2VlIHRoZSBhbGxvY2F0b3IsIGFib3ZlKS48L3NwYW4+Ci08YSBuYW1lPSJsMDAyNDQiPjwvYT4wMDI0NCAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gQ2FzdCBpdCBiYWNrIGJlZm9yZSBkZWxldGUsIHNvIHRoZSBjb21waWxlciB3b24mIzM5O3QgaW5jb3JyZWN0bHkgY2FsbCBkZXN0cnVjdG9ycy48L3NwYW4+Ci08YSBuYW1lPSJsMDAyNDUiPjwvYT4wMDI0NSAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ZGVsZXRlPC9zcGFuPiBbXSAoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5yZWludGVycHJldF9jYXN0Jmx0Ozwvc3Bhbj48c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4qPHNwYW4gY2xhc3M9ImtleXdvcmQiPiZndDs8L3NwYW4+KCByZXBfICkgKTsKLTxhIG5hbWU9ImwwMDI0NiI+PC9hPjAwMjQ2ICAgICAgICAgfQotPGEgbmFtZT0ibDAwMjQ3Ij48L2E+MDAyNDcgICAgIH0KLTxhIG5hbWU9ImwwMDI0OCI+PC9hPjAwMjQ4IAotPGEgbmFtZT0ibDAwMjQ5Ij48L2E+MDAyNDkgICAgIFJlcCAqIHJlcF87Ci08YSBuYW1lPSJsMDAyNTAiPjwvYT4wMDI1MCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gUmVwIG51bGxyZXBfOwotPGEgbmFtZT0ibDAwMjUxIj48L2E+MDAyNTEgCi08YSBuYW1lPSJsMDAyNTIiPjwvYT4wMDI1MiB9IDsKLTxhIG5hbWU9ImwwMDI1MyI+PC9hPjAwMjUzIAotPGEgbmFtZT0ibDAwMjU0Ij48L2E+MDAyNTQgCi08YSBuYW1lPSJsMDAyNTUiPjwvYT4wMDI1NSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+aW5saW5lPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IG9wZXJhdG9yID09ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGEsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgYikKLTxhIG5hbWU9ImwwMDI1NiI+PC9hPjAwMjU2IHsKLTxhIG5hbWU9ImwwMDI1NyI+PC9hPjAwMjU3ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gICAgKCBhLmxlbmd0aCgpID09IGIubGVuZ3RoKCkgKSAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIG9wdGltaXphdGlvbiBvbiBzb21lIHBsYXRmb3Jtczwvc3Bhbj4KLTxhIG5hbWU9ImwwMDI1OCI+PC9hPjAwMjU4ICAgICAgICAgICAgJmFtcDsmYW1wOyAoIHN0cmNtcChhLmNfc3RyKCksIGIuY19zdHIoKSkgPT0gMCApOyAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gYWN0dWFsIGNvbXBhcmU8L3NwYW4+Ci08YSBuYW1lPSJsMDAyNTkiPjwvYT4wMDI1OSB9Ci08YSBuYW1lPSJsMDAyNjAiPjwvYT4wMDI2MCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+aW5saW5lPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IG9wZXJhdG9yICZsdDsgKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgYSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBiKQotPGEgbmFtZT0ibDAwMjYxIj48L2E+MDAyNjEgewotPGEgbmFtZT0ibDAwMjYyIj48L2E+MDAyNjIgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBzdHJjbXAoYS5jX3N0cigpLCBiLmNfc3RyKCkpICZsdDsgMDsKLTxhIG5hbWU9ImwwMDI2MyI+PC9hPjAwMjYzIH0KLTxhIG5hbWU9ImwwMDI2NCI+PC9hPjAwMjY0IAotPGEgbmFtZT0ibDAwMjY1Ij48L2E+MDAyNjUgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmlubGluZTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBvcGVyYXRvciAhPSAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBhLCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGIpIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICEoYSA9PSBiKTsgfQotPGEgbmFtZT0ibDAwMjY2Ij48L2E+MDAyNjYgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmlubGluZTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBvcGVyYXRvciAmZ3Q7ICAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBhLCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGIpIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGIgJmx0OyBhOyB9Ci08YSBuYW1lPSJsMDAyNjciPjwvYT4wMDI2NyA8c3BhbiBjbGFzcz0ia2V5d29yZCI+aW5saW5lPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IG9wZXJhdG9yICZsdDs9ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGEsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgYikgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gIShiICZsdDsgYSk7IH0KLTxhIG5hbWU9ImwwMDI2OCI+PC9hPjAwMjY4IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5pbmxpbmU8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gb3BlcmF0b3IgJmd0Oz0gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgYSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBiKSB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAhKGEgJmx0OyBiKTsgfQotPGEgbmFtZT0ibDAwMjY5Ij48L2E+MDAyNjkgCi08YSBuYW1lPSJsMDAyNzAiPjwvYT4wMDI3MCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+aW5saW5lPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IG9wZXJhdG9yID09ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGEsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogYikgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gc3RyY21wKGEuY19zdHIoKSwgYikgPT0gMDsgfQotPGEgbmFtZT0ibDAwMjcxIj48L2E+MDAyNzEgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmlubGluZTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBvcGVyYXRvciA9PSAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBhLCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGIpIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGIgPT0gYTsgfQotPGEgbmFtZT0ibDAwMjcyIj48L2E+MDAyNzIgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmlubGluZTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBvcGVyYXRvciAhPSAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBhLCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIGIpIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICEoYSA9PSBiKTsgfQotPGEgbmFtZT0ibDAwMjczIj48L2E+MDAyNzMgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmlubGluZTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBvcGVyYXRvciAhPSAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBhLCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGIpIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICEoYiA9PSBhKTsgfQotPGEgbmFtZT0ibDAwMjc0Ij48L2E+MDAyNzQgCi08YSBuYW1lPSJsMDAyNzUiPjwvYT4wMDI3NSBUaVhtbFN0cmluZyBvcGVyYXRvciArICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGEsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgYik7Ci08YSBuYW1lPSJsMDAyNzYiPjwvYT4wMDI3NiBUaVhtbFN0cmluZyBvcGVyYXRvciArICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sU3RyaW5nICZhbXA7IGEsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogYik7Ci08YSBuYW1lPSJsMDAyNzciPjwvYT4wMDI3NyBUaVhtbFN0cmluZyBvcGVyYXRvciArICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIGEsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxTdHJpbmcgJmFtcDsgYik7Ci08YSBuYW1lPSJsMDAyNzgiPjwvYT4wMDI3OCAKLTxhIG5hbWU9ImwwMDI3OSI+PC9hPjAwMjc5IAotPGEgbmFtZT0ibDAwMjgwIj48L2E+MDAyODAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8qPC9zcGFuPgotPGEgbmFtZT0ibDAwMjgxIj48L2E+MDAyODEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgIFRpWG1sT3V0U3RyZWFtIGlzIGFuIGVtdWxhdGlvbiBvZiBzdGQ6Om9zdHJlYW0uIEl0IGlzIGJhc2VkIG9uIFRpWG1sU3RyaW5nLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDI4MiI+PC9hPjAwMjgyIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICBPbmx5IHRoZSBvcGVyYXRvcnMgdGhhdCB3ZSBuZWVkIGZvciBUaW55WE1MIGhhdmUgYmVlbiBkZXZlbG9wcGVkLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDI4MyI+PC9hPjAwMjgzIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4qLzwvc3Bhbj4KLTxhIG5hbWU9ImwwMDI4NCI+PC9hPjAwMjg0IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+VGlYbWxPdXRTdHJlYW0gOiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPiBUaVhtbFN0cmluZwotPGEgbmFtZT0ibDAwMjg1Ij48L2E+MDAyODUgewotPGEgbmFtZT0ibDAwMjg2Ij48L2E+MDAyODYgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj4gOgotPGEgbmFtZT0ibDAwMjg3Ij48L2E+MDAyODcgCi08YSBuYW1lPSJsMDAyODgiPjwvYT4wMDI4OCAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFRpWG1sT3V0U3RyZWFtICZsdDsmbHQ7IG9wZXJhdG9yLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDI4OSI+PC9hPjAwMjg5ICAgICBUaVhtbE91dFN0cmVhbSAmYW1wOyBvcGVyYXRvciAmbHQ7Jmx0OyAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbFN0cmluZyAmYW1wOyBpbikKLTxhIG5hbWU9ImwwMDI5MCI+PC9hPjAwMjkwICAgICB7Ci08YSBuYW1lPSJsMDAyOTEiPjwvYT4wMDI5MSAgICAgICAgICo8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gKz0gaW47Ci08YSBuYW1lPSJsMDAyOTIiPjwvYT4wMDI5MiAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAqPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+OwotPGEgbmFtZT0ibDAwMjkzIj48L2E+MDAyOTMgICAgIH0KLTxhIG5hbWU9ImwwMDI5NCI+PC9hPjAwMjk0IAotPGEgbmFtZT0ibDAwMjk1Ij48L2E+MDAyOTUgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBUaVhtbE91dFN0cmVhbSAmbHQ7Jmx0OyBvcGVyYXRvci48L3NwYW4+Ci08YSBuYW1lPSJsMDAyOTYiPjwvYT4wMDI5NiAgICAgVGlYbWxPdXRTdHJlYW0gJmFtcDsgb3BlcmF0b3IgJmx0OyZsdDsgKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIGluKQotPGEgbmFtZT0ibDAwMjk3Ij48L2E+MDAyOTcgICAgIHsKLTxhIG5hbWU9ImwwMDI5OCI+PC9hPjAwMjk4ICAgICAgICAgKjxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPiArPSBpbjsKLTxhIG5hbWU9ImwwMDI5OSI+PC9hPjAwMjk5ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICo8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj47Ci08YSBuYW1lPSJsMDAzMDAiPjwvYT4wMDMwMCAgICAgfQotPGEgbmFtZT0ibDAwMzAxIj48L2E+MDAzMDEgCi08YSBuYW1lPSJsMDAzMDIiPjwvYT4wMDMwMiB9IDsKLTxhIG5hbWU9ImwwMDMwMyI+PC9hPjAwMzAzIAotPGEgbmFtZT0ibDAwMzA0Ij48L2E+MDAzMDQgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2VuZGlmICAvLyBUSVhNTF9TVFJJTkdfSU5DTFVERUQ8L3NwYW4+Ci08YSBuYW1lPSJsMDAzMDUiPjwvYT4wMDMwNSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2VuZGlmICAvLyBUSVhNTF9VU0VfU1RMPC9zcGFuPgotPC9wcmU+PC9kaXY+PC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKLTxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCI+Ci08aW1nIGNsYXNzPSJmb290ZXIiIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIvPjwvYT4gMS42LjIgPC9zbWFsbD48L2FkZHJlc3M+Ci08L2JvZHk+Ci08L2h0bWw+CmRpZmYgLS1naXQgYS9kb2NzL3Rpbnl4bWxfOGgtc291cmNlLmh0bWwgYi9kb2NzL3Rpbnl4bWxfOGgtc291cmNlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjczNjg3YgotLS0gL2Rldi9udWxsCisrKyBiL2RvY3MvdGlueXhtbF84aC1zb3VyY2UuaHRtbApAQCAtMCwwICsxLDEwMzcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzNDLy9EVEQgSFRNTCA0LjAxIFRyYW5zaXRpb25hbC8vRU4iPgorPGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1pc28tODg1OS0xIj4KKzx0aXRsZT5UaW55WG1sOiB0aW55eG1sLmggU291cmNlIEZpbGU8L3RpdGxlPgorPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiPgorPC9oZWFkPjxib2R5PgorPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjQuNCAtLT4KKzxkaXYgY2xhc3M9InFpbmRleCI+PGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaW5kZXguaHRtbCI+TWFpbiZuYnNwO1BhZ2U8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iaGllcmFyY2h5Lmh0bWwiPkNsYXNzJm5ic3A7SGllcmFyY2h5PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImFubm90YXRlZC5odG1sIj5DbGFzcyZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZmlsZXMuaHRtbCI+RmlsZSZuYnNwO0xpc3Q8L2E+IHwgPGEgY2xhc3M9InFpbmRleCIgaHJlZj0iZnVuY3Rpb25zLmh0bWwiPkNsYXNzJm5ic3A7TWVtYmVyczwvYT48L2Rpdj4KKzxoMT50aW55eG1sLmg8L2gxPjxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+PGEgbmFtZT0ibDAwMDAxIj48L2E+MDAwMDEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8qPC9zcGFuPgorPGEgbmFtZT0ibDAwMDAyIj48L2E+MDAwMDIgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPnd3dy5zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvdGlueXhtbDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAwMyI+PC9hPjAwMDAzIDxzcGFuIGNsYXNzPSJjb21tZW50Ij5PcmlnaW5hbCBjb2RlICgyLjAgYW5kIGVhcmxpZXIgKWNvcHlyaWdodCAoYykgMjAwMC0yMDAyIExlZSBUaG9tYXNvbiAod3d3LmdyaW5uaW5nbGl6YXJkLmNvbSk8L3NwYW4+Cis8YSBuYW1lPSJsMDAwMDQiPjwvYT4wMDAwNCA8c3BhbiBjbGFzcz0iY29tbWVudCI+PC9zcGFuPgorPGEgbmFtZT0ibDAwMDA1Ij48L2E+MDAwMDUgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPlRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgJ2FzLWlzJywgd2l0aG91dCBhbnkgZXhwcmVzcyBvciBpbXBsaWVkPC9zcGFuPgorPGEgbmFtZT0ibDAwMDA2Ij48L2E+MDAwMDYgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPndhcnJhbnR5LiBJbiBubyBldmVudCB3aWxsIHRoZSBhdXRob3JzIGJlIGhlbGQgbGlhYmxlIGZvciBhbnk8L3NwYW4+Cis8YSBuYW1lPSJsMDAwMDciPjwvYT4wMDAwNyA8c3BhbiBjbGFzcz0iY29tbWVudCI+ZGFtYWdlcyBhcmlzaW5nIGZyb20gdGhlIHVzZSBvZiB0aGlzIHNvZnR3YXJlLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAwOCI+PC9hPjAwMDA4IDxzcGFuIGNsYXNzPSJjb21tZW50Ij48L3NwYW4+Cis8YSBuYW1lPSJsMDAwMDkiPjwvYT4wMDAwOSA8c3BhbiBjbGFzcz0iY29tbWVudCI+UGVybWlzc2lvbiBpcyBncmFudGVkIHRvIGFueW9uZSB0byB1c2UgdGhpcyBzb2Z0d2FyZSBmb3IgYW55PC9zcGFuPgorPGEgbmFtZT0ibDAwMDEwIj48L2E+MDAwMTAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPnB1cnBvc2UsIGluY2x1ZGluZyBjb21tZXJjaWFsIGFwcGxpY2F0aW9ucywgYW5kIHRvIGFsdGVyIGl0IGFuZDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAxMSI+PC9hPjAwMDExIDxzcGFuIGNsYXNzPSJjb21tZW50Ij5yZWRpc3RyaWJ1dGUgaXQgZnJlZWx5LCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgcmVzdHJpY3Rpb25zOjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAxMiI+PC9hPjAwMDEyIDxzcGFuIGNsYXNzPSJjb21tZW50Ij48L3NwYW4+Cis8YSBuYW1lPSJsMDAwMTMiPjwvYT4wMDAxMyA8c3BhbiBjbGFzcz0iY29tbWVudCI+MS4gVGhlIG9yaWdpbiBvZiB0aGlzIHNvZnR3YXJlIG11c3Qgbm90IGJlIG1pc3JlcHJlc2VudGVkOyB5b3UgbXVzdDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAxNCI+PC9hPjAwMDE0IDxzcGFuIGNsYXNzPSJjb21tZW50Ij5ub3QgY2xhaW0gdGhhdCB5b3Ugd3JvdGUgdGhlIG9yaWdpbmFsIHNvZnR3YXJlLiBJZiB5b3UgdXNlIHRoaXM8L3NwYW4+Cis8YSBuYW1lPSJsMDAwMTUiPjwvYT4wMDAxNSA8c3BhbiBjbGFzcz0iY29tbWVudCI+c29mdHdhcmUgaW4gYSBwcm9kdWN0LCBhbiBhY2tub3dsZWRnbWVudCBpbiB0aGUgcHJvZHVjdCBkb2N1bWVudGF0aW9uPC9zcGFuPgorPGEgbmFtZT0ibDAwMDE2Ij48L2E+MDAwMTYgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPndvdWxkIGJlIGFwcHJlY2lhdGVkIGJ1dCBpcyBub3QgcmVxdWlyZWQuPC9zcGFuPgorPGEgbmFtZT0ibDAwMDE3Ij48L2E+MDAwMTcgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAxOCI+PC9hPjAwMDE4IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4yLiBBbHRlcmVkIHNvdXJjZSB2ZXJzaW9ucyBtdXN0IGJlIHBsYWlubHkgbWFya2VkIGFzIHN1Y2gsIGFuZDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAxOSI+PC9hPjAwMDE5IDxzcGFuIGNsYXNzPSJjb21tZW50Ij5tdXN0IG5vdCBiZSBtaXNyZXByZXNlbnRlZCBhcyBiZWluZyB0aGUgb3JpZ2luYWwgc29mdHdhcmUuPC9zcGFuPgorPGEgbmFtZT0ibDAwMDIwIj48L2E+MDAwMjAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAyMSI+PC9hPjAwMDIxIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4zLiBUaGlzIG5vdGljZSBtYXkgbm90IGJlIHJlbW92ZWQgb3IgYWx0ZXJlZCBmcm9tIGFueSBzb3VyY2U8L3NwYW4+Cis8YSBuYW1lPSJsMDAwMjIiPjwvYT4wMDAyMiA8c3BhbiBjbGFzcz0iY29tbWVudCI+ZGlzdHJpYnV0aW9uLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAyMyI+PC9hPjAwMDIzIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4qLzwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAyNCI+PC9hPjAwMDI0IAorPGEgbmFtZT0ibDAwMDI1Ij48L2E+MDAwMjUgCis8YSBuYW1lPSJsMDAwMjYiPjwvYT4wMDAyNiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jaWZuZGVmIFRJTllYTUxfSU5DTFVERUQ8L3NwYW4+Cis8YSBuYW1lPSJsMDAwMjciPjwvYT4wMDAyNyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2RlZmluZSBUSU5ZWE1MX0lOQ0xVREVEPC9zcGFuPgorPGEgbmFtZT0ibDAwMDI4Ij48L2E+MDAwMjggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwMDI5Ij48L2E+MDAwMjkgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2lmZGVmIF9NU0NfVkVSPC9zcGFuPgorPGEgbmFtZT0ibDAwMDMwIj48L2E+MDAwMzAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNwcmFnbWEgd2FybmluZyggcHVzaCApPC9zcGFuPgorPGEgbmFtZT0ibDAwMDMxIj48L2E+MDAwMzEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNwcmFnbWEgd2FybmluZyggZGlzYWJsZSA6IDQ1MzAgKTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAzMiI+PC9hPjAwMDMyIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jcHJhZ21hIHdhcm5pbmcoIGRpc2FibGUgOiA0Nzg2ICk8L3NwYW4+Cis8YSBuYW1lPSJsMDAwMzMiPjwvYT4wMDAzMyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAwMDM0Ij48L2E+MDAwMzQgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwMDM1Ij48L2E+MDAwMzUgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2luY2x1ZGUgJmx0O2N0eXBlLmgmZ3Q7PC9zcGFuPgorPGEgbmFtZT0ibDAwMDM2Ij48L2E+MDAwMzYgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2luY2x1ZGUgJmx0O3N0ZGlvLmgmZ3Q7PC9zcGFuPgorPGEgbmFtZT0ibDAwMDM3Ij48L2E+MDAwMzcgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2luY2x1ZGUgJmx0O3N0ZGxpYi5oJmd0Ozwvc3Bhbj4KKzxhIG5hbWU9ImwwMDAzOCI+PC9hPjAwMDM4IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNpbmNsdWRlICZsdDtzdHJpbmcuaCZndDs8L3NwYW4+Cis8YSBuYW1lPSJsMDAwMzkiPjwvYT4wMDAzOSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jaW5jbHVkZSAmbHQ7YXNzZXJ0LmgmZ3Q7PC9zcGFuPgorPGEgbmFtZT0ibDAwMDQwIj48L2E+MDAwNDAgCis8YSBuYW1lPSJsMDAwNDEiPjwvYT4wMDA0MSA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gSGVscCBvdXQgd2luZG93czo8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNDIiPjwvYT4wMDA0MiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jaWYgZGVmaW5lZCggX0RFQlVHICkgJmFtcDsmYW1wOyAhZGVmaW5lZCggREVCVUcgKTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA0MyI+PC9hPjAwMDQzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jZGVmaW5lIERFQlVHPC9zcGFuPgorPGEgbmFtZT0ibDAwMDQ0Ij48L2E+MDAwNDQgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNlbmRpZjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA0NSI+PC9hPjAwMDQ1IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA0NiI+PC9hPjAwMDQ2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNpZiBkZWZpbmVkKCBERUJVRyApICZhbXA7JmFtcDsgZGVmaW5lZCggX01TQ19WRVIgKTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA0NyI+PC9hPjAwMDQ3IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jaW5jbHVkZSAmbHQ7d2luZG93cy5oJmd0Ozwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA0OCI+PC9hPjAwMDQ4IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNkZWZpbmUgVElYTUxfTE9HIE91dHB1dERlYnVnU3RyaW5nPC9zcGFuPgorPGEgbmFtZT0ibDAwMDQ5Ij48L2E+MDAwNDkgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNlbHNlPC9zcGFuPgorPGEgbmFtZT0ibDAwMDUwIj48L2E+MDAwNTAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNkZWZpbmUgVElYTUxfTE9HIHByaW50Zjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA1MSI+PC9hPjAwMDUxIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jZW5kaWY8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNTIiPjwvYT4wMDA1MiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Cis8YSBuYW1lPSJsMDAwNTMiPjwvYT4wMDA1MyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA1NCI+PC9hPjAwMDU0IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2luY2x1ZGUgJmx0O3N0cmluZyZndDs8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNTUiPjwvYT4wMDA1NSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2luY2x1ZGUgJmx0O2lvc3RyZWFtJmd0Ozwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA1NiI+PC9hPjAwMDU2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZGVmaW5lIFRJWE1MX1NUUklORyAgICBzdGQ6OnN0cmluZzwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA1NyI+PC9hPjAwMDU3IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2RlZmluZSBUSVhNTF9JU1RSRUFNICAgc3RkOjppc3RyZWFtPC9zcGFuPgorPGEgbmFtZT0ibDAwMDU4Ij48L2E+MDAwNTggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZGVmaW5lIFRJWE1MX09TVFJFQU0gICBzdGQ6Om9zdHJlYW08L3NwYW4+Cis8YSBuYW1lPSJsMDAwNTkiPjwvYT4wMDA1OSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2Vsc2U8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNjAiPjwvYT4wMDA2MCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpbmNsdWRlICJ0aW55c3RyLmgiPC9zcGFuPgorPGEgbmFtZT0ibDAwMDYxIj48L2E+MDAwNjEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNkZWZpbmUgVElYTUxfU1RSSU5HICAgIFRpWG1sU3RyaW5nPC9zcGFuPgorPGEgbmFtZT0ibDAwMDYyIj48L2E+MDAwNjIgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZGVmaW5lIFRJWE1MX09TVFJFQU0gICBUaVhtbE91dFN0cmVhbTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA2MyI+PC9hPjAwMDYzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jZW5kaWY8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNjQiPjwvYT4wMDA2NCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Cis8YSBuYW1lPSJsMDAwNjUiPjwvYT4wMDA2NSA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gRGVwcmVjYXRlZCBsaWJyYXJ5IGZ1bmN0aW9uIGhlbGwuIENvbXBpbGVycyB3YW50IHRvIHVzZSB0aGU8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNjYiPjwvYT4wMDA2NiA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gbmV3IHNhZmUgdmVyc2lvbnMuIFRoaXMgcHJvYmFibHkgZG9lc24ndCBmdWxseSBhZGRyZXNzIHRoZSBwcm9ibGVtLDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA2NyI+PC9hPjAwMDY3IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBidXQgaXQgZ2V0cyBjbG9zZXIuIFRoZXJlIGFyZSB0b28gbWFueSBjb21waWxlcnMgZm9yIG1lIHRvIGZ1bGx5PC9zcGFuPgorPGEgbmFtZT0ibDAwMDY4Ij48L2E+MDAwNjggPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIHRlc3QuIElmIHlvdSBnZXQgY29tcGlsYXRpb24gdHJvdWJsZXMsIHVuZGVmaW5lIFRJWE1MX1NBRkU8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNjkiPjwvYT4wMDA2OSAKKzxhIG5hbWU9ImwwMDA3MCI+PC9hPjAwMDcwIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNkZWZpbmUgVElYTUxfU0FGRSAgICAgIC8vIFRpbnlYbWwgaXNuJ3QgZnVsbHkgYnVmZmVyIG92ZXJydW4gcHJvdGVjdGVkLCBzYWZlIGNvZGUuIFRoaXMgaXMgd29yayBpbiBwcm9ncmVzcy48L3NwYW4+Cis8YSBuYW1lPSJsMDAwNzEiPjwvYT4wMDA3MSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2lmZGVmIFRJWE1MX1NBRkU8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNzIiPjwvYT4wMDA3MiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZiBkZWZpbmVkKF9NU0NfVkVSKSAmYW1wOyZhbXA7IChfTVNDX1ZFUiAmZ3Q7PSAxMjAwICk8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNzMiPjwvYT4wMDA3MyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gTWljcm9zb2Z0IHZpc3VhbCBzdHVkaW8sIHZlcnNpb24gNiBhbmQgaGlnaGVyLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA3NCI+PC9hPjAwMDc0ICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vI3ByYWdtYSBtZXNzYWdlKCAiVXNpbmcgX3NuKiBmdW5jdGlvbnMuIiApPC9zcGFuPgorPGEgbmFtZT0ibDAwMDc1Ij48L2E+MDAwNzUgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICAgICAjZGVmaW5lIFRJWE1MX1NOUFJJTlRGIF9zbnByaW50Zjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA3NiI+PC9hPjAwMDc2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgICAgICNkZWZpbmUgVElYTUxfU05TQ0FORiAgX3Nuc2NhbmY8L3NwYW4+Cis8YSBuYW1lPSJsMDAwNzciPjwvYT4wMDA3NyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbGlmIGRlZmluZWQoX19HTlVDX18pICZhbXA7JmFtcDsgKF9fR05VQ19fICZndDs9IDMgKTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA3OCI+PC9hPjAwMDc4IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBHQ0MgdmVyc2lvbiAzIGFuZCBoaWdoZXIuczwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA3OSI+PC9hPjAwMDc5ICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vI3dhcm5pbmcoICJVc2luZyBzbiogZnVuY3Rpb25zLiIgKTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA4MCI+PC9hPjAwMDgwIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAgICAgI2RlZmluZSBUSVhNTF9TTlBSSU5URiBzbnByaW50Zjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA4MSI+PC9hPjAwMDgxIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgICAgICNkZWZpbmUgVElYTUxfU05TQ0FORiAgc25zY2FuZjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDA4MiI+PC9hPjAwMDgyIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAwMDgzIj48L2E+MDAwODMgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNlbmRpZiAgPC9zcGFuPgorPGEgbmFtZT0ibDAwMDg0Ij48L2E+MDAwODQgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwMDg1Ij48L2E+MDAwODUgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+OworPGEgbmFtZT0ibDAwMDg2Ij48L2E+MDAwODYgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjsKKzxhIG5hbWU9ImwwMDA4NyI+PC9hPjAwMDg3IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT47Cis8YSBuYW1lPSJsMDAwODgiPjwvYT4wMDA4OCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+OworPGEgbmFtZT0ibDAwMDg5Ij48L2E+MDAwODkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT47Cis8YSBuYW1lPSJsMDAwOTAiPjwvYT4wMDA5MCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+OworPGEgbmFtZT0ibDAwMDkxIj48L2E+MDAwOTEgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiPlRpWG1sRGVjbGFyYXRpb248L2E+OworPGEgbmFtZT0ibDAwMDkyIj48L2E+MDAwOTIgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj5UaVhtbFBhcnNpbmdEYXRhOworPGEgbmFtZT0ibDAwMDkzIj48L2E+MDAwOTMgCis8YSBuYW1lPSJsMDAwOTQiPjwvYT4wMDA5NCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBUSVhNTF9NQUpPUl9WRVJTSU9OID0gMjsKKzxhIG5hbWU9ImwwMDA5NSI+PC9hPjAwMDk1IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IFRJWE1MX01JTk9SX1ZFUlNJT04gPSA0OworPGEgbmFtZT0ibDAwMDk2Ij48L2E+MDAwOTYgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gVElYTUxfUEFUQ0hfVkVSU0lPTiA9IDA7Cis8YSBuYW1lPSJsMDAwOTciPjwvYT4wMDA5NyAKKzxhIG5hbWU9ImwwMDA5OCI+PC9hPjAwMDk4IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKiAgSW50ZXJuYWwgc3RydWN0dXJlIGZvciB0cmFja2luZyBsb2NhdGlvbiBvZiBpdGVtcyA8L3NwYW4+Cis8YSBuYW1lPSJsMDAwOTkiPjwvYT4wMDA5OSA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgIGluIHRoZSBYTUwgZmlsZS48L3NwYW4+Cis8YSBuYW1lPSJsMDAxMDAiPjwvYT4wMDEwMCA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ki88L3NwYW4+Cis8YSBuYW1lPSJsMDAxMDEiPjwvYT4wMDEwMSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RydWN0IDwvc3Bhbj5UaVhtbEN1cnNvcgorPGEgbmFtZT0ibDAwMTAyIj48L2E+MDAxMDIgeworPGEgbmFtZT0ibDAwMTAzIj48L2E+MDAxMDMgICAgIFRpWG1sQ3Vyc29yKCkgICAgICAgeyBDbGVhcigpOyB9Cis8YSBuYW1lPSJsMDAxMDQiPjwvYT4wMDEwNCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBDbGVhcigpICAgICAgICB7IHJvdyA9IGNvbCA9IC0xOyB9Cis8YSBuYW1lPSJsMDAxMDUiPjwvYT4wMDEwNSAKKzxhIG5hbWU9ImwwMDEwNiI+PC9hPjAwMTA2ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gcm93OyAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gMCBiYXNlZC48L3NwYW4+Cis8YSBuYW1lPSJsMDAxMDciPjwvYT4wMDEwNyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGNvbDsgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIDAgYmFzZWQuPC9zcGFuPgorPGEgbmFtZT0ibDAwMTA4Ij48L2E+MDAxMDggfTsKKzxhIG5hbWU9ImwwMDEwOSI+PC9hPjAwMTA5IAorPGEgbmFtZT0ibDAwMTEwIj48L2E+MDAxMTAgCis8YSBuYW1lPSJsMDAxMTEiPjwvYT4wMDExMSA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gT25seSB1c2VkIGJ5IEF0dHJpYnV0ZTo6UXVlcnkgZnVuY3Rpb25zPC9zcGFuPgorPGEgbmFtZT0ibDAwMTEyIj48L2E+MDAxMTIgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmVudW08L3NwYW4+IAorPGEgbmFtZT0ibDAwMTEzIj48L2E+MDAxMTMgeyAKKzxhIG5hbWU9ImwwMDExNCI+PC9hPjAwMTE0ICAgICBUSVhNTF9TVUNDRVNTLAorPGEgbmFtZT0ibDAwMTE1Ij48L2E+MDAxMTUgICAgIFRJWE1MX05PX0FUVFJJQlVURSwKKzxhIG5hbWU9ImwwMDExNiI+PC9hPjAwMTE2ICAgICBUSVhNTF9XUk9OR19UWVBFCis8YSBuYW1lPSJsMDAxMTciPjwvYT4wMDExNyB9OworPGEgbmFtZT0ibDAwMTE4Ij48L2E+MDAxMTggCis8YSBuYW1lPSJsMDAxMTkiPjwvYT4wMDExOSAKKzxhIG5hbWU9ImwwMDEyMCI+PC9hPjAwMTIwIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBVc2VkIGJ5IHRoZSBwYXJzaW5nIHJvdXRpbmVzLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDEyMSI+PC9hPjAwMTIxIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5lbnVtPC9zcGFuPiBUaVhtbEVuY29kaW5nCis8YSBuYW1lPSJsMDAxMjIiPjwvYT4wMDEyMiB7Cis8YSBuYW1lPSJsMDAxMjMiPjwvYT4wMDEyMyAgICAgVElYTUxfRU5DT0RJTkdfVU5LTk9XTiwKKzxhIG5hbWU9ImwwMDEyNCI+PC9hPjAwMTI0ICAgICBUSVhNTF9FTkNPRElOR19VVEY4LAorPGEgbmFtZT0ibDAwMTI1Ij48L2E+MDAxMjUgICAgIFRJWE1MX0VOQ09ESU5HX0xFR0FDWQorPGEgbmFtZT0ibDAwMTI2Ij48L2E+MDAxMjYgfTsKKzxhIG5hbWU9ImwwMDEyNyI+PC9hPjAwMTI3IAorPGEgbmFtZT0ibDAwMTI4Ij48L2E+MDAxMjggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbEVuY29kaW5nIFRJWE1MX0RFRkFVTFRfRU5DT0RJTkcgPSBUSVhNTF9FTkNPRElOR19VTktOT1dOOworPGEgbmFtZT0ibDAwMTI5Ij48L2E+MDAxMjkgCis8YSBuYW1lPSJsMDAxNTIiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+MDAxNTI8L2E+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT4KKzxhIG5hbWU9ImwwMDE1MyI+PC9hPjAwMTUzIHsKKzxhIG5hbWU9ImwwMDE1NCI+PC9hPjAwMTU0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ZnJpZW5kPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+OworPGEgbmFtZT0ibDAwMTU1Ij48L2E+MDAxNTUgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5mcmllbmQ8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT47Cis8YSBuYW1lPSJsMDAxNTYiPjwvYT4wMDE1NiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZyaWVuZDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+OworPGEgbmFtZT0ibDAwMTU3Ij48L2E+MDAxNTcgCis8YSBuYW1lPSJsMDAxNTgiPjwvYT4wMDE1OCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPjoKKzxhIG5hbWU9ImwwMDE1OSI+PC9hPjAwMTU5ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPigpIDogICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNwMSI+dXNlckRhdGE8L2E+KDApIHt9Cis8YSBuYW1lPSJsMDAxNjAiPjwvYT4wMDE2MCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IH48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPigpICAgICAgICAgICAgICAgICAgICB7fQorPGEgbmFtZT0ibDAwMTYxIj48L2E+MDAxNjEgCis8YSBuYW1lPSJsMDAxNjciPjwvYT4wMDE2NyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTIiPlByaW50PC9hPiggRklMRSogY2ZpbGUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBkZXB0aCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdCA8L3NwYW4+PSAwOworPGEgbmFtZT0ibDAwMTY4Ij48L2E+MDAxNjggCis8YSBuYW1lPSJsMDAxNzUiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNlMCI+MDAxNzU8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2UwIj5TZXRDb25kZW5zZVdoaXRlU3BhY2U8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IGNvbmRlbnNlICkgICAgICB7IGNvbmRlbnNlV2hpdGVTcGFjZSA9IGNvbmRlbnNlOyB9Cis8YSBuYW1lPSJsMDAxNzYiPjwvYT4wMDE3NiAKKzxhIG5hbWU9ImwwMDE3OCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2UxIj4wMDE3ODwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdGF0aWM8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjZTEiPklzV2hpdGVTcGFjZUNvbmRlbnNlZDwvYT4oKSAgICAgICAgICAgICAgICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGNvbmRlbnNlV2hpdGVTcGFjZTsgfQorPGEgbmFtZT0ibDAwMTc5Ij48L2E+MDAxNzkgCis8YSBuYW1lPSJsMDAxOTgiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMyI+MDAxOTg8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTMiPlJvdzwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gbG9jYXRpb24ucm93ICsgMTsgfQorPGEgbmFtZT0ibDAwMTk5Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTQiPjAwMTk5PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2E0Ij5Db2x1bW48L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGxvY2F0aW9uLmNvbCArIDE7IH0gICAgCis8YSBuYW1lPSJsMDAyMDAiPjwvYT4wMDIwMCAKKzxhIG5hbWU9ImwwMDIwMSI+PC9hPjAwMjAxICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+ICBTZXRVc2VyRGF0YSggPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiogdXNlciApICAgICAgICAgeyA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNwMSI+dXNlckRhdGE8L2E+ID0gdXNlcjsgfQorPGEgbmFtZT0ibDAwMjAyIj48L2E+MDAyMDIgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4qIEdldFVzZXJEYXRhKCkgICAgICAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNwMSI+dXNlckRhdGE8L2E+OyB9Cis8YSBuYW1lPSJsMDAyMDMiPjwvYT4wMDIwMyAKKzxhIG5hbWU9ImwwMDIwNCI+PC9hPjAwMjA0ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gVGFibGUgdGhhdCByZXR1cnMsIGZvciBhIGdpdmVuIGxlYWQgYnl0ZSwgdGhlIHRvdGFsIG51bWJlciBvZiBieXRlczwvc3Bhbj4KKzxhIG5hbWU9ImwwMDIwNSI+PC9hPjAwMjA1ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gaW4gdGhlIFVURi04IHNlcXVlbmNlLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDIwNiI+PC9hPjAwMjA2ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiB1dGY4Qnl0ZVRhYmxlWzI1Nl07Cis8YSBuYW1lPSJsMDAyMDciPjwvYT4wMDIwNyAKKzxhIG5hbWU9ImwwMDIwOCI+PC9hPjAwMjA4ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTEyIj5QYXJzZTwvYT4oICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHAsIAorPGEgbmFtZT0ibDAwMjA5Ij48L2E+MDAyMDkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaVhtbFBhcnNpbmdEYXRhKiBkYXRhLCAKKzxhIG5hbWU9ImwwMDIxMCI+PC9hPjAwMjEwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGlYbWxFbmNvZGluZyBlbmNvZGluZyA8c3BhbiBjbGFzcz0iY29tbWVudCI+Lyo9IFRJWE1MX0VOQ09ESU5HX1VOS05PV04gKi88L3NwYW4+ICkgPSAwOworPGEgbmFtZT0ibDAwMjExIj48L2E+MDAyMTEgCis8YSBuYW1lPSJsMDAyMTIiPjwvYT4wMDIxMiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmVudW08L3NwYW4+Cis8YSBuYW1lPSJsMDAyMTMiPjwvYT4wMDIxMyAgICAgeworPGEgbmFtZT0ibDAwMjE0Ij48L2E+MDAyMTQgICAgICAgICBUSVhNTF9OT19FUlJPUiA9IDAsCis8YSBuYW1lPSJsMDAyMTUiPjwvYT4wMDIxNSAgICAgICAgIFRJWE1MX0VSUk9SLAorPGEgbmFtZT0ibDAwMjE2Ij48L2E+MDAyMTYgICAgICAgICBUSVhNTF9FUlJPUl9PUEVOSU5HX0ZJTEUsCis8YSBuYW1lPSJsMDAyMTciPjwvYT4wMDIxNyAgICAgICAgIFRJWE1MX0VSUk9SX09VVF9PRl9NRU1PUlksCis8YSBuYW1lPSJsMDAyMTgiPjwvYT4wMDIxOCAgICAgICAgIFRJWE1MX0VSUk9SX1BBUlNJTkdfRUxFTUVOVCwKKzxhIG5hbWU9ImwwMDIxOSI+PC9hPjAwMjE5ICAgICAgICAgVElYTUxfRVJST1JfRkFJTEVEX1RPX1JFQURfRUxFTUVOVF9OQU1FLAorPGEgbmFtZT0ibDAwMjIwIj48L2E+MDAyMjAgICAgICAgICBUSVhNTF9FUlJPUl9SRUFESU5HX0VMRU1FTlRfVkFMVUUsCis8YSBuYW1lPSJsMDAyMjEiPjwvYT4wMDIyMSAgICAgICAgIFRJWE1MX0VSUk9SX1JFQURJTkdfQVRUUklCVVRFUywKKzxhIG5hbWU9ImwwMDIyMiI+PC9hPjAwMjIyICAgICAgICAgVElYTUxfRVJST1JfUEFSU0lOR19FTVBUWSwKKzxhIG5hbWU9ImwwMDIyMyI+PC9hPjAwMjIzICAgICAgICAgVElYTUxfRVJST1JfUkVBRElOR19FTkRfVEFHLAorPGEgbmFtZT0ibDAwMjI0Ij48L2E+MDAyMjQgICAgICAgICBUSVhNTF9FUlJPUl9QQVJTSU5HX1VOS05PV04sCis8YSBuYW1lPSJsMDAyMjUiPjwvYT4wMDIyNSAgICAgICAgIFRJWE1MX0VSUk9SX1BBUlNJTkdfQ09NTUVOVCwKKzxhIG5hbWU9ImwwMDIyNiI+PC9hPjAwMjI2ICAgICAgICAgVElYTUxfRVJST1JfUEFSU0lOR19ERUNMQVJBVElPTiwKKzxhIG5hbWU9ImwwMDIyNyI+PC9hPjAwMjI3ICAgICAgICAgVElYTUxfRVJST1JfRE9DVU1FTlRfRU1QVFksCis8YSBuYW1lPSJsMDAyMjgiPjwvYT4wMDIyOCAgICAgICAgIFRJWE1MX0VSUk9SX0VNQkVEREVEX05VTEwsCis8YSBuYW1lPSJsMDAyMjkiPjwvYT4wMDIyOSAgICAgICAgIFRJWE1MX0VSUk9SX1BBUlNJTkdfQ0RBVEEsCis8YSBuYW1lPSJsMDAyMzAiPjwvYT4wMDIzMCAKKzxhIG5hbWU9ImwwMDIzMSI+PC9hPjAwMjMxICAgICAgICAgVElYTUxfRVJST1JfU1RSSU5HX0NPVU5UCis8YSBuYW1lPSJsMDAyMzIiPjwvYT4wMDIzMiAgICAgfTsKKzxhIG5hbWU9ImwwMDIzMyI+PC9hPjAwMjMzIAorPGEgbmFtZT0ibDAwMjM0Ij48L2E+MDAyMzQgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByb3RlY3RlZDwvc3Bhbj46Cis8YSBuYW1lPSJsMDAyMzUiPjwvYT4wMDIzNSAKKzxhIG5hbWU9ImwwMDIzNiI+PC9hPjAwMjM2ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gU2VlIFNUTF9TVFJJTkdfQlVHPC9zcGFuPgorPGEgbmFtZT0ibDAwMjM3Ij48L2E+MDAyMzcgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBVdGlsaXR5IGNsYXNzIHRvIG92ZXJjb21lIGEgYnVnLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDIzOCI+PC9hPjAwMjM4ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPlN0cmluZ1RvQnVmZmVyCis8YSBuYW1lPSJsMDAyMzkiPjwvYT4wMDIzOSAgICAgeworPGEgbmFtZT0ibDAwMjQwIj48L2E+MDAyNDAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj46Cis8YSBuYW1lPSJsMDAyNDEiPjwvYT4wMDI0MSAgICAgICAgIFN0cmluZ1RvQnVmZmVyKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRJWE1MX1NUUklORyZhbXA7IHN0ciApOworPGEgbmFtZT0ibDAwMjQyIj48L2E+MDAyNDIgICAgICAgICB+U3RyaW5nVG9CdWZmZXIoKTsKKzxhIG5hbWU9ImwwMDI0MyI+PC9hPjAwMjQzICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogYnVmZmVyOworPGEgbmFtZT0ibDAwMjQ0Ij48L2E+MDAyNDQgICAgIH07Cis8YSBuYW1lPSJsMDAyNDUiPjwvYT4wMDI0NSAKKzxhIG5hbWU9ImwwMDI0NiI+PC9hPjAwMjQ2ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qICBTa2lwV2hpdGVTcGFjZSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApOworPGEgbmFtZT0ibDAwMjQ3Ij48L2E+MDAyNDcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5pbmxpbmU8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdGF0aWM8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gIElzV2hpdGVTcGFjZSggPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiBjICkgICAgICAKKzxhIG5hbWU9ImwwMDI0OCI+PC9hPjAwMjQ4ICAgICB7IAorPGEgbmFtZT0ibDAwMjQ5Ij48L2E+MDAyNDkgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCBpc3NwYWNlKCAoPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj51bnNpZ25lZDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPikgYyApIHx8IGMgPT0gPHNwYW4gY2xhc3M9ImNoYXJsaXRlcmFsIj4nXG4nPC9zcGFuPiB8fCBjID09IDxzcGFuIGNsYXNzPSJjaGFybGl0ZXJhbCI+J1xyJzwvc3Bhbj4gKTsgCis8YSBuYW1lPSJsMDAyNTAiPjwvYT4wMDI1MCAgICAgfQorPGEgbmFtZT0ibDAwMjUxIj48L2E+MDAyNTEgCis8YSBuYW1lPSJsMDAyNTIiPjwvYT4wMDI1MiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gU3RyZWFtT3V0IChUSVhNTF9PU1RSRUFNICopIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdCA8L3NwYW4+PSAwOworPGEgbmFtZT0ibDAwMjUzIj48L2E+MDAyNTMgCis8YSBuYW1lPSJsMDAyNTQiPjwvYT4wMDI1NCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Cis8YSBuYW1lPSJsMDAyNTUiPjwvYT4wMDI1NSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IFN0cmVhbVdoaXRlU3BhY2UoIFRJWE1MX0lTVFJFQU0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICk7Cis8YSBuYW1lPSJsMDAyNTYiPjwvYT4wMDI1NiAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdGF0aWM8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gU3RyZWFtVG8oIFRJWE1MX0lTVFJFQU0gKiBpbiwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGNoYXJhY3RlciwgVElYTUxfU1RSSU5HICogdGFnICk7Cis8YSBuYW1lPSJsMDAyNTciPjwvYT4wMDI1NyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAwMjU4Ij48L2E+MDAyNTggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwMjU5Ij48L2E+MDAyNTkgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKiAgUmVhZHMgYW4gWE1MIG5hbWUgaW50byB0aGUgc3RyaW5nIHByb3ZpZGVkLiBSZXR1cm5zPC9zcGFuPgorPGEgbmFtZT0ibDAwMjYwIj48L2E+MDAyNjAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAgICAgYSBwb2ludGVyIGp1c3QgcGFzdCB0aGUgbGFzdCBjaGFyYWN0ZXIgb2YgdGhlIG5hbWUsPC9zcGFuPgorPGEgbmFtZT0ibDAwMjYxIj48L2E+MDAyNjEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAgICAgb3IgMCBpZiB0aGUgZnVuY3Rpb24gaGFzIGFuIGVycm9yLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDI2MiI+PC9hPjAwMjYyIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgKi88L3NwYW4+Cis8YSBuYW1lPSJsMDAyNjMiPjwvYT4wMDI2MyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBSZWFkTmFtZSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBwLCBUSVhNTF9TVFJJTkcqIG5hbWUsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKKzxhIG5hbWU9ImwwMDI2NCI+PC9hPjAwMjY0IAorPGEgbmFtZT0ibDAwMjY1Ij48L2E+MDAyNjUgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKiAgUmVhZHMgdGV4dC4gUmV0dXJucyBhIHBvaW50ZXIgcGFzdCB0aGUgZ2l2ZW4gZW5kIHRhZy48L3NwYW4+Cis8YSBuYW1lPSJsMDAyNjYiPjwvYT4wMDI2NiA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgICAgICBXaWNrZWRseSBjb21wbGV4IG9wdGlvbnMsIGJ1dCBpdCBrZWVwcyB0aGUgKHNlbnNpdGl2ZSkgY29kZSBpbiBvbmUgcGxhY2UuPC9zcGFuPgorPGEgbmFtZT0ibDAwMjY3Ij48L2E+MDAyNjcgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAqLzwvc3Bhbj4KKzxhIG5hbWU9ImwwMDI2OCI+PC9hPjAwMjY4ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIFJlYWRUZXh0KCAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIGluLCAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gd2hlcmUgdG8gc3RhcnQ8L3NwYW4+Cis8YSBuYW1lPSJsMDAyNjkiPjwvYT4wMDI2OSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUSVhNTF9TVFJJTkcqIHRleHQsICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIHRoZSBzdHJpbmcgcmVhZDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDI3MCI+PC9hPjAwMjcwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gaWdub3JlV2hpdGVTcGFjZSwgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gd2hldGhlciB0byBrZWVwIHRoZSB3aGl0ZSBzcGFjZTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDI3MSI+PC9hPjAwMjcxICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogZW5kVGFnLCAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyB3aGF0IGVuZHMgdGhpcyB0ZXh0PC9zcGFuPgorPGEgbmFtZT0ibDAwMjcyIj48L2E+MDAyNzIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBpZ25vcmVDYXNlLCAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyB3aGV0aGVyIHRvIGlnbm9yZSBjYXNlIGluIHRoZSBlbmQgdGFnPC9zcGFuPgorPGEgbmFtZT0ibDAwMjczIj48L2E+MDAyNzMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApOyAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyB0aGUgY3VycmVudCBlbmNvZGluZzwvc3Bhbj4KKzxhIG5hbWU9ImwwMDI3NCI+PC9hPjAwMjc0IAorPGEgbmFtZT0ibDAwMjc1Ij48L2E+MDAyNzUgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBJZiBhbiBlbnRpdHkgaGFzIGJlZW4gZm91bmQsIHRyYW5zZm9ybSBpdCBpbnRvIGEgY2hhcmFjdGVyLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDI3NiI+PC9hPjAwMjc2ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIEdldEVudGl0eSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBpbiwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogdmFsdWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiogbGVuZ3RoLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7Cis8YSBuYW1lPSJsMDAyNzciPjwvYT4wMDI3NyAKKzxhIG5hbWU9ImwwMDI3OCI+PC9hPjAwMjc4ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gR2V0IGEgY2hhcmFjdGVyLCB3aGlsZSBpbnRlcnByZXRpbmcgZW50aXRpZXMuPC9zcGFuPgorPGEgbmFtZT0ibDAwMjc5Ij48L2E+MDAyNzkgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBUaGUgbGVuZ3RoIGNhbiBiZSBmcm9tIDAgdG8gNCBieXRlcy48L3NwYW4+Cis8YSBuYW1lPSJsMDAyODAiPjwvYT4wMDI4MCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmlubGluZTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBHZXRDaGFyKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHAsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIF92YWx1ZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+KiBsZW5ndGgsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKQorPGEgbmFtZT0ibDAwMjgxIj48L2E+MDAyODEgICAgIHsKKzxhIG5hbWU9ImwwMDI4MiI+PC9hPjAwMjgyICAgICAgICAgYXNzZXJ0KCBwICk7Cis8YSBuYW1lPSJsMDAyODMiPjwvYT4wMDI4MyAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+aWY8L3NwYW4+ICggZW5jb2RpbmcgPT0gVElYTUxfRU5DT0RJTkdfVVRGOCApCis8YSBuYW1lPSJsMDAyODQiPjwvYT4wMDI4NCAgICAgICAgIHsKKzxhIG5hbWU9ImwwMDI4NSI+PC9hPjAwMjg1ICAgICAgICAgICAgICpsZW5ndGggPSB1dGY4Qnl0ZVRhYmxlWyAqKCg8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnVuc2lnbmVkPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KilwKSBdOworPGEgbmFtZT0ibDAwMjg2Ij48L2E+MDAyODYgICAgICAgICAgICAgYXNzZXJ0KCAqbGVuZ3RoICZndDs9IDAgJmFtcDsmYW1wOyAqbGVuZ3RoICZsdDsgNSApOworPGEgbmFtZT0ibDAwMjg3Ij48L2E+MDAyODcgICAgICAgICB9Cis8YSBuYW1lPSJsMDAyODgiPjwvYT4wMDI4OCAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+ZWxzZTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDI4OSI+PC9hPjAwMjg5ICAgICAgICAgeworPGEgbmFtZT0ibDAwMjkwIj48L2E+MDAyOTAgICAgICAgICAgICAgKmxlbmd0aCA9IDE7Cis8YSBuYW1lPSJsMDAyOTEiPjwvYT4wMDI5MSAgICAgICAgIH0KKzxhIG5hbWU9ImwwMDI5MiI+PC9hPjAwMjkyIAorPGEgbmFtZT0ibDAwMjkzIj48L2E+MDAyOTMgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPmlmPC9zcGFuPiAoICpsZW5ndGggPT0gMSApCis8YSBuYW1lPSJsMDAyOTQiPjwvYT4wMDI5NCAgICAgICAgIHsKKzxhIG5hbWU9ImwwMDI5NSI+PC9hPjAwMjk1ICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+aWY8L3NwYW4+ICggKnAgPT0gPHNwYW4gY2xhc3M9ImNoYXJsaXRlcmFsIj4nJmFtcDsnPC9zcGFuPiApCis8YSBuYW1lPSJsMDAyOTYiPjwvYT4wMDI5NiAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IEdldEVudGl0eSggcCwgX3ZhbHVlLCBsZW5ndGgsIGVuY29kaW5nICk7Cis8YSBuYW1lPSJsMDAyOTciPjwvYT4wMDI5NyAgICAgICAgICAgICAqX3ZhbHVlID0gKnA7Cis8YSBuYW1lPSJsMDAyOTgiPjwvYT4wMDI5OCAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gcCsxOworPGEgbmFtZT0ibDAwMjk5Ij48L2E+MDAyOTkgICAgICAgICB9Cis8YSBuYW1lPSJsMDAzMDAiPjwvYT4wMDMwMCAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+ZWxzZTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKCAqbGVuZ3RoICkKKzxhIG5hbWU9ImwwMDMwMSI+PC9hPjAwMzAxICAgICAgICAgeworPGEgbmFtZT0ibDAwMzAyIj48L2E+MDAzMDIgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vc3RybmNweSggX3ZhbHVlLCBwLCAqbGVuZ3RoICk7ICAgIC8vIGxvdHMgb2YgY29tcGlsZXJzIGRvbid0IGxpa2UgdGhpcyBmdW5jdGlvbiAodW5zYWZlKSw8L3NwYW4+Cis8YSBuYW1lPSJsMDAzMDMiPjwvYT4wMDMwMyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gYW5kIHRoZSBudWxsIHRlcm1pbmF0b3IgaXNuJ3QgbmVlZGVkPC9zcGFuPgorPGEgbmFtZT0ibDAwMzA0Ij48L2E+MDAzMDQgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5mb3I8L3NwYW4+KCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gaT0wOyBwW2ldICZhbXA7JmFtcDsgaSZsdDsqbGVuZ3RoOyArK2kgKSB7Cis8YSBuYW1lPSJsMDAzMDUiPjwvYT4wMDMwNSAgICAgICAgICAgICAgICAgX3ZhbHVlW2ldID0gcFtpXTsKKzxhIG5hbWU9ImwwMDMwNiI+PC9hPjAwMzA2ICAgICAgICAgICAgIH0KKzxhIG5hbWU9ImwwMDMwNyI+PC9hPjAwMzA3ICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBwICsgKCpsZW5ndGgpOworPGEgbmFtZT0ibDAwMzA4Ij48L2E+MDAzMDggICAgICAgICB9Cis8YSBuYW1lPSJsMDAzMDkiPjwvYT4wMDMwOSAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+ZWxzZTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDMxMCI+PC9hPjAwMzEwICAgICAgICAgeworPGEgbmFtZT0ibDAwMzExIj48L2E+MDAzMTEgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIE5vdCB2YWxpZCB0ZXh0Ljwvc3Bhbj4KKzxhIG5hbWU9ImwwMDMxMiI+PC9hPjAwMzEyICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAwOworPGEgbmFtZT0ibDAwMzEzIj48L2E+MDAzMTMgICAgICAgICB9Cis8YSBuYW1lPSJsMDAzMTQiPjwvYT4wMDMxNCAgICAgfQorPGEgbmFtZT0ibDAwMzE1Ij48L2E+MDAzMTUgCis8YSBuYW1lPSJsMDAzMTYiPjwvYT4wMDMxNiAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFB1dHMgYSBzdHJpbmcgdG8gYSBzdHJlYW0sIGV4cGFuZGluZyBlbnRpdGllcyBhcyBpdCBnb2VzLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDMxNyI+PC9hPjAwMzE3ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gTm90ZSB0aGlzIHNob3VsZCBub3QgY29udGlhbiB0aGUgJyZsdDsnLCAnJmd0OycsIGV0Yywgb3IgdGhleSB3aWxsIGJlIHRyYW5zZm9ybWVkIGludG8gZW50aXRpZXMhPC9zcGFuPgorPGEgbmFtZT0ibDAwMzE4Ij48L2E+MDAzMTggICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdGF0aWM8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gUHV0U3RyaW5nKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRJWE1MX1NUUklORyZhbXA7IHN0ciwgVElYTUxfT1NUUkVBTSogb3V0ICk7Cis8YSBuYW1lPSJsMDAzMTkiPjwvYT4wMDMxOSAKKzxhIG5hbWU9ImwwMDMyMCI+PC9hPjAwMzIwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IFB1dFN0cmluZyggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUSVhNTF9TVFJJTkcmYW1wOyBzdHIsIFRJWE1MX1NUUklORyogb3V0ICk7Cis8YSBuYW1lPSJsMDAzMjEiPjwvYT4wMDMyMSAKKzxhIG5hbWU9ImwwMDMyMiI+PC9hPjAwMzIyICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gUmV0dXJuIHRydWUgaWYgdGhlIG5leHQgY2hhcmFjdGVycyBpbiB0aGUgc3RyZWFtIGFyZSBhbnkgb2YgdGhlIGVuZFRhZyBzZXF1ZW5jZXMuPC9zcGFuPgorPGEgbmFtZT0ibDAwMzIzIj48L2E+MDAzMjMgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBJZ25vcmUgY2FzZSBvbmx5IHdvcmtzIGZvciBlbmdsaXNoLCBhbmQgc2hvdWxkIG9ubHkgYmUgcmVsaWVkIG9uIHdoZW4gY29tcGFyaW5nPC9zcGFuPgorPGEgbmFtZT0ibDAwMzI0Ij48L2E+MDAzMjQgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyB0byBFbmdsaXNoIHdvcmRzOiBTdHJpbmdFcXVhbCggcCwgInZlcnNpb24iLCB0cnVlICkgaXMgZmluZS48L3NwYW4+Cis8YSBuYW1lPSJsMDAzMjUiPjwvYT4wMDMyNSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBTdHJpbmdFcXVhbCggICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBwLAorPGEgbmFtZT0ibDAwMzI2Ij48L2E+MDAzMjYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIGVuZFRhZywKKzxhIG5hbWU9ImwwMDMyNyI+PC9hPjAwMzI3ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBpZ25vcmVDYXNlLAorPGEgbmFtZT0ibDAwMzI4Ij48L2E+MDAzMjggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7Cis8YSBuYW1lPSJsMDAzMjkiPjwvYT4wMDMyOSAKKzxhIG5hbWU9ImwwMDMzMCI+PC9hPjAwMzMwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIGVycm9yU3RyaW5nWyBUSVhNTF9FUlJPUl9TVFJJTkdfQ09VTlQgXTsKKzxhIG5hbWU9ImwwMDMzMSI+PC9hPjAwMzMxIAorPGEgbmFtZT0ibDAwMzMyIj48L2E+MDAzMzIgICAgIFRpWG1sQ3Vyc29yIGxvY2F0aW9uOworPGEgbmFtZT0ibDAwMzMzIj48L2E+MDAzMzMgCis8YSBuYW1lPSJsMDAzMzUiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNwMSI+MDAzMzU8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+KiAgICAgICAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjcDEiPnVzZXJEYXRhPC9hPjsKKzxhIG5hbWU9ImwwMDMzNiI+PC9hPjAwMzM2ICAgICAKKzxhIG5hbWU9ImwwMDMzNyI+PC9hPjAwMzM3ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gTm9uZSBvZiB0aGVzZSBtZXRob2RzIGFyZSByZWxpYWJsZSBmb3IgYW55IGxhbmd1YWdlIGV4Y2VwdCBFbmdsaXNoLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDMzOCI+PC9hPjAwMzM4ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gR29vZCBmb3IgYXBwcm94aW1hdGlvbiwgbm90IGdyZWF0IGZvciBhY2N1cmFjeS48L3NwYW4+Cis8YSBuYW1lPSJsMDAzMzkiPjwvYT4wMDMzOSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IElzQWxwaGEoIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dW5zaWduZWQ8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gYW55Qnl0ZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApOworPGEgbmFtZT0ibDAwMzQwIj48L2E+MDAzNDAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdGF0aWM8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBJc0FscGhhTnVtKCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnVuc2lnbmVkPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+IGFueUJ5dGUsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKKzxhIG5hbWU9ImwwMDM0MSI+PC9hPjAwMzQxICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+aW5saW5lPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gVG9Mb3dlciggPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IHYsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKQorPGEgbmFtZT0ibDAwMzQyIj48L2E+MDAzNDIgICAgIHsKKzxhIG5hbWU9ImwwMDM0MyI+PC9hPjAwMzQzICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKCBlbmNvZGluZyA9PSBUSVhNTF9FTkNPRElOR19VVEY4ICkKKzxhIG5hbWU9ImwwMDM0NCI+PC9hPjAwMzQ0ICAgICAgICAgeworPGEgbmFtZT0ibDAwMzQ1Ij48L2E+MDAzNDUgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKCB2ICZsdDsgMTI4ICkgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHRvbG93ZXIoIHYgKTsKKzxhIG5hbWU9ImwwMDM0NiI+PC9hPjAwMzQ2ICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiB2OworPGEgbmFtZT0ibDAwMzQ3Ij48L2E+MDAzNDcgICAgICAgICB9Cis8YSBuYW1lPSJsMDAzNDgiPjwvYT4wMDM0OCAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+ZWxzZTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDM0OSI+PC9hPjAwMzQ5ICAgICAgICAgeworPGEgbmFtZT0ibDAwMzUwIj48L2E+MDAzNTAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHRvbG93ZXIoIHYgKTsKKzxhIG5hbWU9ImwwMDM1MSI+PC9hPjAwMzUxICAgICAgICAgfQorPGEgbmFtZT0ibDAwMzUyIj48L2E+MDAzNTIgICAgIH0KKzxhIG5hbWU9ImwwMDM1MyI+PC9hPjAwMzUzICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IENvbnZlcnRVVEYzMlRvVVRGOCggPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj51bnNpZ25lZDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5sb25nPC9zcGFuPiBpbnB1dCwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogb3V0cHV0LCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4qIGxlbmd0aCApOworPGEgbmFtZT0ibDAwMzU0Ij48L2E+MDAzNTQgCis8YSBuYW1lPSJsMDAzNTUiPjwvYT4wMDM1NSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJpdmF0ZTwvc3Bhbj46Cis8YSBuYW1lPSJsMDAzNTYiPjwvYT4wMDM1NiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT4mYW1wOyApOyAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIG5vdCBpbXBsZW1lbnRlZC48L3NwYW4+Cis8YSBuYW1lPSJsMDAzNTciPjwvYT4wMDM1NyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBvcGVyYXRvcj0oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT4mYW1wOyBiYXNlICk7ICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBub3QgYWxsb3dlZC48L3NwYW4+Cis8YSBuYW1lPSJsMDAzNTgiPjwvYT4wMDM1OCAKKzxhIG5hbWU9ImwwMDM1OSI+PC9hPjAwMzU5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RydWN0IDwvc3Bhbj5FbnRpdHkKKzxhIG5hbWU9ImwwMDM2MCI+PC9hPjAwMzYwICAgICB7Cis8YSBuYW1lPSJsMDAzNjEiPjwvYT4wMDM2MSAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogICAgIHN0cjsKKzxhIG5hbWU9ImwwMDM2MiI+PC9hPjAwMzYyICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj51bnNpZ25lZDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+ICAgIHN0ckxlbmd0aDsKKzxhIG5hbWU9ImwwMDM2MyI+PC9hPjAwMzYzICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAgICAgICAgICAgIGNocjsKKzxhIG5hbWU9ImwwMDM2NCI+PC9hPjAwMzY0ICAgICB9OworPGEgbmFtZT0ibDAwMzY1Ij48L2E+MDAzNjUgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5lbnVtPC9zcGFuPgorPGEgbmFtZT0ibDAwMzY2Ij48L2E+MDAzNjYgICAgIHsKKzxhIG5hbWU9ImwwMDM2NyI+PC9hPjAwMzY3ICAgICAgICAgTlVNX0VOVElUWSA9IDUsCis8YSBuYW1lPSJsMDAzNjgiPjwvYT4wMDM2OCAgICAgICAgIE1BWF9FTlRJVFlfTEVOR1RIID0gNgorPGEgbmFtZT0ibDAwMzY5Ij48L2E+MDAzNjkgCis8YSBuYW1lPSJsMDAzNzAiPjwvYT4wMDM3MCAgICAgfTsKKzxhIG5hbWU9ImwwMDM3MSI+PC9hPjAwMzcxICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiBFbnRpdHkgZW50aXR5WyBOVU1fRU5USVRZIF07Cis8YSBuYW1lPSJsMDAzNzIiPjwvYT4wMDM3MiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBjb25kZW5zZVdoaXRlU3BhY2U7Cis8YSBuYW1lPSJsMDAzNzMiPjwvYT4wMDM3MyB9OworPGEgbmFtZT0ibDAwMzc0Ij48L2E+MDAzNzQgCis8YSBuYW1lPSJsMDAzNzUiPjwvYT4wMDM3NSAKKzxhIG5hbWU9ImwwMDM4MiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj4wMDM4MjwvYT4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiA6IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIj5UaVhtbEJhc2U8L2E+Cis8YSBuYW1lPSJsMDAzODMiPjwvYT4wMDM4MyB7Cis8YSBuYW1lPSJsMDAzODQiPjwvYT4wMDM4NCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZyaWVuZDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+OworPGEgbmFtZT0ibDAwMzg1Ij48L2E+MDAzODUgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5mcmllbmQ8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT47Cis8YSBuYW1lPSJsMDAzODYiPjwvYT4wMDM4NiAKKzxhIG5hbWU9ImwwMDM4NyI+PC9hPjAwMzg3IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+OgorPGEgbmFtZT0ibDAwMzg4Ij48L2E+MDAzODggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMICAgIDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDM4OSI+PC9hPjAwMzg5IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDM5MyI+PC9hPjAwMzkzICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZyaWVuZDwvc3Bhbj4gc3RkOjppc3RyZWFtJmFtcDsgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjIiPm9wZXJhdG9yICZndDsmZ3Q7IDwvYT4oc3RkOjppc3RyZWFtJmFtcDsgaW4sIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+JmFtcDsgYmFzZSk7Cis8YSBuYW1lPSJsMDAzOTQiPjwvYT4wMDM5NCAKKzxhIG5hbWU9ImwwMDQxMSI+PC9hPjAwNDExICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZyaWVuZDwvc3Bhbj4gc3RkOjpvc3RyZWFtJmFtcDsgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjbjMiPm9wZXJhdG9yJmx0OyZsdDsgPC9hPihzdGQ6Om9zdHJlYW0mYW1wOyBvdXQsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4mYW1wOyBiYXNlKTsKKzxhIG5hbWU9ImwwMDQxMiI+PC9hPjAwNDEyIAorPGEgbmFtZT0ibDAwNDE0Ij48L2E+MDA0MTQgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ZnJpZW5kPC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI24zIj5vcGVyYXRvciZsdDsmbHQ7IDwvYT4oc3RkOjpzdHJpbmcmYW1wOyBvdXQsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4mYW1wOyBiYXNlICk7Cis8YSBuYW1lPSJsMDA0MTUiPjwvYT4wMDQxNSAKKzxhIG5hbWU9ImwwMDQxNiI+PC9hPjAwNDE2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZWxzZTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDQxNyI+PC9hPjAwNDE3IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBVc2VkIGludGVybmFsbHksIG5vdCBwYXJ0IG9mIHRoZSBwdWJsaWMgQVBJLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDQxOCI+PC9hPjAwNDE4ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZyaWVuZDwvc3Bhbj4gVElYTUxfT1NUUkVBTSZhbXA7IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI24zIj5vcGVyYXRvciZsdDsmbHQ7IDwvYT4oVElYTUxfT1NUUkVBTSZhbXA7IG91dCwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiZhbXA7IGJhc2UpOworPGEgbmFtZT0ibDAwNDE5Ij48L2E+MDA0MTkgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbmRpZjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDQyMCI+PC9hPjAwNDIwIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDQyNCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI3c3Ij4wMDQyNDwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5lbnVtPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCN3NyI+Tm9kZVR5cGU8L2E+Cis8YSBuYW1lPSJsMDA0MjUiPjwvYT4wMDQyNSAgICAgeworPGEgbmFtZT0ibDAwNDI2Ij48L2E+MDA0MjYgICAgICAgICBET0NVTUVOVCwKKzxhIG5hbWU9ImwwMDQyNyI+PC9hPjAwNDI3ICAgICAgICAgRUxFTUVOVCwKKzxhIG5hbWU9ImwwMDQyOCI+PC9hPjAwNDI4ICAgICAgICAgQ09NTUVOVCwKKzxhIG5hbWU9ImwwMDQyOSI+PC9hPjAwNDI5ICAgICAgICAgVU5LTk9XTiwKKzxhIG5hbWU9ImwwMDQzMCI+PC9hPjAwNDMwICAgICAgICAgVEVYVCwKKzxhIG5hbWU9ImwwMDQzMSI+PC9hPjAwNDMxICAgICAgICAgREVDTEFSQVRJT04sCis8YSBuYW1lPSJsMDA0MzIiPjwvYT4wMDQzMiAgICAgICAgIFRZUEVDT1VOVAorPGEgbmFtZT0ibDAwNDMzIj48L2E+MDA0MzMgICAgIH07Cis8YSBuYW1lPSJsMDA0MzQiPjwvYT4wMDQzNCAKKzxhIG5hbWU9ImwwMDQzNSI+PC9hPjAwNDM1ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gfjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KCk7Cis8YSBuYW1lPSJsMDA0MzYiPjwvYT4wMDQzNiAKKzxhIG5hbWU9ImwwMDQ0OSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExIj4wMDQ0OTwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEiPlZhbHVlPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gdmFsdWUuY19zdHIgKCk7IH0KKzxhIG5hbWU9ImwwMDQ1MCI+PC9hPjAwNDUwIAorPGEgbmFtZT0ibDAwNDUxIj48L2E+MDA0NTEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgorPGEgbmFtZT0ibDAwNDUyIj48L2E+MDA0NTIgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwNDU2Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTIiPjAwNDU2PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyIj5WYWx1ZVN0cjwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHZhbHVlOyB9Cis8YSBuYW1lPSJsMDA0NTciPjwvYT4wMDQ1NyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAwNDU4Ij48L2E+MDA0NTggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwNDY4Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMiPjAwNDY4PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMyI+U2V0VmFsdWU8L2E+KDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIF92YWx1ZSkgeyB2YWx1ZSA9IF92YWx1ZTt9Cis8YSBuYW1lPSJsMDA0NjkiPjwvYT4wMDQ2OSAKKzxhIG5hbWU9ImwwMDQ3MCI+PC9hPjAwNDcwIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDQ3MSI+PC9hPjAwNDcxIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDQ3MiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0Ij4wMDQ3MjwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMiPlNldFZhbHVlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSApICAgIAorPGEgbmFtZT0ibDAwNDczIj48L2E+MDA0NzMgICAgIHsgICAgIAorPGEgbmFtZT0ibDAwNDc0Ij48L2E+MDA0NzQgICAgICAgICBTdHJpbmdUb0J1ZmZlciBidWYoIF92YWx1ZSApOworPGEgbmFtZT0ibDAwNDc1Ij48L2E+MDA0NzUgICAgICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMyI+U2V0VmFsdWU8L2E+KCBidWYuYnVmZmVyID8gYnVmLmJ1ZmZlciA6IDxzcGFuIGNsYXNzPSJzdHJpbmdsaXRlcmFsIj4iIjwvc3Bhbj4gKTsgICAgICAgCis8YSBuYW1lPSJsMDA0NzYiPjwvYT4wMDQ3NiAgICAgfSAgIAorPGEgbmFtZT0ibDAwNDc3Ij48L2E+MDA0NzcgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbmRpZjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDQ3OCI+PC9hPjAwNDc4IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDQ4MCI+PC9hPjAwNDgwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1Ij5DbGVhcjwvYT4oKTsKKzxhIG5hbWU9ImwwMDQ4MSI+PC9hPjAwNDgxIAorPGEgbmFtZT0ibDAwNDgzIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYiPjAwNDgzPC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2Ij5QYXJlbnQ8L2E+KCkgICAgICAgICAgICAgICAgICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gcGFyZW50OyB9Cis8YSBuYW1lPSJsMDA0ODQiPjwvYT4wMDQ4NCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYiPlBhcmVudDwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHBhcmVudDsgfQorPGEgbmFtZT0ibDAwNDg1Ij48L2E+MDA0ODUgCis8YSBuYW1lPSJsMDA0ODYiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhOCI+MDA0ODY8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhOCI+Rmlyc3RDaGlsZDwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gICBjb25zdCAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBmaXJzdENoaWxkOyB9ICAgICAgCis8YSBuYW1lPSJsMDA0ODciPjwvYT4wMDQ4NyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4Ij5GaXJzdENoaWxkPC9hPigpICAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBmaXJzdENoaWxkOyB9Cis8YSBuYW1lPSJsMDA0ODgiPjwvYT4wMDQ4OCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgiPkZpcnN0Q2hpbGQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiB2YWx1ZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47ICAgICAgICAgICAgCis8YSBuYW1lPSJsMDA0ODkiPjwvYT4wMDQ4OSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4Ij5GaXJzdENoaWxkPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogdmFsdWUgKTsgICAgICAgICAgICAgICAgICAgICAgICAKKzxhIG5hbWU9ImwwMDQ5MCI+PC9hPjAwNDkwIAorPGEgbmFtZT0ibDAwNDkxIj48L2E+MDA0OTEgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIExhc3RDaGlsZCgpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGxhc3RDaGlsZDsgfSAgICAgICAKKzxhIG5hbWU9ImwwMDQ5MiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExMyI+MDA0OTI8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogTGFzdENoaWxkKCkgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGxhc3RDaGlsZDsgfQorPGEgbmFtZT0ibDAwNDkzIj48L2E+MDA0OTMgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIExhc3RDaGlsZCggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogdmFsdWUgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OyAgICAgICAgIAorPGEgbmFtZT0ibDAwNDk0Ij48L2E+MDA0OTQgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBMYXN0Q2hpbGQoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIHZhbHVlICk7IAorPGEgbmFtZT0ibDAwNDk1Ij48L2E+MDA0OTUgCis8YSBuYW1lPSJsMDA0OTYiPjwvYT4wMDQ5NiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Cis8YSBuYW1lPSJsMDA0OTciPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTYiPjAwNDk3PC9hPiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4Ij5GaXJzdENoaWxkPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSApPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgPC9zcGFuPnsgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgiPkZpcnN0Q2hpbGQ8L2E+IChfdmFsdWUuY19zdHIgKCkpOyAgICB9ICAgCis8YSBuYW1lPSJsMDA0OTgiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTciPjAwNDk4PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4Ij5GaXJzdENoaWxkPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSApICAgICAgICAgICAgICB7ICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4Ij5GaXJzdENoaWxkPC9hPiAoX3ZhbHVlLmNfc3RyICgpKTsgICAgfSAgIAorPGEgbmFtZT0ibDAwNDk5Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE4Ij4wMDQ5OTwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIExhc3RDaGlsZCggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSApPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgIDwvc3Bhbj57ICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IExhc3RDaGlsZCAoX3ZhbHVlLmNfc3RyICgpKTsgfSAgIAorPGEgbmFtZT0ibDAwNTAwIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTE5Ij4wMDUwMDwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBMYXN0Q2hpbGQoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUgKSAgICAgICAgICAgICAgIHsgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gTGFzdENoaWxkIChfdmFsdWUuY19zdHIgKCkpOyB9ICAgCis8YSBuYW1lPSJsMDA1MDEiPjwvYT4wMDUwMSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAwNTAyIj48L2E+MDA1MDIgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwNTE5Ij48L2E+MDA1MTkgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyMCI+SXRlcmF0ZUNoaWxkcmVuPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogcHJldmlvdXMgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAwNTIwIj48L2E+MDA1MjAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjAiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBwcmV2aW91cyApOworPGEgbmFtZT0ibDAwNTIxIj48L2E+MDA1MjEgCis8YSBuYW1lPSJsMDA1MjMiPjwvYT4wMDUyMyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTIwIj5JdGVyYXRlQ2hpbGRyZW48L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiB2YWx1ZSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogcHJldmlvdXMgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAwNTI0Ij48L2E+MDA1MjQgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjAiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIHZhbHVlLCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogcHJldmlvdXMgKTsKKzxhIG5hbWU9ImwwMDUyNSI+PC9hPjAwNTI1IAorPGEgbmFtZT0ibDAwNTI2Ij48L2E+MDA1MjYgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgorPGEgbmFtZT0ibDAwNTI3Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI0Ij4wMDUyNzwvYT4gPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPiAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjAiPkl0ZXJhdGVDaGlsZHJlbjwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIHByZXZpb3VzICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICA8L3NwYW4+eyAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjAiPkl0ZXJhdGVDaGlsZHJlbjwvYT4gKF92YWx1ZS5jX3N0ciAoKSwgcHJldmlvdXMpOyB9ICAgCis8YSBuYW1lPSJsMDA1MjgiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjUiPjAwNTI4PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyMCI+SXRlcmF0ZUNoaWxkcmVuPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSwgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIHByZXZpb3VzICkgeyAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyMCI+SXRlcmF0ZUNoaWxkcmVuPC9hPiAoX3ZhbHVlLmNfc3RyICgpLCBwcmV2aW91cyk7IH0gICAKKzxhIG5hbWU9ImwwMDUyOSI+PC9hPjAwNTI5IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Cis8YSBuYW1lPSJsMDA1MzAiPjwvYT4wMDUzMCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Cis8YSBuYW1lPSJsMDA1MzQiPjwvYT4wMDUzNCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyNiI+SW5zZXJ0RW5kQ2hpbGQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+JmFtcDsgYWRkVGhpcyApOworPGEgbmFtZT0ibDAwNTM1Ij48L2E+MDA1MzUgCis8YSBuYW1lPSJsMDA1MzYiPjwvYT4wMDUzNiAKKzxhIG5hbWU9ImwwMDU0NiI+PC9hPjAwNTQ2ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI3Ij5MaW5rRW5kQ2hpbGQ8L2E+KCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogYWRkVGhpcyApOworPGEgbmFtZT0ibDAwNTQ3Ij48L2E+MDA1NDcgCis8YSBuYW1lPSJsMDA1NTEiPjwvYT4wMDU1MSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyOCI+SW5zZXJ0QmVmb3JlQ2hpbGQ8L2E+KCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogYmVmb3JlVGhpcywgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiZhbXA7IGFkZFRoaXMgKTsKKzxhIG5hbWU9ImwwMDU1MiI+PC9hPjAwNTUyIAorPGEgbmFtZT0ibDAwNTU2Ij48L2E+MDA1NTYgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjkiPkluc2VydEFmdGVyQ2hpbGQ8L2E+KCAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIGFmdGVyVGhpcywgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiZhbXA7IGFkZFRoaXMgKTsKKzxhIG5hbWU9ImwwMDU1NyI+PC9hPjAwNTU3IAorPGEgbmFtZT0ibDAwNTYxIj48L2E+MDA1NjEgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzAiPlJlcGxhY2VDaGlsZDwvYT4oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiByZXBsYWNlVGhpcywgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiZhbXA7IHdpdGhUaGlzICk7Cis8YSBuYW1lPSJsMDA1NjIiPjwvYT4wMDU2MiAKKzxhIG5hbWU9ImwwMDU2NCI+PC9hPjAwNTY0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMSI+UmVtb3ZlQ2hpbGQ8L2E+KCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogcmVtb3ZlVGhpcyApOworPGEgbmFtZT0ibDAwNTY1Ij48L2E+MDA1NjUgCis8YSBuYW1lPSJsMDA1NjciPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzIiPjAwNTY3PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMyIj5QcmV2aW91c1NpYmxpbmc8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHByZXY7IH0KKzxhIG5hbWU9ImwwMDU2OCI+PC9hPjAwNTY4ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMyIj5QcmV2aW91c1NpYmxpbmc8L2E+KCkgICAgICAgICAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBwcmV2OyB9Cis8YSBuYW1lPSJsMDA1NjkiPjwvYT4wMDU2OSAKKzxhIG5hbWU9ImwwMDU3MSI+PC9hPjAwNTcxICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzIiPlByZXZpb3VzU2libGluZzwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMDU3MiI+PC9hPjAwNTcyICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMyIj5QcmV2aW91c1NpYmxpbmc8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiApOworPGEgbmFtZT0ibDAwNTczIj48L2E+MDA1NzMgCis8YSBuYW1lPSJsMDA1NzQiPjwvYT4wMDU3NCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Cis8YSBuYW1lPSJsMDA1NzUiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzYiPjAwNTc1PC9hPiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMiI+UHJldmlvdXNTaWJsaW5nPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSApPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzIiPlByZXZpb3VzU2libGluZzwvYT4gKF92YWx1ZS5jX3N0ciAoKSk7ICAgfSAgIAorPGEgbmFtZT0ibDAwNTc2Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM3Ij4wMDU3NjwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzIiPlByZXZpb3VzU2libGluZzwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUgKSAgICAgICAgICAgICB7ICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMiI+UHJldmlvdXNTaWJsaW5nPC9hPiAoX3ZhbHVlLmNfc3RyICgpKTsgICB9ICAgCis8YSBuYW1lPSJsMDA1NzciPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMzgiPjAwNTc3PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQwIj5OZXh0U2libGluZzwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgIDwvc3Bhbj57ICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MCI+TmV4dFNpYmxpbmc8L2E+IChfdmFsdWUuY19zdHIgKCkpOyAgIH0gICAKKzxhIG5hbWU9ImwwMDU3OCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzOSI+MDA1Nzg8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQwIj5OZXh0U2libGluZzwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUpICAgICAgICAgICAgICAgICAgeyAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDAiPk5leHRTaWJsaW5nPC9hPiAoX3ZhbHVlLmNfc3RyICgpKTsgICB9ICAgCis8YSBuYW1lPSJsMDA1NzkiPjwvYT4wMDU3OSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAwNTgwIj48L2E+MDA1ODAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwNTgyIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQwIj4wMDU4MjwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MCI+TmV4dFNpYmxpbmc8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgICAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBuZXh0OyB9Cis8YSBuYW1lPSJsMDA1ODMiPjwvYT4wMDU4MyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MCI+TmV4dFNpYmxpbmc8L2E+KCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gbmV4dDsgfQorPGEgbmFtZT0ibDAwNTg0Ij48L2E+MDA1ODQgCis8YSBuYW1lPSJsMDA1ODYiPjwvYT4wMDU4NiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQwIj5OZXh0U2libGluZzwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMDU4NyI+PC9hPjAwNTg3ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQwIj5OZXh0U2libGluZzwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqICk7Cis8YSBuYW1lPSJsMDA1ODgiPjwvYT4wMDU4OCAKKzxhIG5hbWU9ImwwMDU5MyI+PC9hPjAwNTkzICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDQiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAwNTk0Ij48L2E+MDA1OTQgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDQiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oKTsKKzxhIG5hbWU9ImwwMDU5NSI+PC9hPjAwNTk1IAorPGEgbmFtZT0ibDAwNjAwIj48L2E+MDA2MDAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NCI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAwNjAxIj48L2E+MDA2MDEgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDQiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqICk7Cis8YSBuYW1lPSJsMDA2MDIiPjwvYT4wMDYwMiAKKzxhIG5hbWU9ImwwMDYwMyI+PC9hPjAwNjAzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDYwNCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0OCI+MDA2MDQ8L2E+IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ0Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgPC9zcGFuPnsgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTQ0Ij5OZXh0U2libGluZ0VsZW1lbnQ8L2E+IChfdmFsdWUuY19zdHIgKCkpOyAgICB9ICAgCis8YSBuYW1lPSJsMDA2MDUiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDkiPjAwNjA1PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NCI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSkgICAgICAgICAgICAgICAgeyAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDQiPk5leHRTaWJsaW5nRWxlbWVudDwvYT4gKF92YWx1ZS5jX3N0ciAoKSk7ICAgIH0gICAKKzxhIG5hbWU9ImwwMDYwNiI+PC9hPjAwNjA2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Cis8YSBuYW1lPSJsMDA2MDciPjwvYT4wMDYwNyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Cis8YSBuYW1lPSJsMDA2MDkiPjwvYT4wMDYwOSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUwIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAwNjEwIj48L2E+MDA2MTAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTAiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPigpOworPGEgbmFtZT0ibDAwNjExIj48L2E+MDA2MTEgCis8YSBuYW1lPSJsMDA2MTMiPjwvYT4wMDYxMyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUwIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIHZhbHVlICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMDYxNCI+PC9hPjAwNjE0ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUwIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIHZhbHVlICk7Cis8YSBuYW1lPSJsMDA2MTUiPjwvYT4wMDYxNSAKKzxhIG5hbWU9ImwwMDYxNiI+PC9hPjAwNjE2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDYxNyI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NCI+MDA2MTc8L2E+IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUwIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUgKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgPC9zcGFuPnsgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUwIj5GaXJzdENoaWxkRWxlbWVudDwvYT4gKF92YWx1ZS5jX3N0ciAoKSk7IH0gICAKKzxhIG5hbWU9ImwwMDYxOCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1NSI+MDA2MTg8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTUwIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUgKSAgICAgICAgICAgICAgICB7ICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MCI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+IChfdmFsdWUuY19zdHIgKCkpOyB9ICAgCis8YSBuYW1lPSJsMDA2MTkiPjwvYT4wMDYxOSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAwNjIwIj48L2E+MDA2MjAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwNjI1Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU2Ij4wMDYyNTwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU2Ij5UeXBlPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gdHlwZTsgfQorPGEgbmFtZT0ibDAwNjI2Ij48L2E+MDA2MjYgCis8YSBuYW1lPSJsMDA2MzAiPjwvYT4wMDYzMCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTciPkdldERvY3VtZW50PC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDA2MzEiPjwvYT4wMDYzMSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU3Ij5HZXREb2N1bWVudDwvYT4oKTsKKzxhIG5hbWU9ImwwMDYzMiI+PC9hPjAwNjMyIAorPGEgbmFtZT0ibDAwNjM0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU5Ij4wMDYzNDwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU5Ij5Ob0NoaWxkcmVuPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAhZmlyc3RDaGlsZDsgfQorPGEgbmFtZT0ibDAwNjM1Ij48L2E+MDA2MzUgCis8YSBuYW1lPSJsMDA2MzYiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjAiPjAwNjM2PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjAiPlRvRG9jdW1lbnQ8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+ICAgY29uc3QgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICggPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+ICZhbXA7JmFtcDsgdHlwZSA9PSBET0NVTUVOVCApID8gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPiopIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPiA6IDA7IH0gCis8YSBuYW1lPSJsMDA2MzciPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjEiPjAwNjM3PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiogIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MSI+VG9FbGVtZW50PC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gJmFtcDsmYW1wOyB0eXBlID09IEVMRU1FTlQgICkgPyAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiopICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gOiAwOyB9IAorPGEgbmFtZT0ibDAwNjM4Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYyIj4wMDYzODwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT4qICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjIiPlRvQ29tbWVudDwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICggPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+ICZhbXA7JmFtcDsgdHlwZSA9PSBDT01NRU5UICApID8gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT4qKSAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+IDogMDsgfSAKKzxhIG5hbWU9ImwwMDYzOSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MyI+MDA2Mzk8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+KiAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYzIj5Ub1Vua25vd248L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPiAmYW1wOyZhbXA7IHR5cGUgPT0gVU5LTk9XTiAgKSA/ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+KikgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPiA6IDA7IH0gCis8YSBuYW1lPSJsMDA2NDAiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjQiPjAwNjQwPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPiogICAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY0Ij5Ub1RleHQ8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+ICAgIGNvbnN0ICAgICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gJmFtcDsmYW1wOyB0eXBlID09IFRFWFQgICAgICkgPyAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPiopICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gOiAwOyB9IAorPGEgbmFtZT0ibDAwNjQxIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY1Ij4wMDY0MTwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj5UaVhtbERlY2xhcmF0aW9uPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY1Ij5Ub0RlY2xhcmF0aW9uPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPiAmYW1wOyZhbXA7IHR5cGUgPT0gREVDTEFSQVRJT04gKSA/ICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4qKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gOiAwOyB9IAorPGEgbmFtZT0ibDAwNjQyIj48L2E+MDA2NDIgCis8YSBuYW1lPSJsMDA2NDMiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjYiPjAwNjQzPC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYwIj5Ub0RvY3VtZW50PC9hPigpICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gJmFtcDsmYW1wOyB0eXBlID09IERPQ1VNRU5UICkgPyAoPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj5UaVhtbERvY3VtZW50PC9hPiopIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPiA6IDA7IH0gCis8YSBuYW1lPSJsMDA2NDQiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjciPjAwNjQ0PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4qICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjEiPlRvRWxlbWVudDwvYT4oKSAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPiAmYW1wOyZhbXA7IHR5cGUgPT0gRUxFTUVOVCAgKSA/ICg8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiopICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gOiAwOyB9IAorPGEgbmFtZT0ibDAwNjQ1Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY4Ij4wMDY0NTwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIj5UaVhtbENvbW1lbnQ8L2E+KiAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYyIj5Ub0NvbW1lbnQ8L2E+KCkgICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gJmFtcDsmYW1wOyB0eXBlID09IENPTU1FTlQgICkgPyAoPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT4qKSAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+IDogMDsgfSAKKzxhIG5hbWU9ImwwMDY0NiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2OSI+MDA2NDY8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPiogIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MyI+VG9Vbmtub3duPC9hPigpICAgICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICggPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+ICZhbXA7JmFtcDsgdHlwZSA9PSBVTktOT1dOICApID8gKDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+KikgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPiA6IDA7IH0gCis8YSBuYW1lPSJsMDA2NDciPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzAiPjAwNjQ3PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT4qICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjQiPlRvVGV4dDwvYT4oKSAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPiAmYW1wOyZhbXA7IHR5cGUgPT0gVEVYVCAgICAgKSA/ICg8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPiopICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gOiAwOyB9IAorPGEgbmFtZT0ibDAwNjQ4Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTcxIj4wMDY0ODwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NSI+VG9EZWNsYXJhdGlvbjwvYT4oKSAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICggPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+ICZhbXA7JmFtcDsgdHlwZSA9PSBERUNMQVJBVElPTiApID8gKDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4qKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gOiAwOyB9IAorPGEgbmFtZT0ibDAwNjQ5Ij48L2E+MDA2NDkgCis8YSBuYW1lPSJsMDA2NTMiPjwvYT4wMDY1MyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzIiPkNsb25lPC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdCA8L3NwYW4+PSAwOworPGEgbmFtZT0ibDAwNjU0Ij48L2E+MDA2NTQgCis8YSBuYW1lPSJsMDA2NTUiPjwvYT4wMDY1NSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJvdGVjdGVkPC9zcGFuPjoKKzxhIG5hbWU9ImwwMDY1NiI+PC9hPjAwNjU2ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiggPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjdzciPk5vZGVUeXBlPC9hPiBfdHlwZSApOworPGEgbmFtZT0ibDAwNjU3Ij48L2E+MDA2NTcgCis8YSBuYW1lPSJsMDA2NTgiPjwvYT4wMDY1OCAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIENvcHkgdG8gdGhlIGFsbG9jYXRlZCBvYmplY3QuIFNoYXJlZCBmdW5jdGlvbmFsaXR5IGJldHdlZW4gQ2xvbmUsIENvcHkgY29uc3RydWN0b3IsPC9zcGFuPgorPGEgbmFtZT0ibDAwNjU5Ij48L2E+MDA2NTkgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBhbmQgdGhlIGFzc2lnbm1lbnQgb3BlcmF0b3IuPC9zcGFuPgorPGEgbmFtZT0ibDAwNjYwIj48L2E+MDA2NjAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gQ29weVRvKCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogdGFyZ2V0ICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMDY2MSI+PC9hPjAwNjYxIAorPGEgbmFtZT0ibDAwNjYyIj48L2E+MDA2NjIgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgorPGEgbmFtZT0ibDAwNjYzIj48L2E+MDA2NjMgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPiAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFRoZSByZWFsIHdvcmsgb2YgdGhlIGlucHV0IG9wZXJhdG9yLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDY2NCI+PC9hPjAwNjY0ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gU3RyZWFtSW4oIFRJWE1MX0lTVFJFQU0qIGluLCBUSVhNTF9TVFJJTkcqIHRhZyApID0gMDsKKzxhIG5hbWU9ImwwMDY2NSI+PC9hPjAwNjY1IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Cis8YSBuYW1lPSJsMDA2NjYiPjwvYT4wMDY2NiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Cis8YSBuYW1lPSJsMDA2NjciPjwvYT4wMDY2NyAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIEZpZ3VyZSBvdXQgd2hhdCBpcyBhdCAqcCwgYW5kIHBhcnNlIGl0LiBSZXR1cm5zIG51bGwgaWYgaXQgaXMgbm90IGFuIHhtbCBub2RlLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDY2OCI+PC9hPjAwNjY4ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogSWRlbnRpZnkoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogc3RhcnQsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKKzxhIG5hbWU9ImwwMDY2OSI+PC9hPjAwNjY5IAorPGEgbmFtZT0ibDAwNjcwIj48L2E+MDA2NzAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiAgICAgIHBhcmVudDsKKzxhIG5hbWU9ImwwMDY3MSI+PC9hPjAwNjcxICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCN3NyI+Tm9kZVR5cGU8L2E+ICAgICAgICB0eXBlOworPGEgbmFtZT0ibDAwNjcyIj48L2E+MDA2NzIgCis8YSBuYW1lPSJsMDA2NzMiPjwvYT4wMDY3MyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qICAgICAgZmlyc3RDaGlsZDsKKzxhIG5hbWU9ImwwMDY3NCI+PC9hPjAwNjc0ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogICAgICBsYXN0Q2hpbGQ7Cis8YSBuYW1lPSJsMDA2NzUiPjwvYT4wMDY3NSAKKzxhIG5hbWU9ImwwMDY3NiI+PC9hPjAwNjc2ICAgICBUSVhNTF9TVFJJTkcgICAgdmFsdWU7Cis8YSBuYW1lPSJsMDA2NzciPjwvYT4wMDY3NyAKKzxhIG5hbWU9ImwwMDY3OCI+PC9hPjAwNjc4ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogICAgICBwcmV2OworPGEgbmFtZT0ibDAwNjc5Ij48L2E+MDA2NzkgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiAgICAgIG5leHQ7Cis8YSBuYW1lPSJsMDA2ODAiPjwvYT4wMDY4MCAKKzxhIG5hbWU9ImwwMDY4MSI+PC9hPjAwNjgxIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wcml2YXRlPC9zcGFuPjoKKzxhIG5hbWU9ImwwMDY4MiI+PC9hPjAwNjgyICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiZhbXA7ICk7ICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gbm90IGltcGxlbWVudGVkLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDY4MyI+PC9hPjAwNjgzICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IG9wZXJhdG9yPSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiZhbXA7IGJhc2UgKTsgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIG5vdCBhbGxvd2VkLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDY4NCI+PC9hPjAwNjg0IH07Cis8YSBuYW1lPSJsMDA2ODUiPjwvYT4wMDY4NSAKKzxhIG5hbWU9ImwwMDY4NiI+PC9hPjAwNjg2IAorPGEgbmFtZT0ibDAwNjk0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+MDA2OTQ8L2E+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+IDogPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPlRpWG1sQmFzZTwvYT4KKzxhIG5hbWU9ImwwMDY5NSI+PC9hPjAwNjk1IHsKKzxhIG5hbWU9ImwwMDY5NiI+PC9hPjAwNjk2ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ZnJpZW5kPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPlRpWG1sQXR0cmlidXRlU2V0OworPGEgbmFtZT0ibDAwNjk3Ij48L2E+MDA2OTcgCis8YSBuYW1lPSJsMDA2OTgiPjwvYT4wMDY5OCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPjoKKzxhIG5hbWU9ImwwMDcwMCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTAiPjAwNzAwPC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMCI+VGlYbWxBdHRyaWJ1dGU8L2E+KCkgOiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCI+VGlYbWxCYXNlPC9hPigpCis8YSBuYW1lPSJsMDA3MDEiPjwvYT4wMDcwMSAgICAgeworPGEgbmFtZT0ibDAwNzAyIj48L2E+MDA3MDIgICAgICAgICBkb2N1bWVudCA9IDA7Cis8YSBuYW1lPSJsMDA3MDMiPjwvYT4wMDcwMyAgICAgICAgIHByZXYgPSBuZXh0ID0gMDsKKzxhIG5hbWU9ImwwMDcwNCI+PC9hPjAwNzA0ICAgICB9Cis8YSBuYW1lPSJsMDA3MDUiPjwvYT4wMDcwNSAKKzxhIG5hbWU9ImwwMDcwNiI+PC9hPjAwNzA2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDcwNyI+PC9hPjAwNzA3IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDcwOCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTEiPjAwNzA4PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMCI+VGlYbWxBdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX25hbWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUgKQorPGEgbmFtZT0ibDAwNzA5Ij48L2E+MDA3MDkgICAgIHsKKzxhIG5hbWU9ImwwMDcxMCI+PC9hPjAwNzEwICAgICAgICAgbmFtZSA9IF9uYW1lOworPGEgbmFtZT0ibDAwNzExIj48L2E+MDA3MTEgICAgICAgICB2YWx1ZSA9IF92YWx1ZTsKKzxhIG5hbWU9ImwwMDcxMiI+PC9hPjAwNzEyICAgICAgICAgZG9jdW1lbnQgPSAwOworPGEgbmFtZT0ibDAwNzEzIj48L2E+MDA3MTMgICAgICAgICBwcmV2ID0gbmV4dCA9IDA7Cis8YSBuYW1lPSJsMDA3MTQiPjwvYT4wMDcxNCAgICAgfQorPGEgbmFtZT0ibDAwNzE1Ij48L2E+MDA3MTUgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbmRpZjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDcxNiI+PC9hPjAwNzE2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDcxOCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTIiPjAwNzE4PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMCI+VGlYbWxBdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBfbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogX3ZhbHVlICkKKzxhIG5hbWU9ImwwMDcxOSI+PC9hPjAwNzE5ICAgICB7Cis8YSBuYW1lPSJsMDA3MjAiPjwvYT4wMDcyMCAgICAgICAgIG5hbWUgPSBfbmFtZTsKKzxhIG5hbWU9ImwwMDcyMSI+PC9hPjAwNzIxICAgICAgICAgdmFsdWUgPSBfdmFsdWU7Cis8YSBuYW1lPSJsMDA3MjIiPjwvYT4wMDcyMiAgICAgICAgIGRvY3VtZW50ID0gMDsKKzxhIG5hbWU9ImwwMDcyMyI+PC9hPjAwNzIzICAgICAgICAgcHJldiA9IG5leHQgPSAwOworPGEgbmFtZT0ibDAwNzI0Ij48L2E+MDA3MjQgICAgIH0KKzxhIG5hbWU9ImwwMDcyNSI+PC9hPjAwNzI1IAorPGEgbmFtZT0ibDAwNzI2Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMyI+MDA3MjY8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EzIj5OYW1lPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgY29uc3QgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IG5hbWUuY19zdHIgKCk7IH0gICAgICAgCis8YSBuYW1lPSJsMDA3MjciPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E0Ij4wMDcyNzwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTQiPlZhbHVlPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gdmFsdWUuY19zdHIgKCk7IH0gICAgICAKKzxhIG5hbWU9ImwwMDcyOCI+PC9hPjAwNzI4ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gICAgICAgICAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNSI+SW50VmFsdWU8L2E+KCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorPGEgbmFtZT0ibDAwNzI5Ij48L2E+MDA3MjkgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+ZG91YmxlPC9zcGFuPiAgICAgICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E2Ij5Eb3VibGVWYWx1ZTwvYT4oKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCis8YSBuYW1lPSJsMDA3MzAiPjwvYT4wMDczMCAKKzxhIG5hbWU9ImwwMDc0MCI+PC9hPjAwNzQwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNyI+UXVlcnlJbnRWYWx1ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiogX3ZhbHVlICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMDc0MiI+PC9hPjAwNzQyICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhOCI+UXVlcnlEb3VibGVWYWx1ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+ZG91YmxlPC9zcGFuPiogX3ZhbHVlICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMDc0MyI+PC9hPjAwNzQzIAorPGEgbmFtZT0ibDAwNzQ0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhOSI+MDA3NDQ8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTkiPlNldE5hbWU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIF9uYW1lICkgICB7IG5hbWUgPSBfbmFtZTsgfSAgICAgICAgICAgICAgIAorPGEgbmFtZT0ibDAwNzQ1Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTAiPjAwNzQ1PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExMCI+U2V0VmFsdWU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIF92YWx1ZSApIHsgdmFsdWUgPSBfdmFsdWU7IH0gICAgICAgICAgICAgCis8YSBuYW1lPSJsMDA3NDYiPjwvYT4wMDc0NiAKKzxhIG5hbWU9ImwwMDc0NyI+PC9hPjAwNzQ3ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTExIj5TZXRJbnRWYWx1ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBfdmFsdWUgKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCis8YSBuYW1lPSJsMDA3NDgiPjwvYT4wMDc0OCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExMiI+U2V0RG91YmxlVmFsdWU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmRvdWJsZTwvc3Bhbj4gX3ZhbHVlICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorPGEgbmFtZT0ibDAwNzQ5Ij48L2E+MDA3NDkgCis8YSBuYW1lPSJsMDA3NTAiPjwvYT4wMDc1MCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Cis8YSBuYW1lPSJsMDA3NTEiPjwvYT4wMDc1MSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Cis8YSBuYW1lPSJsMDA3NTIiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExMyI+MDA3NTI8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTkiPlNldE5hbWU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX25hbWUgKSAgICAKKzxhIG5hbWU9ImwwMDc1MyI+PC9hPjAwNzUzICAgICB7ICAgCis8YSBuYW1lPSJsMDA3NTQiPjwvYT4wMDc1NCAgICAgICAgIFN0cmluZ1RvQnVmZmVyIGJ1ZiggX25hbWUgKTsKKzxhIG5hbWU9ImwwMDc1NSI+PC9hPjAwNzU1ICAgICAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhOSI+U2V0TmFtZTwvYT4gKCBidWYuYnVmZmVyID8gYnVmLmJ1ZmZlciA6IDxzcGFuIGNsYXNzPSJzdHJpbmdsaXRlcmFsIj4iZXJyb3IiPC9zcGFuPiApOyAgCis8YSBuYW1lPSJsMDA3NTYiPjwvYT4wMDc1NiAgICAgfQorPGEgbmFtZT0ibDAwNzU4Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTQiPjAwNzU4PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExMCI+U2V0VmFsdWU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlICkgIAorPGEgbmFtZT0ibDAwNzU5Ij48L2E+MDA3NTkgICAgIHsgICAKKzxhIG5hbWU9ImwwMDc2MCI+PC9hPjAwNzYwICAgICAgICAgU3RyaW5nVG9CdWZmZXIgYnVmKCBfdmFsdWUgKTsKKzxhIG5hbWU9ImwwMDc2MSI+PC9hPjAwNzYxICAgICAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTAiPlNldFZhbHVlPC9hPiggYnVmLmJ1ZmZlciA/IGJ1Zi5idWZmZXIgOiA8c3BhbiBjbGFzcz0ic3RyaW5nbGl0ZXJhbCI+ImVycm9yIjwvc3Bhbj4gKTsgIAorPGEgbmFtZT0ibDAwNzYyIj48L2E+MDA3NjIgICAgIH0KKzxhIG5hbWU9ImwwMDc2MyI+PC9hPjAwNzYzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Cis8YSBuYW1lPSJsMDA3NjQiPjwvYT4wMDc2NCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Cis8YSBuYW1lPSJsMDA3NjYiPjwvYT4wMDc2NiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTE1Ij5OZXh0PC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDA3NjciPjwvYT4wMDc2NyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExNSI+TmV4dDwvYT4oKTsKKzxhIG5hbWU9ImwwMDc2OSI+PC9hPjAwNzY5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMTciPlByZXZpb3VzPC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDA3NzAiPjwvYT4wMDc3MCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2ExNyI+UHJldmlvdXM8L2E+KCk7Cis8YSBuYW1lPSJsMDA3NzEiPjwvYT4wMDc3MSAKKzxhIG5hbWU9ImwwMDc3MiI+PC9hPjAwNzcyICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IG9wZXJhdG9yPT0oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+JmFtcDsgcmhzICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0IDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiByaHMuPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNyMSI+bmFtZTwvYT4gPT0gbmFtZTsgfQorPGEgbmFtZT0ibDAwNzczIj48L2E+MDA3NzMgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gb3BlcmF0b3ImbHQ7KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPiZhbXA7IHJocyApPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IG5hbWUgJmx0OyByaHMuPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNyMSI+bmFtZTwvYT47IH0KKzxhIG5hbWU9ImwwMDc3NCI+PC9hPjAwNzc0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IG9wZXJhdG9yJmd0OyggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT4mYW1wOyByaHMgKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gIGNvbnN0IDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBuYW1lICZndDsgcmhzLjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjcjEiPm5hbWU8L2E+OyB9Cis8YSBuYW1lPSJsMDA3NzUiPjwvYT4wMDc3NSAKKzxhIG5hbWU9ImwwMDc3NiI+PC9hPjAwNzc2ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+LyogIEF0dHJpYnV0ZSBwYXJzaW5nIHN0YXJ0czogZmlyc3QgbGV0dGVyIG9mIHRoZSBuYW1lPC9zcGFuPgorPGEgbmFtZT0ibDAwNzc3Ij48L2E+MDA3NzcgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm5zOiB0aGUgbmV4dCBjaGFyIGFmdGVyIHRoZSB2YWx1ZSBlbmQgcXVvdGU8L3NwYW4+Cis8YSBuYW1lPSJsMDA3NzgiPjwvYT4wMDc3OCA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgICovPC9zcGFuPgorPGEgbmFtZT0ibDAwNzc5Ij48L2E+MDA3NzkgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIFBhcnNlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHAsIFRpWG1sUGFyc2luZ0RhdGEqIGRhdGEsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKKzxhIG5hbWU9ImwwMDc4MCI+PC9hPjAwNzgwIAorPGEgbmFtZT0ibDAwNzgxIj48L2E+MDA3ODEgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBQcmludHMgdGhpcyBBdHRyaWJ1dGUgdG8gYSBGSUxFIHN0cmVhbS48L3NwYW4+Cis8YSBuYW1lPSJsMDA3ODIiPjwvYT4wMDc4MiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMjMiPlByaW50PC9hPiggRklMRSogY2ZpbGUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBkZXB0aCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDA3ODMiPjwvYT4wMDc4MyAKKzxhIG5hbWU9ImwwMDc4NCI+PC9hPjAwNzg0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTdHJlYW1PdXQoIFRJWE1MX09TVFJFQU0gKiBvdXQgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAwNzg1Ij48L2E+MDA3ODUgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBbaW50ZXJuYWwgdXNlXTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDc4NiI+PC9hPjAwNzg2ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gU2V0IHRoZSBkb2N1bWVudCBwb2ludGVyIHNvIHRoZSBhdHRyaWJ1dGUgY2FuIHJlcG9ydCBlcnJvcnMuPC9zcGFuPgorPGEgbmFtZT0ibDAwNzg3Ij48L2E+MDA3ODcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gU2V0RG9jdW1lbnQoIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT4qIGRvYyApICB7IGRvY3VtZW50ID0gZG9jOyB9Cis8YSBuYW1lPSJsMDA3ODgiPjwvYT4wMDc4OCAKKzxhIG5hbWU9ImwwMDc4OSI+PC9hPjAwNzg5IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wcml2YXRlPC9zcGFuPjoKKzxhIG5hbWU9ImwwMDc5MCI+PC9hPjAwNzkwICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EwIj5UaVhtbEF0dHJpYnV0ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+JmFtcDsgKTsgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIG5vdCBpbXBsZW1lbnRlZC48L3NwYW4+Cis8YSBuYW1lPSJsMDA3OTEiPjwvYT4wMDc5MSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBvcGVyYXRvcj0oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+JmFtcDsgYmFzZSApOyAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBub3QgYWxsb3dlZC48L3NwYW4+Cis8YSBuYW1lPSJsMDA3OTIiPjwvYT4wMDc5MiAKKzxhIG5hbWU9ImwwMDc5MyI+PC9hPjAwNzkzICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+KiAgZG9jdW1lbnQ7ICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIEEgcG9pbnRlciBiYWNrIHRvIGEgZG9jdW1lbnQsIGZvciBlcnJvciByZXBvcnRpbmcuPC9zcGFuPgorPGEgbmFtZT0ibDAwNzk0Ij48L2E+MDA3OTQgICAgIFRJWE1MX1NUUklORyBuYW1lOworPGEgbmFtZT0ibDAwNzk1Ij48L2E+MDA3OTUgICAgIFRJWE1MX1NUUklORyB2YWx1ZTsKKzxhIG5hbWU9ImwwMDc5NiI+PC9hPjAwNzk2ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIHByZXY7Cis8YSBuYW1lPSJsMDA3OTciPjwvYT4wMDc5NyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+KiBuZXh0OworPGEgbmFtZT0ibDAwNzk4Ij48L2E+MDA3OTggfTsKKzxhIG5hbWU9ImwwMDc5OSI+PC9hPjAwNzk5IAorPGEgbmFtZT0ibDAwODAwIj48L2E+MDA4MDAgCis8YSBuYW1lPSJsMDA4MDEiPjwvYT4wMDgwMSA8c3BhbiBjbGFzcz0iY29tbWVudCI+LyogIEEgY2xhc3MgdXNlZCB0byBtYW5hZ2UgYSBncm91cCBvZiBhdHRyaWJ1dGVzLjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDgwMiI+PC9hPjAwODAyIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgSXQgaXMgb25seSB1c2VkIGludGVybmFsbHksIGJvdGggYnkgdGhlIEVMRU1FTlQgYW5kIHRoZSBERUNMQVJBVElPTi48L3NwYW4+Cis8YSBuYW1lPSJsMDA4MDMiPjwvYT4wMDgwMyA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgIDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDgwNCI+PC9hPjAwODA0IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgVGhlIHNldCBjYW4gYmUgY2hhbmdlZCB0cmFuc3BhcmVudCB0byB0aGUgRWxlbWVudCBhbmQgRGVjbGFyYXRpb248L3NwYW4+Cis8YSBuYW1lPSJsMDA4MDUiPjwvYT4wMDgwNSA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgIGNsYXNzZXMgdGhhdCB1c2UgaXQsIGJ1dCBOT1QgdHJhbnNwYXJlbnQgdG8gdGhlIEF0dHJpYnV0ZTwvc3Bhbj4KKzxhIG5hbWU9ImwwMDgwNiI+PC9hPjAwODA2IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgd2hpY2ggaGFzIHRvIGltcGxlbWVudCBhIG5leHQoKSBhbmQgcHJldmlvdXMoKSBtZXRob2QuIFdoaWNoIG1ha2VzPC9zcGFuPgorPGEgbmFtZT0ibDAwODA3Ij48L2E+MDA4MDcgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICBpdCBhIGJpdCBwcm9ibGVtYXRpYyBhbmQgcHJldmVudHMgdGhlIHVzZSBvZiBTVEwuPC9zcGFuPgorPGEgbmFtZT0ibDAwODA4Ij48L2E+MDA4MDggPHNwYW4gY2xhc3M9ImNvbW1lbnQiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMDgwOSI+PC9hPjAwODA5IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgVGhpcyB2ZXJzaW9uIGlzIGltcGxlbWVudGVkIHdpdGggY2lyY3VsYXIgbGlzdHMgYmVjYXVzZTo8L3NwYW4+Cis8YSBuYW1lPSJsMDA4MTAiPjwvYT4wMDgxMCA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgICAgICAtIEkgbGlrZSBjaXJjdWxhciBsaXN0czwvc3Bhbj4KKzxhIG5hbWU9ImwwMDgxMSI+PC9hPjAwODExIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgICAgIC0gaXQgZGVtb25zdHJhdGVzIHNvbWUgaW5kZXBlbmRlbmNlIGZyb20gdGhlICh0eXBpY2FsKSBkb3VibHkgbGlua2VkIGxpc3QuPC9zcGFuPgorPGEgbmFtZT0ibDAwODEyIj48L2E+MDA4MTIgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiovPC9zcGFuPgorPGEgbmFtZT0ibDAwODEzIj48L2E+MDA4MTMgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj5UaVhtbEF0dHJpYnV0ZVNldAorPGEgbmFtZT0ibDAwODE0Ij48L2E+MDA4MTQgeworPGEgbmFtZT0ibDAwODE1Ij48L2E+MDA4MTUgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj46Cis8YSBuYW1lPSJsMDA4MTYiPjwvYT4wMDgxNiAgICAgVGlYbWxBdHRyaWJ1dGVTZXQoKTsKKzxhIG5hbWU9ImwwMDgxNyI+PC9hPjAwODE3ICAgICB+VGlYbWxBdHRyaWJ1dGVTZXQoKTsKKzxhIG5hbWU9ImwwMDgxOCI+PC9hPjAwODE4IAorPGEgbmFtZT0ibDAwODE5Ij48L2E+MDA4MTkgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gQWRkKCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIGF0dHJpYnV0ZSApOworPGEgbmFtZT0ibDAwODIwIj48L2E+MDA4MjAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gUmVtb3ZlKCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIGF0dHJpYnV0ZSApOworPGEgbmFtZT0ibDAwODIxIj48L2E+MDA4MjEgCis8YSBuYW1lPSJsMDA4MjIiPjwvYT4wMDgyMiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIEZpcnN0KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+ICAgY29uc3QgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCBzZW50aW5lbC5uZXh0ID09ICZhbXA7c2VudGluZWwgKSA/IDAgOiBzZW50aW5lbC5uZXh0OyB9Cis8YSBuYW1lPSJsMDA4MjMiPjwvYT4wMDgyMyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+KiBGaXJzdCgpICAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAoIHNlbnRpbmVsLm5leHQgPT0gJmFtcDtzZW50aW5lbCApID8gMCA6IHNlbnRpbmVsLm5leHQ7IH0KKzxhIG5hbWU9ImwwMDgyNCI+PC9hPjAwODI0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPiogTGFzdCgpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAoIHNlbnRpbmVsLnByZXYgPT0gJmFtcDtzZW50aW5lbCApID8gMCA6IHNlbnRpbmVsLnByZXY7IH0KKzxhIG5hbWU9ImwwMDgyNSI+PC9hPjAwODI1ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIExhc3QoKSAgICAgICAgICAgICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICggc2VudGluZWwucHJldiA9PSAmYW1wO3NlbnRpbmVsICkgPyAwIDogc2VudGluZWwucHJldjsgfQorPGEgbmFtZT0ibDAwODI2Ij48L2E+MDA4MjYgCis8YSBuYW1lPSJsMDA4MjciPjwvYT4wMDgyNyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIj5UaVhtbEF0dHJpYnV0ZTwvYT4qICAgRmluZCggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogbmFtZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDA4MjgiPjwvYT4wMDgyOCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+KiBGaW5kKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBuYW1lICk7Cis8YSBuYW1lPSJsMDA4MjkiPjwvYT4wMDgyOSAKKzxhIG5hbWU9ImwwMDgzMCI+PC9hPjAwODMwIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wcml2YXRlPC9zcGFuPjoKKzxhIG5hbWU9ImwwMDgzMSI+PC9hPjAwODMxICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8qTUU6ICBCZWNhdXNlIG9mIGhpZGRlbi9kaXNhYmxlZCBjb3B5LWNvbnN0cnVrdG9yIGluIFRpWG1sQXR0cmlidXRlIChzZW50aW5lbC1lbGVtZW50KSw8L3NwYW4+Cis8YSBuYW1lPSJsMDA4MzIiPjwvYT4wMDgzMiAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vKk1FOiAgdGhpcyBjbGFzcyBtdXN0IGJlIGFsc28gdXNlIGEgaGlkZGVuL2Rpc2FibGVkIGNvcHktY29uc3RydWN0b3IgISEhPC9zcGFuPgorPGEgbmFtZT0ibDAwODMzIj48L2E+MDA4MzMgICAgIFRpWG1sQXR0cmlidXRlU2V0KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sQXR0cmlidXRlU2V0JmFtcDsgKTsgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBub3QgYWxsb3dlZDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDgzNCI+PC9hPjAwODM0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IG9wZXJhdG9yPSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbEF0dHJpYnV0ZVNldCZhbXA7ICk7IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBub3QgYWxsb3dlZCAoYXMgVGlYbWxBdHRyaWJ1dGUpPC9zcGFuPgorPGEgbmFtZT0ibDAwODM1Ij48L2E+MDA4MzUgCis8YSBuYW1lPSJsMDA4MzYiPjwvYT4wMDgzNiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+IHNlbnRpbmVsOworPGEgbmFtZT0ibDAwODM3Ij48L2E+MDA4MzcgfTsKKzxhIG5hbWU9ImwwMDgzOCI+PC9hPjAwODM4IAorPGEgbmFtZT0ibDAwODM5Ij48L2E+MDA4MzkgCis8YSBuYW1lPSJsMDA4NDQiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+MDA4NDQ8L2E+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4gOiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPgorPGEgbmFtZT0ibDAwODQ1Ij48L2E+MDA4NDUgeworPGEgbmFtZT0ibDAwODQ2Ij48L2E+MDA4NDYgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj46Cis8YSBuYW1lPSJsMDA4NDgiPjwvYT4wMDg0OCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTAiPlRpWG1sRWxlbWVudDwvYT4gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIGluX3ZhbHVlKTsKKzxhIG5hbWU9ImwwMDg0OSI+PC9hPjAwODQ5IAorPGEgbmFtZT0ibDAwODUwIj48L2E+MDA4NTAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgorPGEgbmFtZT0ibDAwODUxIj48L2E+MDA4NTEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwODUyIj48L2E+MDA4NTIgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EwIj5UaVhtbEVsZW1lbnQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlICk7Cis8YSBuYW1lPSJsMDA4NTMiPjwvYT4wMDg1MyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAwODU0Ij48L2E+MDA4NTQgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwODU1Ij48L2E+MDA4NTUgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EwIj5UaVhtbEVsZW1lbnQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+JmFtcDsgKTsKKzxhIG5hbWU9ImwwMDg1NiI+PC9hPjAwODU2IAorPGEgbmFtZT0ibDAwODU3Ij48L2E+MDA4NTcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gb3BlcmF0b3I9KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+JmFtcDsgYmFzZSApOworPGEgbmFtZT0ibDAwODU4Ij48L2E+MDA4NTggCis8YSBuYW1lPSJsMDA4NTkiPjwvYT4wMDg1OSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IH48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPigpOworPGEgbmFtZT0ibDAwODYwIj48L2E+MDA4NjAgCis8YSBuYW1lPSJsMDA4NjQiPjwvYT4wMDg2NCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNSI+QXR0cmlidXRlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBuYW1lICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMDg2NSI+PC9hPjAwODY1IAorPGEgbmFtZT0ibDAwODcyIj48L2E+MDA4NzIgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTUiPkF0dHJpYnV0ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+KiBpICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMDg3MyI+PC9hPjAwODczIAorPGEgbmFtZT0ibDAwODgwIj48L2E+MDA4ODAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTUiPkF0dHJpYnV0ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5kb3VibGU8L3NwYW4+KiBkICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMDg4MSI+PC9hPjAwODgxIAorPGEgbmFtZT0ibDAwODg5Ij48L2E+MDA4ODkgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhOCI+UXVlcnlJbnRBdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIG5hbWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiogX3ZhbHVlICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMDg5MSI+PC9hPjAwODkxICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTkiPlF1ZXJ5RG91YmxlQXR0cmlidXRlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmRvdWJsZTwvc3Bhbj4qIF92YWx1ZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDA4OTMiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMTAiPjAwODkzPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExMCI+UXVlcnlGbG9hdEF0dHJpYnV0ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5mbG9hdDwvc3Bhbj4qIF92YWx1ZSApPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eworPGEgbmFtZT0ibDAwODk0Ij48L2E+MDA4OTQgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmRvdWJsZTwvc3Bhbj4gZDsKKzxhIG5hbWU9ImwwMDg5NSI+PC9hPjAwODk1ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IHJlc3VsdCA9IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E5Ij5RdWVyeURvdWJsZUF0dHJpYnV0ZTwvYT4oIG5hbWUsICZhbXA7ZCApOworPGEgbmFtZT0ibDAwODk2Ij48L2E+MDA4OTYgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPmlmPC9zcGFuPiAoIHJlc3VsdCA9PSBUSVhNTF9TVUNDRVNTICkgeworPGEgbmFtZT0ibDAwODk3Ij48L2E+MDA4OTcgICAgICAgICAgICAgKl92YWx1ZSA9IChmbG9hdClkOworPGEgbmFtZT0ibDAwODk4Ij48L2E+MDA4OTggICAgICAgICB9Cis8YSBuYW1lPSJsMDA4OTkiPjwvYT4wMDg5OSAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiByZXN1bHQ7Cis8YSBuYW1lPSJsMDA5MDAiPjwvYT4wMDkwMCAgICAgfQorPGEgbmFtZT0ibDAwOTAxIj48L2E+MDA5MDEgCis8YSBuYW1lPSJsMDA5MDUiPjwvYT4wMDkwNSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMTEiPlNldEF0dHJpYnV0ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogX3ZhbHVlICk7Cis8YSBuYW1lPSJsMDA5MDYiPjwvYT4wMDkwNiAKKzxhIG5hbWU9ImwwMDkwNyI+PC9hPjAwOTA3IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KKzxhIG5hbWU9ImwwMDkwOCI+PC9hPjAwOTA4IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNSI+QXR0cmlidXRlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IG5hbWUgKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgICAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNSI+QXR0cmlidXRlPC9hPiggbmFtZS5jX3N0cigpICk7IH0KKzxhIG5hbWU9ImwwMDkwOSI+PC9hPjAwOTA5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E1Ij5BdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+KiBpICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E1Ij5BdHRyaWJ1dGU8L2E+KCBuYW1lLmNfc3RyKCksIGkgKTsgfQorPGEgbmFtZT0ibDAwOTEwIj48L2E+MDA5MTAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTUiPkF0dHJpYnV0ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmRvdWJsZTwvc3Bhbj4qIGQgKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTUiPkF0dHJpYnV0ZTwvYT4oIG5hbWUuY19zdHIoKSwgZCApOyB9Cis8YSBuYW1lPSJsMDA5MTEiPjwvYT4wMDkxMSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E4Ij5RdWVyeUludEF0dHJpYnV0ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4qIF92YWx1ZSApPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTgiPlF1ZXJ5SW50QXR0cmlidXRlPC9hPiggbmFtZS5jX3N0cigpLCBfdmFsdWUgKTsgfQorPGEgbmFtZT0ibDAwOTEyIj48L2E+MDA5MTIgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhOSI+UXVlcnlEb3VibGVBdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5kb3VibGU8L3NwYW4+KiBfdmFsdWUgKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E5Ij5RdWVyeURvdWJsZUF0dHJpYnV0ZTwvYT4oIG5hbWUuY19zdHIoKSwgX3ZhbHVlICk7IH0KKzxhIG5hbWU9ImwwMDkxMyI+PC9hPjAwOTEzIAorPGEgbmFtZT0ibDAwOTE1Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTE3Ij4wMDkxNTwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTExIj5TZXRBdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSApIAorPGEgbmFtZT0ibDAwOTE2Ij48L2E+MDA5MTYgICAgIHsgICAKKzxhIG5hbWU9ImwwMDkxNyI+PC9hPjAwOTE3ICAgICAgICAgU3RyaW5nVG9CdWZmZXIgbiggbmFtZSApOworPGEgbmFtZT0ibDAwOTE4Ij48L2E+MDA5MTggICAgICAgICBTdHJpbmdUb0J1ZmZlciB2KCBfdmFsdWUgKTsKKzxhIG5hbWU9ImwwMDkxOSI+PC9hPjAwOTE5ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKCBuLmJ1ZmZlciAmYW1wOyZhbXA7IHYuYnVmZmVyICkKKzxhIG5hbWU9ImwwMDkyMCI+PC9hPjAwOTIwICAgICAgICAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExMSI+U2V0QXR0cmlidXRlPC9hPiAobi5idWZmZXIsIHYuYnVmZmVyICk7IAorPGEgbmFtZT0ibDAwOTIxIj48L2E+MDA5MjEgICAgIH0gICAKKzxhIG5hbWU9ImwwMDkyMyI+PC9hPjAwOTIzICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExMSI+U2V0QXR0cmlidXRlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IG5hbWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBfdmFsdWUgKSAgICAKKzxhIG5hbWU9ImwwMDkyNCI+PC9hPjAwOTI0ICAgICB7ICAgCis8YSBuYW1lPSJsMDA5MjUiPjwvYT4wMDkyNSAgICAgICAgIFN0cmluZ1RvQnVmZmVyIG4oIG5hbWUgKTsKKzxhIG5hbWU9ImwwMDkyNiI+PC9hPjAwOTI2ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKCBuLmJ1ZmZlciApCis8YSBuYW1lPSJsMDA5MjciPjwvYT4wMDkyNyAgICAgICAgICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMTEiPlNldEF0dHJpYnV0ZTwvYT4gKG4uYnVmZmVyLCBfdmFsdWUpOyAgICAKKzxhIG5hbWU9ImwwMDkyOCI+PC9hPjAwOTI4ICAgICB9ICAgCis8YSBuYW1lPSJsMDA5MjkiPjwvYT4wMDkyOSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAwOTMwIj48L2E+MDA5MzAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwOTM0Ij48L2E+MDA5MzQgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTExIj5TZXRBdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gdmFsdWUgKTsKKzxhIG5hbWU9ImwwMDkzNSI+PC9hPjAwOTM1IAorPGEgbmFtZT0ibDAwOTM5Ij48L2E+MDA5MzkgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTIwIj5TZXREb3VibGVBdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmRvdWJsZTwvc3Bhbj4gdmFsdWUgKTsKKzxhIG5hbWU9ImwwMDk0MCI+PC9hPjAwOTQwIAorPGEgbmFtZT0ibDAwOTQzIj48L2E+MDA5NDMgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTIxIj5SZW1vdmVBdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBuYW1lICk7Cis8YSBuYW1lPSJsMDA5NDQiPjwvYT4wMDk0NCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Cis8YSBuYW1lPSJsMDA5NDUiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjIiPjAwOTQ1PC9hPiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTIxIj5SZW1vdmVBdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgbmFtZSApIHsgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjEiPlJlbW92ZUF0dHJpYnV0ZTwvYT4gKG5hbWUuY19zdHIgKCkpOyAgICB9ICAgCis8YSBuYW1lPSJsMDA5NDYiPjwvYT4wMDk0NiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAwOTQ3Ij48L2E+MDA5NDcgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAwOTQ4Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTIzIj4wMDk0ODwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjMiPkZpcnN0QXR0cmlidXRlPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gYXR0cmlidXRlU2V0LkZpcnN0KCk7IH0gICAgICAgIAorPGEgbmFtZT0ibDAwOTQ5Ij48L2E+MDA5NDkgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPlRpWG1sQXR0cmlidXRlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTIzIj5GaXJzdEF0dHJpYnV0ZTwvYT4oKSAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBhdHRyaWJ1dGVTZXQuRmlyc3QoKTsgfQorPGEgbmFtZT0ibDAwOTUwIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTI1Ij4wMDk1MDwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjUiPkxhc3RBdHRyaWJ1dGU8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+ICAgY29uc3QgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gYXR0cmlidXRlU2V0Lkxhc3QoKTsgfSAgICAgCis8YSBuYW1lPSJsMDA5NTEiPjwvYT4wMDk1MSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCI+VGlYbWxBdHRyaWJ1dGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMjUiPkxhc3RBdHRyaWJ1dGU8L2E+KCkgICAgICAgICAgICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGF0dHJpYnV0ZVNldC5MYXN0KCk7IH0KKzxhIG5hbWU9ImwwMDk1MiI+PC9hPjAwOTUyIAorPGEgbmFtZT0ibDAwOTg1Ij48L2E+MDA5ODUgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTI3Ij5HZXRUZXh0PC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDA5ODYiPjwvYT4wMDk4NiAKKzxhIG5hbWU9ImwwMDk4OCI+PC9hPjAwOTg4ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2EyOCI+Q2xvbmU8L2E+KCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMDk4OSI+PC9hPjAwOTg5ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gUHJpbnQgdGhlIEVsZW1lbnQgdG8gYSBGSUxFIHN0cmVhbS48L3NwYW4+Cis8YSBuYW1lPSJsMDA5OTAiPjwvYT4wMDk5MCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYTI5Ij5QcmludDwvYT4oIEZJTEUqIGNmaWxlLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gZGVwdGggKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAwOTkxIj48L2E+MDA5OTEgCis8YSBuYW1lPSJsMDA5OTIiPjwvYT4wMDk5MiAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8qICBBdHRyaWJ0dWUgcGFyc2luZyBzdGFydHM6IG5leHQgY2hhciBwYXN0ICcmbHQ7Jzwvc3Bhbj4KKzxhIG5hbWU9ImwwMDk5MyI+PC9hPjAwOTkzIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuczogbmV4dCBjaGFyIHBhc3QgJyZndDsnPC9zcGFuPgorPGEgbmFtZT0ibDAwOTk0Ij48L2E+MDA5OTQgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAqLzwvc3Bhbj4KKzxhIG5hbWU9ImwwMDk5NSI+PC9hPjAwOTk1ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBQYXJzZSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBwLCBUaVhtbFBhcnNpbmdEYXRhKiBkYXRhLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7Cis8YSBuYW1lPSJsMDA5OTYiPjwvYT4wMDk5NiAKKzxhIG5hbWU9ImwwMDk5NyI+PC9hPjAwOTk3IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wcm90ZWN0ZWQ8L3NwYW4+OgorPGEgbmFtZT0ibDAwOTk4Ij48L2E+MDA5OTggCis8YSBuYW1lPSJsMDA5OTkiPjwvYT4wMDk5OSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBDb3B5VG8oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+KiB0YXJnZXQgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAxMDAwIj48L2E+MDEwMDAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gQ2xlYXJUaGlzKCk7ICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIGxpa2UgY2xlYXIsIGJ1dCBpbml0aWFsaXplcyAndGhpcycgb2JqZWN0IGFzIHdlbGw8L3NwYW4+Cis8YSBuYW1lPSJsMDEwMDEiPjwvYT4wMTAwMSAKKzxhIG5hbWU9ImwwMTAwMiI+PC9hPjAxMDAyICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gVXNlZCB0byBiZSBwdWJsaWMgW2ludGVybmFsIHVzZV08L3NwYW4+Cis8YSBuYW1lPSJsMDEwMDMiPjwvYT4wMTAwMyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Cis8YSBuYW1lPSJsMDEwMDQiPjwvYT4wMTAwNCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTdHJlYW1JbiggVElYTUxfSVNUUkVBTSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKTsKKzxhIG5hbWU9ImwwMTAwNSI+PC9hPjAxMDA1IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Cis8YSBuYW1lPSJsMDEwMDYiPjwvYT4wMTAwNiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IFN0cmVhbU91dCggVElYTUxfT1NUUkVBTSAqIG91dCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDEwMDciPjwvYT4wMTAwNyAKKzxhIG5hbWU9ImwwMTAwOCI+PC9hPjAxMDA4ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+LyogIFtpbnRlcm5hbCB1c2VdPC9zcGFuPgorPGEgbmFtZT0ibDAxMDA5Ij48L2E+MDEwMDkgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAgICAgUmVhZHMgdGhlICJ2YWx1ZSIgb2YgdGhlIGVsZW1lbnQgLS0gYW5vdGhlciBlbGVtZW50LCBvciB0ZXh0Ljwvc3Bhbj4KKzxhIG5hbWU9ImwwMTAxMCI+PC9hPjAxMDEwIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgICAgIFRoaXMgc2hvdWxkIHRlcm1pbmF0ZSB3aXRoIHRoZSBjdXJyZW50IGVuZCB0YWcuPC9zcGFuPgorPGEgbmFtZT0ibDAxMDExIj48L2E+MDEwMTEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAqLzwvc3Bhbj4KKzxhIG5hbWU9ImwwMTAxMiI+PC9hPjAxMDEyICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIFJlYWRWYWx1ZSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBpbiwgVGlYbWxQYXJzaW5nRGF0YSogcHJldkRhdGEsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKKzxhIG5hbWU9ImwwMTAxMyI+PC9hPjAxMDEzIAorPGEgbmFtZT0ibDAxMDE0Ij48L2E+MDEwMTQgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByaXZhdGU8L3NwYW4+OgorPGEgbmFtZT0ibDAxMDE1Ij48L2E+MDEwMTUgCis8YSBuYW1lPSJsMDEwMTYiPjwvYT4wMTAxNiAgICAgVGlYbWxBdHRyaWJ1dGVTZXQgYXR0cmlidXRlU2V0OworPGEgbmFtZT0ibDAxMDE3Ij48L2E+MDEwMTcgfTsKKzxhIG5hbWU9ImwwMTAxOCI+PC9hPjAxMDE4IAorPGEgbmFtZT0ibDAxMDE5Ij48L2E+MDEwMTkgCis8YSBuYW1lPSJsMDEwMjIiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCI+MDEwMjI8L2E+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT4gOiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPgorPGEgbmFtZT0ibDAxMDIzIj48L2E+MDEwMjMgeworPGEgbmFtZT0ibDAxMDI0Ij48L2E+MDEwMjQgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj46Cis8YSBuYW1lPSJsMDEwMjYiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhMCI+MDEwMjY8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhMCI+VGlYbWxDb21tZW50PC9hPigpIDogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+OjpDT01NRU5UICkge30KKzxhIG5hbWU9ImwwMTAyNyI+PC9hPjAxMDI3ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhMCI+VGlYbWxDb21tZW50PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCI+VGlYbWxDb21tZW50PC9hPiZhbXA7ICk7Cis8YSBuYW1lPSJsMDEwMjgiPjwvYT4wMTAyOCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBvcGVyYXRvcj0oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiPlRpWG1sQ29tbWVudDwvYT4mYW1wOyBiYXNlICk7Cis8YSBuYW1lPSJsMDEwMjkiPjwvYT4wMTAyOSAKKzxhIG5hbWU9ImwwMTAzMCI+PC9hPjAxMDMwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gfjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIj5UaVhtbENvbW1lbnQ8L2E+KCkge30KKzxhIG5hbWU9ImwwMTAzMSI+PC9hPjAxMDMxIAorPGEgbmFtZT0ibDAxMDMzIj48L2E+MDEwMzMgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTQiPkNsb25lPC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDEwMzUiPjwvYT4wMTAzNSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTUiPlByaW50PC9hPiggRklMRSogY2ZpbGUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBkZXB0aCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDEwMzYiPjwvYT4wMTAzNiAKKzxhIG5hbWU9ImwwMTAzNyI+PC9hPjAxMDM3ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+LyogIEF0dHJpYnR1ZSBwYXJzaW5nIHN0YXJ0czogYXQgdGhlICEgb2YgdGhlICEtLTwvc3Bhbj4KKzxhIG5hbWU9ImwwMTAzOCI+PC9hPjAxMDM4IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuczogbmV4dCBjaGFyIHBhc3QgJyZndDsnPC9zcGFuPgorPGEgbmFtZT0ibDAxMDM5Ij48L2E+MDEwMzkgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAqLzwvc3Bhbj4KKzxhIG5hbWU9ImwwMTA0MCI+PC9hPjAxMDQwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBQYXJzZSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBwLCBUaVhtbFBhcnNpbmdEYXRhKiBkYXRhLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7Cis8YSBuYW1lPSJsMDEwNDEiPjwvYT4wMTA0MSAKKzxhIG5hbWU9ImwwMTA0MiI+PC9hPjAxMDQyIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wcm90ZWN0ZWQ8L3NwYW4+OgorPGEgbmFtZT0ibDAxMDQzIj48L2E+MDEwNDMgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gQ29weVRvKCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCI+VGlYbWxDb21tZW50PC9hPiogdGFyZ2V0ICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMTA0NCI+PC9hPjAxMDQ0IAorPGEgbmFtZT0ibDAxMDQ1Ij48L2E+MDEwNDUgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyB1c2VkIHRvIGJlIHB1YmxpYzwvc3Bhbj4KKzxhIG5hbWU9ImwwMTA0NiI+PC9hPjAxMDQ2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KKzxhIG5hbWU9ImwwMTA0NyI+PC9hPjAxMDQ3IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IFN0cmVhbUluKCBUSVhNTF9JU1RSRUFNICogaW4sIFRJWE1MX1NUUklORyAqIHRhZyApOworPGEgbmFtZT0ibDAxMDQ4Ij48L2E+MDEwNDggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbmRpZjwvc3Bhbj4KKzxhIG5hbWU9ImwwMTA0OSI+PC9hPjAxMDQ5IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gU3RyZWFtT3V0KCBUSVhNTF9PU1RSRUFNICogb3V0ICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMTA1MCI+PC9hPjAxMDUwIAorPGEgbmFtZT0ibDAxMDUxIj48L2E+MDEwNTEgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByaXZhdGU8L3NwYW4+OgorPGEgbmFtZT0ibDAxMDUyIj48L2E+MDEwNTIgCis8YSBuYW1lPSJsMDEwNTMiPjwvYT4wMTA1MyB9OworPGEgbmFtZT0ibDAxMDU0Ij48L2E+MDEwNTQgCis8YSBuYW1lPSJsMDEwNTUiPjwvYT4wMTA1NSAKKzxhIG5hbWU9ImwwMTA2MSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj4wMTA2MTwvYT4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPiA6IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+Cis8YSBuYW1lPSJsMDEwNjIiPjwvYT4wMTA2MiB7Cis8YSBuYW1lPSJsMDEwNjMiPjwvYT4wMTA2MyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZyaWVuZDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPjsKKzxhIG5hbWU9ImwwMTA2NCI+PC9hPjAxMDY0IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+OgorPGEgbmFtZT0ibDAxMDY5Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTAiPjAxMDY5PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTAiPlRpWG1sVGV4dDwvYT4gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIGluaXRWYWx1ZSApIDogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4gKDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+OjpURVhUKQorPGEgbmFtZT0ibDAxMDcwIj48L2E+MDEwNzAgICAgIHsKKzxhIG5hbWU9ImwwMTA3MSI+PC9hPjAxMDcxICAgICAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMiPlNldFZhbHVlPC9hPiggaW5pdFZhbHVlICk7Cis8YSBuYW1lPSJsMDEwNzIiPjwvYT4wMTA3MiAgICAgICAgIGNkYXRhID0gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZhbHNlPC9zcGFuPjsKKzxhIG5hbWU9ImwwMTA3MyI+PC9hPjAxMDczICAgICB9Cis8YSBuYW1lPSJsMDEwNzQiPjwvYT4wMTA3NCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IH48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPigpIHt9Cis8YSBuYW1lPSJsMDEwNzUiPjwvYT4wMTA3NSAKKzxhIG5hbWU9ImwwMTA3NiI+PC9hPjAxMDc2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KKzxhIG5hbWU9ImwwMTA3NyI+PC9hPjAxMDc3IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KKzxhIG5hbWU9ImwwMTA3OCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2EyIj4wMTA3ODwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2EwIj5UaVhtbFRleHQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgaW5pdFZhbHVlICkgOiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiAoPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT46OlRFWFQpCis8YSBuYW1lPSJsMDEwNzkiPjwvYT4wMTA3OSAgICAgeworPGEgbmFtZT0ibDAxMDgwIj48L2E+MDEwODAgICAgICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMyI+U2V0VmFsdWU8L2E+KCBpbml0VmFsdWUgKTsKKzxhIG5hbWU9ImwwMTA4MSI+PC9hPjAxMDgxICAgICAgICAgY2RhdGEgPSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ZmFsc2U8L3NwYW4+OworPGEgbmFtZT0ibDAxMDgyIj48L2E+MDEwODIgICAgIH0KKzxhIG5hbWU9ImwwMTA4MyI+PC9hPjAxMDgzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Cis8YSBuYW1lPSJsMDEwODQiPjwvYT4wMTA4NCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Cis8YSBuYW1lPSJsMDEwODUiPjwvYT4wMTA4NSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTAiPlRpWG1sVGV4dDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiPlRpWG1sVGV4dDwvYT4mYW1wOyBjb3B5ICkgOiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiggPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT46OlRFWFQgKSAgIHsgY29weS48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNiMSI+Q29weVRvPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+ICk7IH0KKzxhIG5hbWU9ImwwMTA4NiI+PC9hPjAxMDg2ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IG9wZXJhdG9yPSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPiZhbXA7IGJhc2UgKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBiYXNlLjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2IxIj5Db3B5VG88L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gKTsgfQorPGEgbmFtZT0ibDAxMDg3Ij48L2E+MDEwODcgCis8YSBuYW1lPSJsMDEwODkiPjwvYT4wMTA4OSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTUiPlByaW50PC9hPiggRklMRSogY2ZpbGUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBkZXB0aCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDEwOTAiPjwvYT4wMTA5MCAKKzxhIG5hbWU9ImwwMTA5MiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E2Ij4wMTA5MjwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTYiPkNEQVRBPC9hPigpICAgICAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBjZGF0YTsgfQorPGEgbmFtZT0ibDAxMDk0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTciPjAxMDk0PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhNyI+U2V0Q0RBVEE8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IF9jZGF0YSApICAgIHsgY2RhdGEgPSBfY2RhdGE7IH0KKzxhIG5hbWU9ImwwMTA5NSI+PC9hPjAxMDk1IAorPGEgbmFtZT0ibDAxMDk2Ij48L2E+MDEwOTYgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIFBhcnNlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHAsIFRpWG1sUGFyc2luZ0RhdGEqIGRhdGEsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKKzxhIG5hbWU9ImwwMTA5NyI+PC9hPjAxMDk3IAorPGEgbmFtZT0ibDAxMDk4Ij48L2E+MDEwOTggPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByb3RlY3RlZDwvc3Bhbj4gOgorPGEgbmFtZT0ibDAxMTAwIj48L2E+MDExMDAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYjAiPkNsb25lPC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDExMDEiPjwvYT4wMTEwMSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBDb3B5VG8oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj5UaVhtbFRleHQ8L2E+KiB0YXJnZXQgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAxMTAyIj48L2E+MDExMDIgCis8YSBuYW1lPSJsMDExMDMiPjwvYT4wMTEwMyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gU3RyZWFtT3V0ICggVElYTUxfT1NUUkVBTSAqIG91dCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDExMDQiPjwvYT4wMTEwNCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBCbGFuaygpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyByZXR1cm5zIHRydWUgaWYgYWxsIHdoaXRlIHNwYWNlIGFuZCBuZXcgbGluZXM8L3NwYW4+Cis8YSBuYW1lPSJsMDExMDUiPjwvYT4wMTEwNSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFtpbnRlcm5hbCB1c2VdPC9zcGFuPgorPGEgbmFtZT0ibDAxMTA2Ij48L2E+MDExMDYgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgorPGEgbmFtZT0ibDAxMTA3Ij48L2E+MDExMDcgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPiAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gU3RyZWFtSW4oIFRJWE1MX0lTVFJFQU0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICk7Cis8YSBuYW1lPSJsMDExMDgiPjwvYT4wMTEwOCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAxMTA5Ij48L2E+MDExMDkgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAxMTEwIj48L2E+MDExMTAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByaXZhdGU8L3NwYW4+OgorPGEgbmFtZT0ibDAxMTExIj48L2E+MDExMTEgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gY2RhdGE7ICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIHRydWUgaWYgdGhpcyBzaG91bGQgYmUgaW5wdXQgYW5kIG91dHB1dCBhcyBhIENEQVRBIHN0eWxlIHRleHQgZWxlbWVudDwvc3Bhbj4KKzxhIG5hbWU9ImwwMTExMiI+PC9hPjAxMTEyIH07Cis8YSBuYW1lPSJsMDExMTMiPjwvYT4wMTExMyAKKzxhIG5hbWU9ImwwMTExNCI+PC9hPjAxMTE0IAorPGEgbmFtZT0ibDAxMTI4Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj4wMTEyODwvYT4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiPlRpWG1sRGVjbGFyYXRpb248L2E+IDogPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4KKzxhIG5hbWU9ImwwMTEyOSI+PC9hPjAxMTI5IHsKKzxhIG5hbWU9ImwwMTEzMCI+PC9hPjAxMTMwIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+OgorPGEgbmFtZT0ibDAxMTMyIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2EwIj4wMTEzMjwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4oKSAgIDogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+OjpERUNMQVJBVElPTiApIHt9Cis8YSBuYW1lPSJsMDExMzMiPjwvYT4wMTEzMyAKKzxhIG5hbWU9ImwwMTEzNCI+PC9hPjAxMTM0IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgorPGEgbmFtZT0ibDAxMTM1Ij48L2E+MDExMzUgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAxMTM2Ij48L2E+MDExMzYgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4oICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92ZXJzaW9uLAorPGEgbmFtZT0ibDAxMTM3Ij48L2E+MDExMzcgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF9lbmNvZGluZywKKzxhIG5hbWU9ImwwMTEzOCI+PC9hPjAxMTM4ICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfc3RhbmRhbG9uZSApOworPGEgbmFtZT0ibDAxMTM5Ij48L2E+MDExMzkgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAxMTQwIj48L2E+MDExNDAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAxMTQyIj48L2E+MDExNDIgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4oICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBfdmVyc2lvbiwKKzxhIG5hbWU9ImwwMTE0MyI+PC9hPjAxMTQzICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogX2VuY29kaW5nLAorPGEgbmFtZT0ibDAxMTQ0Ij48L2E+MDExNDQgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBfc3RhbmRhbG9uZSApOworPGEgbmFtZT0ibDAxMTQ1Ij48L2E+MDExNDUgCis8YSBuYW1lPSJsMDExNDYiPjwvYT4wMTE0NiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2EwIj5UaVhtbERlY2xhcmF0aW9uPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiPlRpWG1sRGVjbGFyYXRpb248L2E+JmFtcDsgY29weSApOworPGEgbmFtZT0ibDAxMTQ3Ij48L2E+MDExNDcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gb3BlcmF0b3I9KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4mYW1wOyBjb3B5ICk7Cis8YSBuYW1lPSJsMDExNDgiPjwvYT4wMTE0OCAKKzxhIG5hbWU9ImwwMTE0OSI+PC9hPjAxMTQ5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gfjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4oKSB7fQorPGEgbmFtZT0ibDAxMTUwIj48L2E+MDExNTAgCis8YSBuYW1lPSJsMDExNTIiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTYiPjAxMTUyPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICo8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTYiPlZlcnNpb248L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHZlcnNpb24uY19zdHIgKCk7IH0KKzxhIG5hbWU9ImwwMTE1NCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhNyI+MDExNTQ8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhNyI+RW5jb2Rpbmc8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gZW5jb2RpbmcuY19zdHIgKCk7IH0KKzxhIG5hbWU9ImwwMTE1NiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhOCI+MDExNTY8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhOCI+U3RhbmRhbG9uZTwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gc3RhbmRhbG9uZS5jX3N0ciAoKTsgfQorPGEgbmFtZT0ibDAxMTU3Ij48L2E+MDExNTcgCis8YSBuYW1lPSJsMDExNTkiPjwvYT4wMTE1OSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTkiPkNsb25lPC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDExNjEiPjwvYT4wMTE2MSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2ExMCI+UHJpbnQ8L2E+KCBGSUxFKiBjZmlsZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGRlcHRoICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMTE2MiI+PC9hPjAxMTYyIAorPGEgbmFtZT0ibDAxMTYzIj48L2E+MDExNjMgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIFBhcnNlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHAsIFRpWG1sUGFyc2luZ0RhdGEqIGRhdGEsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKKzxhIG5hbWU9ImwwMTE2NCI+PC9hPjAxMTY0IAorPGEgbmFtZT0ibDAxMTY1Ij48L2E+MDExNjUgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByb3RlY3RlZDwvc3Bhbj46Cis8YSBuYW1lPSJsMDExNjYiPjwvYT4wMTE2NiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBDb3B5VG8oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCI+VGlYbWxEZWNsYXJhdGlvbjwvYT4qIHRhcmdldCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDExNjciPjwvYT4wMTE2NyAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIHVzZWQgdG8gYmUgcHVibGljPC9zcGFuPgorPGEgbmFtZT0ibDAxMTY4Ij48L2E+MDExNjggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgorPGEgbmFtZT0ibDAxMTY5Ij48L2E+MDExNjkgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPiAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gU3RyZWFtSW4oIFRJWE1MX0lTVFJFQU0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICk7Cis8YSBuYW1lPSJsMDExNzAiPjwvYT4wMTE3MCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAxMTcxIj48L2E+MDExNzEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPiAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTdHJlYW1PdXQgKCBUSVhNTF9PU1RSRUFNICogb3V0KSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAxMTcyIj48L2E+MDExNzIgCis8YSBuYW1lPSJsMDExNzMiPjwvYT4wMTE3MyA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJpdmF0ZTwvc3Bhbj46Cis8YSBuYW1lPSJsMDExNzQiPjwvYT4wMTE3NCAKKzxhIG5hbWU9ImwwMTE3NSI+PC9hPjAxMTc1ICAgICBUSVhNTF9TVFJJTkcgdmVyc2lvbjsKKzxhIG5hbWU9ImwwMTE3NiI+PC9hPjAxMTc2ICAgICBUSVhNTF9TVFJJTkcgZW5jb2Rpbmc7Cis8YSBuYW1lPSJsMDExNzciPjwvYT4wMTE3NyAgICAgVElYTUxfU1RSSU5HIHN0YW5kYWxvbmU7Cis8YSBuYW1lPSJsMDExNzgiPjwvYT4wMTE3OCB9OworPGEgbmFtZT0ibDAxMTc5Ij48L2E+MDExNzkgCis8YSBuYW1lPSJsMDExODAiPjwvYT4wMTE4MCAKKzxhIG5hbWU9ImwwMTE4OCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj4wMTE4ODwvYT4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPiA6IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+Cis8YSBuYW1lPSJsMDExODkiPjwvYT4wMTE4OSB7Cis8YSBuYW1lPSJsMDExOTAiPjwvYT4wMTE5MCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPjoKKzxhIG5hbWU9ImwwMTE5MSI+PC9hPjAxMTkxICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPigpIDogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4oIFRpWG1sTm9kZTo6VU5LTk9XTiApICAgIHt9Cis8YSBuYW1lPSJsMDExOTIiPjwvYT4wMTE5MiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IH48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPigpIHt9Cis8YSBuYW1lPSJsMDExOTMiPjwvYT4wMTE5MyAKKzxhIG5hbWU9ImwwMTE5NCI+PC9hPjAxMTk0ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPiZhbXA7IGNvcHkgKSA6IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KCBUaVhtbE5vZGU6OlVOS05PV04gKSAgICAgIHsgY29weS48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCNiMCI+Q29weVRvPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+ICk7IH0KKzxhIG5hbWU9ImwwMTE5NSI+PC9hPjAxMTk1ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IG9wZXJhdG9yPSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPiZhbXA7IGNvcHkgKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBjb3B5LjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2IwIj5Db3B5VG88L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gKTsgfQorPGEgbmFtZT0ibDAxMTk2Ij48L2E+MDExOTYgCis8YSBuYW1lPSJsMDExOTgiPjwvYT4wMTE5OCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCNhNCI+Q2xvbmU8L2E+KCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMTIwMCI+PC9hPjAxMjAwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCNhNSI+UHJpbnQ8L2E+KCBGSUxFKiBjZmlsZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGRlcHRoICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMTIwMSI+PC9hPjAxMjAxIAorPGEgbmFtZT0ibDAxMjAyIj48L2E+MDEyMDIgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIFBhcnNlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHAsIFRpWG1sUGFyc2luZ0RhdGEqIGRhdGEsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKKzxhIG5hbWU9ImwwMTIwMyI+PC9hPjAxMjAzIAorPGEgbmFtZT0ibDAxMjA0Ij48L2E+MDEyMDQgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByb3RlY3RlZDwvc3Bhbj46Cis8YSBuYW1lPSJsMDEyMDUiPjwvYT4wMTIwNSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBDb3B5VG8oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIj5UaVhtbFVua25vd248L2E+KiB0YXJnZXQgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAxMjA2Ij48L2E+MDEyMDYgCis8YSBuYW1lPSJsMDEyMDciPjwvYT4wMTIwNyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Cis8YSBuYW1lPSJsMDEyMDgiPjwvYT4wMTIwOCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTdHJlYW1JbiggVElYTUxfSVNUUkVBTSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKTsKKzxhIG5hbWU9ImwwMTIwOSI+PC9hPjAxMjA5IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Cis8YSBuYW1lPSJsMDEyMTAiPjwvYT4wMTIxMCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IFN0cmVhbU91dCAoIFRJWE1MX09TVFJFQU0gKiBvdXQgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAxMjExIj48L2E+MDEyMTEgCis8YSBuYW1lPSJsMDEyMTIiPjwvYT4wMTIxMiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJpdmF0ZTwvc3Bhbj46Cis8YSBuYW1lPSJsMDEyMTMiPjwvYT4wMTIxMyAKKzxhIG5hbWU9ImwwMTIxNCI+PC9hPjAxMjE0IH07Cis8YSBuYW1lPSJsMDEyMTUiPjwvYT4wMTIxNSAKKzxhIG5hbWU9ImwwMTIxNiI+PC9hPjAxMjE2IAorPGEgbmFtZT0ibDAxMjIxIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj4wMTIyMTwvYT4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+IDogPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiPlRpWG1sTm9kZTwvYT4KKzxhIG5hbWU9ImwwMTIyMiI+PC9hPjAxMjIyIHsKKzxhIG5hbWU9ImwwMTIyMyI+PC9hPjAxMjIzIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+OgorPGEgbmFtZT0ibDAxMjI1Ij48L2E+MDEyMjUgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMCI+VGlYbWxEb2N1bWVudDwvYT4oKTsKKzxhIG5hbWU9ImwwMTIyNyI+PC9hPjAxMjI3ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTAiPlRpWG1sRG9jdW1lbnQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBkb2N1bWVudE5hbWUgKTsKKzxhIG5hbWU9ImwwMTIyOCI+PC9hPjAxMjI4IAorPGEgbmFtZT0ibDAxMjI5Ij48L2E+MDEyMjkgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgorPGEgbmFtZT0ibDAxMjMwIj48L2E+MDEyMzAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAxMjMxIj48L2E+MDEyMzEgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMCI+VGlYbWxEb2N1bWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBkb2N1bWVudE5hbWUgKTsKKzxhIG5hbWU9ImwwMTIzMiI+PC9hPjAxMjMyIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Cis8YSBuYW1lPSJsMDEyMzMiPjwvYT4wMTIzMyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Cis8YSBuYW1lPSJsMDEyMzQiPjwvYT4wMTIzNCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EwIj5UaVhtbERvY3VtZW50PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiPlRpWG1sRG9jdW1lbnQ8L2E+JmFtcDsgY29weSApOworPGEgbmFtZT0ibDAxMjM1Ij48L2E+MDEyMzUgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gb3BlcmF0b3I9KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT4mYW1wOyBjb3B5ICk7Cis8YSBuYW1lPSJsMDEyMzYiPjwvYT4wMTIzNiAKKzxhIG5hbWU9ImwwMTIzNyI+PC9hPjAxMjM3ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gfjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT4oKSB7fQorPGEgbmFtZT0ibDAxMjM4Ij48L2E+MDEyMzggCis8YSBuYW1lPSJsMDEyNDMiPjwvYT4wMTI0MyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTYiPkxvYWRGaWxlPC9hPiggVGlYbWxFbmNvZGluZyBlbmNvZGluZyA9IFRJWE1MX0RFRkFVTFRfRU5DT0RJTkcgKTsKKzxhIG5hbWU9ImwwMTI0NSI+PC9hPjAxMjQ1ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNyI+U2F2ZUZpbGU8L2E+KCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMTI0NyI+PC9hPjAxMjQ3ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNiI+TG9hZEZpbGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBmaWxlbmFtZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyA9IFRJWE1MX0RFRkFVTFRfRU5DT0RJTkcgKTsKKzxhIG5hbWU9ImwwMTI0OSI+PC9hPjAxMjQ5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNyI+U2F2ZUZpbGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBmaWxlbmFtZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDEyNTAiPjwvYT4wMTI1MCAKKzxhIG5hbWU9ImwwMTI1MSI+PC9hPjAxMjUxIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KKzxhIG5hbWU9ImwwMTI1MiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTAiPjAxMjUyPC9hPiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E2Ij5Mb2FkRmlsZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBmaWxlbmFtZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyA9IFRJWE1MX0RFRkFVTFRfRU5DT0RJTkcgKSAgICAgICAgICAgCis8YSBuYW1lPSJsMDEyNTMiPjwvYT4wMTI1MyAgICAgeworPGEgbmFtZT0ibDAxMjU0Ij48L2E+MDEyNTQgICAgICAgICBTdHJpbmdUb0J1ZmZlciBmKCBmaWxlbmFtZSApOworPGEgbmFtZT0ibDAxMjU1Ij48L2E+MDEyNTUgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCBmLmJ1ZmZlciAmYW1wOyZhbXA7IExvYWRGaWxlKCBmLmJ1ZmZlciwgZW5jb2RpbmcgKSk7Cis8YSBuYW1lPSJsMDEyNTYiPjwvYT4wMTI1NiAgICAgfQorPGEgbmFtZT0ibDAxMjU3Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExMSI+MDEyNTc8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNyI+U2F2ZUZpbGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgZmlsZW5hbWUgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+ICAgICAgCis8YSBuYW1lPSJsMDEyNTgiPjwvYT4wMTI1OCAgICAgeworPGEgbmFtZT0ibDAxMjU5Ij48L2E+MDEyNTkgICAgICAgICBTdHJpbmdUb0J1ZmZlciBmKCBmaWxlbmFtZSApOworPGEgbmFtZT0ibDAxMjYwIj48L2E+MDEyNjAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCBmLmJ1ZmZlciAmYW1wOyZhbXA7IFNhdmVGaWxlKCBmLmJ1ZmZlciApKTsKKzxhIG5hbWU9ImwwMTI2MSI+PC9hPjAxMjYxICAgICB9Cis8YSBuYW1lPSJsMDEyNjIiPjwvYT4wMTI2MiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAxMjYzIj48L2E+MDEyNjMgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAxMjY4Ij48L2E+MDEyNjggICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTIiPlBhcnNlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBwLCBUaVhtbFBhcnNpbmdEYXRhKiBkYXRhID0gMCwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyA9IFRJWE1MX0RFRkFVTFRfRU5DT0RJTkcgKTsKKzxhIG5hbWU9ImwwMTI2OSI+PC9hPjAxMjY5IAorPGEgbmFtZT0ibDAxMjc0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExMyI+MDEyNzQ8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIj5UaVhtbEVsZW1lbnQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTEzIj5Sb290RWxlbWVudDwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTAiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPigpOyB9Cis8YSBuYW1lPSJsMDEyNzUiPjwvYT4wMTI3NSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPlRpWG1sRWxlbWVudDwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTMiPlJvb3RFbGVtZW50PC9hPigpICAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTAiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPigpOyB9Cis8YSBuYW1lPSJsMDEyNzYiPjwvYT4wMTI3NiAKKzxhIG5hbWU9ImwwMTI4MiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTUiPjAxMjgyPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE1Ij5FcnJvcjwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGVycm9yOyB9Cis8YSBuYW1lPSJsMDEyODMiPjwvYT4wMTI4MyAKKzxhIG5hbWU9ImwwMTI4NSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTYiPjAxMjg1PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExNiI+RXJyb3JEZXNjPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGVycm9yRGVzYy5jX3N0ciAoKTsgfQorPGEgbmFtZT0ibDAxMjg2Ij48L2E+MDEyODYgCis8YSBuYW1lPSJsMDEyOTAiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE3Ij4wMTI5MDwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTE3Ij5FcnJvcklkPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgIGNvbnN0ICAgICAgICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGVycm9ySWQ7IH0KKzxhIG5hbWU9ImwwMTI5MSI+PC9hPjAxMjkxIAorPGEgbmFtZT0ibDAxMjk5Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExOCI+MDEyOTk8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExOCI+RXJyb3JSb3c8L2E+KCkgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGVycm9yTG9jYXRpb24ucm93KzE7IH0KKzxhIG5hbWU9ImwwMTMwMCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTkiPjAxMzAwPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTkiPkVycm9yQ29sPC9hPigpICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBlcnJvckxvY2F0aW9uLmNvbCsxOyB9IAorPGEgbmFtZT0ibDAxMzAxIj48L2E+MDEzMDEgCis8YSBuYW1lPSJsMDEzMjYiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTIwIj4wMTMyNjwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMCI+U2V0VGFiU2l6ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBfdGFic2l6ZSApICAgICB7IHRhYnNpemUgPSBfdGFic2l6ZTsgfQorPGEgbmFtZT0ibDAxMzI3Ij48L2E+MDEzMjcgCis8YSBuYW1lPSJsMDEzMjgiPjwvYT4wMTMyOCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IFRhYlNpemUoKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHRhYnNpemU7IH0KKzxhIG5hbWU9ImwwMTMyOSI+PC9hPjAxMzI5IAorPGEgbmFtZT0ibDAxMzMzIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMiI+MDEzMzM8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMjIiPkNsZWFyRXJyb3I8L2E+KCkgICAgICAgICAgICAgICAgICAgICAgIHsgICBlcnJvciA9IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5mYWxzZTwvc3Bhbj47IAorPGEgbmFtZT0ibDAxMzM0Ij48L2E+MDEzMzQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JJZCA9IDA7IAorPGEgbmFtZT0ibDAxMzM1Ij48L2E+MDEzMzUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JEZXNjID0gPHNwYW4gY2xhc3M9InN0cmluZ2xpdGVyYWwiPiIiPC9zcGFuPjsgCis8YSBuYW1lPSJsMDEzMzYiPjwvYT4wMTMzNiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvckxvY2F0aW9uLnJvdyA9IGVycm9yTG9jYXRpb24uY29sID0gMDsgCis8YSBuYW1lPSJsMDEzMzciPjwvYT4wMTMzNyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly9lcnJvckxvY2F0aW9uLmxhc3QgPSAwOyA8L3NwYW4+Cis8YSBuYW1lPSJsMDEzMzgiPjwvYT4wMTMzOCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KKzxhIG5hbWU9ImwwMTMzOSI+PC9hPjAxMzM5IAorPGEgbmFtZT0ibDAxMzQxIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMyI+MDEzNDE8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMjMiPlByaW50PC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+eyA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTIzIj5QcmludDwvYT4oIHN0ZG91dCwgMCApOyB9Cis8YSBuYW1lPSJsMDEzNDIiPjwvYT4wMTM0MiAKKzxhIG5hbWU9ImwwMTM0NCI+PC9hPjAxMzQ0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTIzIj5QcmludDwvYT4oIEZJTEUqIGNmaWxlLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gZGVwdGggPSAwICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMTM0NSI+PC9hPjAxMzQ1ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gW2ludGVybmFsIHVzZV08L3NwYW4+Cis8YSBuYW1lPSJsMDEzNDYiPjwvYT4wMTM0NiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTZXRFcnJvciggPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGVyciwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBlcnJvckxvY2F0aW9uLCBUaVhtbFBhcnNpbmdEYXRhKiBwcmV2RGF0YSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApOworPGEgbmFtZT0ibDAxMzQ3Ij48L2E+MDEzNDcgCis8YSBuYW1lPSJsMDEzNDgiPjwvYT4wMTM0OCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJvdGVjdGVkPC9zcGFuPiA6Cis8YSBuYW1lPSJsMDEzNDkiPjwvYT4wMTM0OSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gU3RyZWFtT3V0ICggVElYTUxfT1NUUkVBTSAqIG91dCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMTM1MCI+PC9hPjAxMzUwICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gW2ludGVybmFsIHVzZV08L3NwYW4+Cis8YSBuYW1lPSJsMDEzNTEiPjwvYT4wMTM1MSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYjEiPkNsb25lPC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDEzNTIiPjwvYT4wMTM1MiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Cis8YSBuYW1lPSJsMDEzNTMiPjwvYT4wMTM1MyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTdHJlYW1JbiggVElYTUxfSVNUUkVBTSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKTsKKzxhIG5hbWU9ImwwMTM1NCI+PC9hPjAxMzU0IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Cis8YSBuYW1lPSJsMDEzNTUiPjwvYT4wMTM1NSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Cis8YSBuYW1lPSJsMDEzNTYiPjwvYT4wMTM1NiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJpdmF0ZTwvc3Bhbj46Cis8YSBuYW1lPSJsMDEzNTciPjwvYT4wMTM1NyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBDb3B5VG8oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCI+VGlYbWxEb2N1bWVudDwvYT4qIHRhcmdldCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDEzNTgiPjwvYT4wMTM1OCAKKzxhIG5hbWU9ImwwMTM1OSI+PC9hPjAxMzU5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IGVycm9yOworPGEgbmFtZT0ibDAxMzYwIj48L2E+MDEzNjAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiAgZXJyb3JJZDsKKzxhIG5hbWU9ImwwMTM2MSI+PC9hPjAxMzYxICAgICBUSVhNTF9TVFJJTkcgZXJyb3JEZXNjOworPGEgbmFtZT0ibDAxMzYyIj48L2E+MDEzNjIgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiB0YWJzaXplOworPGEgbmFtZT0ibDAxMzYzIj48L2E+MDEzNjMgICAgIFRpWG1sQ3Vyc29yIGVycm9yTG9jYXRpb247Cis8YSBuYW1lPSJsMDEzNjQiPjwvYT4wMTM2NCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiB1c2VNaWNyb3NvZnRCT007ICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyB0aGUgVVRGLTggQk9NIHdlcmUgZm91bmQgd2hlbiByZWFkLiBOb3RlIHRoaXMsIGFuZCB0cnkgdG8gd3JpdGUuPC9zcGFuPgorPGEgbmFtZT0ibDAxMzY1Ij48L2E+MDEzNjUgfTsKKzxhIG5hbWU9ImwwMTM2NiI+PC9hPjAxMzY2IAorPGEgbmFtZT0ibDAxMzY3Ij48L2E+MDEzNjcgCis8YSBuYW1lPSJsMDE0NDgiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj4wMTQ0ODwvYT4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4KKzxhIG5hbWU9ImwwMTQ0OSI+PC9hPjAxNDQ5IHsKKzxhIG5hbWU9ImwwMTQ1MCI+PC9hPjAxNDUwIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+OgorPGEgbmFtZT0ibDAxNDUyIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMCI+MDE0NTI8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2EwIj5UaVhtbEhhbmRsZTwvYT4oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBfbm9kZSApICAgICAgICAgICAgICAgICB7IHRoaXMtJmd0O25vZGUgPSBfbm9kZTsgfQorPGEgbmFtZT0ibDAxNDU0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMSI+MDE0NTQ8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2EwIj5UaVhtbEhhbmRsZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+JmFtcDsgcmVmICkgICAgICAgICAgIHsgdGhpcy0mZ3Q7bm9kZSA9IHJlZi48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI3IwIj5ub2RlPC9hPjsgfQorPGEgbmFtZT0ibDAxNDU1Ij48L2E+MDE0NTUgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiBvcGVyYXRvcj0oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+JmFtcDsgcmVmICkgeyB0aGlzLSZndDtub2RlID0gcmVmLjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjcjAiPm5vZGU8L2E+OyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKjxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPjsgfQorPGEgbmFtZT0ibDAxNDU2Ij48L2E+MDE0NTYgCis8YSBuYW1lPSJsMDE0NTgiPjwvYT4wMTQ1OCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTMiPkZpcnN0Q2hpbGQ8L2E+KCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMTQ2MCI+PC9hPjAxNDYwICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMyI+Rmlyc3RDaGlsZDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIHZhbHVlICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMTQ2MiI+PC9hPjAxNDYyICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhNSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKKzxhIG5hbWU9ImwwMTQ2NCI+PC9hPjAxNDY0ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhNSI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiB2YWx1ZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDE0NjUiPjwvYT4wMTQ2NSAKKzxhIG5hbWU9ImwwMTQ2OSI+PC9hPjAxNDY5ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhNyI+Q2hpbGQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHZhbHVlLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gaW5kZXggKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OworPGEgbmFtZT0ibDAxNDczIj48L2E+MDE0NzMgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPlRpWG1sSGFuZGxlPC9hPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E3Ij5DaGlsZDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBpbmRleCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDE0NzgiPjwvYT4wMTQ3OCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTkiPkNoaWxkRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogdmFsdWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBpbmRleCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDE0ODMiPjwvYT4wMTQ4MyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTkiPkNoaWxkRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBpbmRleCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Cis8YSBuYW1lPSJsMDE0ODQiPjwvYT4wMTQ4NCAKKzxhIG5hbWU9ImwwMTQ4NSI+PC9hPjAxNDg1IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KKzxhIG5hbWU9ImwwMTQ4NiI+PC9hPjAxNDg2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTMiPkZpcnN0Q2hpbGQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTMiPkZpcnN0Q2hpbGQ8L2E+KCBfdmFsdWUuY19zdHIoKSApOyB9Cis8YSBuYW1lPSJsMDE0ODciPjwvYT4wMTQ4NyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTUiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSApPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTUiPkZpcnN0Q2hpbGRFbGVtZW50PC9hPiggX3ZhbHVlLmNfc3RyKCkgKTsgfQorPGEgbmFtZT0ibDAxNDg4Ij48L2E+MDE0ODggCis8YSBuYW1lPSJsMDE0ODkiPjwvYT4wMTQ4OSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCI+VGlYbWxIYW5kbGU8L2E+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTciPkNoaWxkPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGluZGV4ICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTciPkNoaWxkPC9hPiggX3ZhbHVlLmNfc3RyKCksIGluZGV4ICk7IH0KKzxhIG5hbWU9ImwwMTQ5MCI+PC9hPjAxNDkwICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIj5UaVhtbEhhbmRsZTwvYT4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhOSI+Q2hpbGRFbGVtZW50PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGluZGV4ICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhOSI+Q2hpbGRFbGVtZW50PC9hPiggX3ZhbHVlLmNfc3RyKCksIGluZGV4ICk7IH0KKzxhIG5hbWU9ImwwMTQ5MSI+PC9hPjAxNDkxIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Cis8YSBuYW1lPSJsMDE0OTIiPjwvYT4wMTQ5MiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Cis8YSBuYW1lPSJsMDE0OTQiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExNSI+MDE0OTQ8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMTUiPk5vZGU8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IG5vZGU7IH0gCis8YSBuYW1lPSJsMDE0OTYiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExNiI+MDE0OTY8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMTYiPkVsZW1lbnQ8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICggKCBub2RlICZhbXA7JmFtcDsgbm9kZS0mZ3Q7PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYxIj5Ub0VsZW1lbnQ8L2E+KCkgKSA/IG5vZGUtJmd0OzxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2MSI+VG9FbGVtZW50PC9hPigpIDogMCApOyB9Cis8YSBuYW1lPSJsMDE0OTgiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExNyI+MDE0OTg8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCI+VGlYbWxUZXh0PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMTciPlRleHQ8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICggKCBub2RlICZhbXA7JmFtcDsgbm9kZS0mZ3Q7PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY0Ij5Ub1RleHQ8L2E+KCkgKSA/IG5vZGUtJmd0OzxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NCI+VG9UZXh0PC9hPigpIDogMCApOyB9Cis8YSBuYW1lPSJsMDE1MDAiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExOCI+MDE1MDA8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+VGlYbWxVbmtub3duPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMTgiPlVua25vd248L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCAoIG5vZGUgJmFtcDsmYW1wOyBub2RlLSZndDs8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjMiPlRvVW5rbm93bjwvYT4oKSApID8gbm9kZS0mZ3Q7PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTYzIj5Ub1Vua25vd248L2E+KCkgOiAwICk7IH0KKzxhIG5hbWU9ImwwMTUwMSI+PC9hPjAxNTAxIAorPGEgbmFtZT0ibDAxNTAyIj48L2E+MDE1MDIgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByaXZhdGU8L3NwYW4+OgorPGEgbmFtZT0ibDAxNTAzIj48L2E+MDE1MDMgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj5UaVhtbE5vZGU8L2E+KiBub2RlOworPGEgbmFtZT0ibDAxNTA0Ij48L2E+MDE1MDQgfTsKKzxhIG5hbWU9ImwwMTUwNSI+PC9hPjAxNTA1IAorPGEgbmFtZT0ibDAxNTA2Ij48L2E+MDE1MDYgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2lmZGVmIF9NU0NfVkVSPC9zcGFuPgorPGEgbmFtZT0ibDAxNTA3Ij48L2E+MDE1MDcgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNwcmFnbWEgd2FybmluZyggcG9wICk8L3NwYW4+Cis8YSBuYW1lPSJsMDE1MDgiPjwvYT4wMTUwOCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAxNTA5Ij48L2E+MDE1MDkgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPGEgbmFtZT0ibDAxNTEwIj48L2E+MDE1MTAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2VuZGlmPC9zcGFuPgorPGEgbmFtZT0ibDAxNTExIj48L2E+MDE1MTEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgorPC9wcmU+PC9kaXY+PGhyIHNpemU9IjEiPjxhZGRyZXNzIHN0eWxlPSJhbGlnbjogcmlnaHQ7Ij48c21hbGw+R2VuZXJhdGVkIG9uIFNhdCBPY3QgOCAxNDoxNTozMCAyMDA1IGZvciBUaW55WG1sIGJ5Jm5ic3A7Cis8YSBocmVmPSJodHRwOi8vd3d3LmRveHlnZW4ub3JnL2luZGV4Lmh0bWwiPgorPGltZyBzcmM9ImRveHlnZW4ucG5nIiBhbHQ9ImRveHlnZW4iIGFsaWduPSJtaWRkbGUiIGJvcmRlcj0iMCI+PC9hPiAxLjQuNCA8L3NtYWxsPjwvYWRkcmVzcz4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvdGlueXhtbF84aF9zb3VyY2UuaHRtbCBiL2RvY3MvdGlueXhtbF84aF9zb3VyY2UuaHRtbApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTY2ZTM5Ni4uMDAwMDAwMAotLS0gYS9kb2NzL3Rpbnl4bWxfOGhfc291cmNlLmh0bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxMjA2ICswLDAgQEAKLTwhRE9DVFlQRSBodG1sIFBVQkxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj4KLTxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KLTxoZWFkPgotPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L3hodG1sO2NoYXJzZXQ9VVRGLTgiLz4KLTx0aXRsZT5UaW55WG1sOiB0aW55eG1sLmggU291cmNlIEZpbGU8L3RpdGxlPgotPGxpbmsgaHJlZj0idGFicy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Ci08L2hlYWQ+Ci08Ym9keT4KLTwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS42LjIgLS0+Ci08ZGl2IGNsYXNzPSJuYXZpZ2F0aW9uIiBpZD0idG9wIj4KLSAgPGRpdiBjbGFzcz0idGFicyI+Ci0gICAgPHVsPgotICAgICAgPGxpPjxhIGhyZWY9ImluZGV4Lmh0bWwiPjxzcGFuPk1haW4mbmJzcDtQYWdlPC9zcGFuPjwvYT48L2xpPgotICAgICAgPGxpPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaSBjbGFzcz0iY3VycmVudCI+PGEgaHJlZj0iZmlsZXMuaHRtbCI+PHNwYW4+RmlsZXM8L3NwYW4+PC9hPjwvbGk+Ci0gICAgPC91bD4KLSAgPC9kaXY+Ci0gIDxkaXYgY2xhc3M9InRhYnMiPgotICAgIDx1bD4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlJm5ic3A7TGlzdDwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLTxoMT50aW55eG1sLmg8L2gxPjxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+PGEgbmFtZT0ibDAwMDAxIj48L2E+MDAwMDEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8qPC9zcGFuPgotPGEgbmFtZT0ibDAwMDAyIj48L2E+MDAwMDIgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPnd3dy5zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvdGlueXhtbDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAwMyI+PC9hPjAwMDAzIDxzcGFuIGNsYXNzPSJjb21tZW50Ij5PcmlnaW5hbCBjb2RlIGJ5IExlZSBUaG9tYXNvbiAod3d3LmdyaW5uaW5nbGl6YXJkLmNvbSk8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMDQiPjwvYT4wMDAwNCA8c3BhbiBjbGFzcz0iY29tbWVudCI+PC9zcGFuPgotPGEgbmFtZT0ibDAwMDA1Ij48L2E+MDAwMDUgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPlRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgJiMzOTthcy1pcyYjMzk7LCB3aXRob3V0IGFueSBleHByZXNzIG9yIGltcGxpZWQ8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMDYiPjwvYT4wMDAwNiA8c3BhbiBjbGFzcz0iY29tbWVudCI+d2FycmFudHkuIEluIG5vIGV2ZW50IHdpbGwgdGhlIGF1dGhvcnMgYmUgaGVsZCBsaWFibGUgZm9yIGFueTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAwNyI+PC9hPjAwMDA3IDxzcGFuIGNsYXNzPSJjb21tZW50Ij5kYW1hZ2VzIGFyaXNpbmcgZnJvbSB0aGUgdXNlIG9mIHRoaXMgc29mdHdhcmUuPC9zcGFuPgotPGEgbmFtZT0ibDAwMDA4Ij48L2E+MDAwMDggPHNwYW4gY2xhc3M9ImNvbW1lbnQiPjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAwOSI+PC9hPjAwMDA5IDxzcGFuIGNsYXNzPSJjb21tZW50Ij5QZXJtaXNzaW9uIGlzIGdyYW50ZWQgdG8gYW55b25lIHRvIHVzZSB0aGlzIHNvZnR3YXJlIGZvciBhbnk8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMTAiPjwvYT4wMDAxMCA8c3BhbiBjbGFzcz0iY29tbWVudCI+cHVycG9zZSwgaW5jbHVkaW5nIGNvbW1lcmNpYWwgYXBwbGljYXRpb25zLCBhbmQgdG8gYWx0ZXIgaXQgYW5kPC9zcGFuPgotPGEgbmFtZT0ibDAwMDExIj48L2E+MDAwMTEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPnJlZGlzdHJpYnV0ZSBpdCBmcmVlbHksIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyByZXN0cmljdGlvbnM6PC9zcGFuPgotPGEgbmFtZT0ibDAwMDEyIj48L2E+MDAwMTIgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAxMyI+PC9hPjAwMDEzIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4xLiBUaGUgb3JpZ2luIG9mIHRoaXMgc29mdHdhcmUgbXVzdCBub3QgYmUgbWlzcmVwcmVzZW50ZWQ7IHlvdSBtdXN0PC9zcGFuPgotPGEgbmFtZT0ibDAwMDE0Ij48L2E+MDAwMTQgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPm5vdCBjbGFpbSB0aGF0IHlvdSB3cm90ZSB0aGUgb3JpZ2luYWwgc29mdHdhcmUuIElmIHlvdSB1c2UgdGhpczwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAxNSI+PC9hPjAwMDE1IDxzcGFuIGNsYXNzPSJjb21tZW50Ij5zb2Z0d2FyZSBpbiBhIHByb2R1Y3QsIGFuIGFja25vd2xlZGdtZW50IGluIHRoZSBwcm9kdWN0IGRvY3VtZW50YXRpb248L3NwYW4+Ci08YSBuYW1lPSJsMDAwMTYiPjwvYT4wMDAxNiA8c3BhbiBjbGFzcz0iY29tbWVudCI+d291bGQgYmUgYXBwcmVjaWF0ZWQgYnV0IGlzIG5vdCByZXF1aXJlZC48L3NwYW4+Ci08YSBuYW1lPSJsMDAwMTciPjwvYT4wMDAxNyA8c3BhbiBjbGFzcz0iY29tbWVudCI+PC9zcGFuPgotPGEgbmFtZT0ibDAwMDE4Ij48L2E+MDAwMTggPHNwYW4gY2xhc3M9ImNvbW1lbnQiPjIuIEFsdGVyZWQgc291cmNlIHZlcnNpb25zIG11c3QgYmUgcGxhaW5seSBtYXJrZWQgYXMgc3VjaCwgYW5kPC9zcGFuPgotPGEgbmFtZT0ibDAwMDE5Ij48L2E+MDAwMTkgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPm11c3Qgbm90IGJlIG1pc3JlcHJlc2VudGVkIGFzIGJlaW5nIHRoZSBvcmlnaW5hbCBzb2Z0d2FyZS48L3NwYW4+Ci08YSBuYW1lPSJsMDAwMjAiPjwvYT4wMDAyMCA8c3BhbiBjbGFzcz0iY29tbWVudCI+PC9zcGFuPgotPGEgbmFtZT0ibDAwMDIxIj48L2E+MDAwMjEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPjMuIFRoaXMgbm90aWNlIG1heSBub3QgYmUgcmVtb3ZlZCBvciBhbHRlcmVkIGZyb20gYW55IHNvdXJjZTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAyMiI+PC9hPjAwMDIyIDxzcGFuIGNsYXNzPSJjb21tZW50Ij5kaXN0cmlidXRpb24uPC9zcGFuPgotPGEgbmFtZT0ibDAwMDIzIj48L2E+MDAwMjMgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiovPC9zcGFuPgotPGEgbmFtZT0ibDAwMDI0Ij48L2E+MDAwMjQgCi08YSBuYW1lPSJsMDAwMjUiPjwvYT4wMDAyNSAKLTxhIG5hbWU9ImwwMDAyNiI+PC9hPjAwMDI2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNpZm5kZWYgVElOWVhNTF9JTkNMVURFRDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAyNyI+PC9hPjAwMDI3IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jZGVmaW5lIFRJTllYTUxfSU5DTFVERUQ8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMjgiPjwvYT4wMDAyOCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDAwMjkiPjwvYT4wMDAyOSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jaWZkZWYgX01TQ19WRVI8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMzAiPjwvYT4wMDAzMCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I3ByYWdtYSB3YXJuaW5nKCBwdXNoICk8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMzEiPjwvYT4wMDAzMSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I3ByYWdtYSB3YXJuaW5nKCBkaXNhYmxlIDogNDUzMCApPC9zcGFuPgotPGEgbmFtZT0ibDAwMDMyIj48L2E+MDAwMzIgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNwcmFnbWEgd2FybmluZyggZGlzYWJsZSA6IDQ3ODYgKTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAzMyI+PC9hPjAwMDMzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMzQiPjwvYT4wMDAzNCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDAwMzUiPjwvYT4wMDAzNSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jaW5jbHVkZSAmbHQ7Y3R5cGUuaCZndDs8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMzYiPjwvYT4wMDAzNiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jaW5jbHVkZSAmbHQ7c3RkaW8uaCZndDs8L3NwYW4+Ci08YSBuYW1lPSJsMDAwMzciPjwvYT4wMDAzNyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jaW5jbHVkZSAmbHQ7c3RkbGliLmgmZ3Q7PC9zcGFuPgotPGEgbmFtZT0ibDAwMDM4Ij48L2E+MDAwMzggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2luY2x1ZGUgJmx0O3N0cmluZy5oJmd0Ozwvc3Bhbj4KLTxhIG5hbWU9ImwwMDAzOSI+PC9hPjAwMDM5IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNpbmNsdWRlICZsdDthc3NlcnQuaCZndDs8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNDAiPjwvYT4wMDA0MCAKLTxhIG5hbWU9ImwwMDA0MSI+PC9hPjAwMDQxIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBIZWxwIG91dCB3aW5kb3dzOjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA0MiI+PC9hPjAwMDQyIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNpZiBkZWZpbmVkKCBfREVCVUcgKSAmYW1wOyZhbXA7ICFkZWZpbmVkKCBERUJVRyApPC9zcGFuPgotPGEgbmFtZT0ibDAwMDQzIj48L2E+MDAwNDMgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNkZWZpbmUgREVCVUc8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNDQiPjwvYT4wMDA0NCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2VuZGlmPC9zcGFuPgotPGEgbmFtZT0ibDAwMDQ1Ij48L2E+MDAwNDUgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAwMDQ2Ij48L2E+MDAwNDYgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNDciPjwvYT4wMDA0NyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpbmNsdWRlICZsdDtzdHJpbmcmZ3Q7PC9zcGFuPgotPGEgbmFtZT0ibDAwMDQ4Ij48L2E+MDAwNDggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpbmNsdWRlICZsdDtpb3N0cmVhbSZndDs8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNDkiPjwvYT4wMDA0OSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2luY2x1ZGUgJmx0O3NzdHJlYW0mZ3Q7PC9zcGFuPgotPGEgbmFtZT0ibDAwMDUwIj48L2E+MDAwNTAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNkZWZpbmUgVElYTUxfU1RSSU5HICAgICAgICBzdGQ6OnN0cmluZzwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA1MSI+PC9hPjAwMDUxIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jZWxzZTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA1MiI+PC9hPjAwMDUyIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2luY2x1ZGUgJnF1b3Q7dGlueXN0ci5oJnF1b3Q7PC9zcGFuPgotPGEgbmFtZT0ibDAwMDUzIj48L2E+MDAwNTMgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNkZWZpbmUgVElYTUxfU1RSSU5HICAgICAgICBUaVhtbFN0cmluZzwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA1NCI+PC9hPjAwMDU0IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNTUiPjwvYT4wMDA1NSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDAwNTYiPjwvYT4wMDA1NiA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gRGVwcmVjYXRlZCBsaWJyYXJ5IGZ1bmN0aW9uIGhlbGwuIENvbXBpbGVycyB3YW50IHRvIHVzZSB0aGU8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNTciPjwvYT4wMDA1NyA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gbmV3IHNhZmUgdmVyc2lvbnMuIFRoaXMgcHJvYmFibHkgZG9lc24mIzM5O3QgZnVsbHkgYWRkcmVzcyB0aGUgcHJvYmxlbSw8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNTgiPjwvYT4wMDA1OCA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gYnV0IGl0IGdldHMgY2xvc2VyLiBUaGVyZSBhcmUgdG9vIG1hbnkgY29tcGlsZXJzIGZvciBtZSB0byBmdWxseTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA1OSI+PC9hPjAwMDU5IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyB0ZXN0LiBJZiB5b3UgZ2V0IGNvbXBpbGF0aW9uIHRyb3VibGVzLCB1bmRlZmluZSBUSVhNTF9TQUZFPC9zcGFuPgotPGEgbmFtZT0ibDAwMDYwIj48L2E+MDAwNjAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2RlZmluZSBUSVhNTF9TQUZFPC9zcGFuPgotPGEgbmFtZT0ibDAwMDYxIj48L2E+MDAwNjEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAwMDYyIj48L2E+MDAwNjIgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2lmZGVmIFRJWE1MX1NBRkU8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNjMiPjwvYT4wMDA2MyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZiBkZWZpbmVkKF9NU0NfVkVSKSAmYW1wOyZhbXA7IChfTVNDX1ZFUiAmZ3Q7PSAxNDAwICk8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNjQiPjwvYT4wMDA2NCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gTWljcm9zb2Z0IHZpc3VhbCBzdHVkaW8sIHZlcnNpb24gMjAwNSBhbmQgaGlnaGVyLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA2NSI+PC9hPjAwMDY1IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAgICAgI2RlZmluZSBUSVhNTF9TTlBSSU5URiBfc25wcmludGZfczwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA2NiI+PC9hPjAwMDY2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgICAgICNkZWZpbmUgVElYTUxfU1NDQU5GICAgc3NjYW5mX3M8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNjciPjwvYT4wMDA2NyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbGlmIGRlZmluZWQoX01TQ19WRVIpICZhbXA7JmFtcDsgKF9NU0NfVkVSICZndDs9IDEyMDAgKTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA2OCI+PC9hPjAwMDY4IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBNaWNyb3NvZnQgdmlzdWFsIHN0dWRpbywgdmVyc2lvbiA2IGFuZCBoaWdoZXIuPC9zcGFuPgotPGEgbmFtZT0ibDAwMDY5Ij48L2E+MDAwNjkgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8jcHJhZ21hIG1lc3NhZ2UoICZxdW90O1VzaW5nIF9zbiogZnVuY3Rpb25zLiZxdW90OyApPC9zcGFuPgotPGEgbmFtZT0ibDAwMDcwIj48L2E+MDAwNzAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICAgICAjZGVmaW5lIFRJWE1MX1NOUFJJTlRGIF9zbnByaW50Zjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA3MSI+PC9hPjAwMDcxIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgICAgICNkZWZpbmUgVElYTUxfU1NDQU5GICAgc3NjYW5mPC9zcGFuPgotPGEgbmFtZT0ibDAwMDcyIj48L2E+MDAwNzIgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZWxpZiBkZWZpbmVkKF9fR05VQ19fKSAmYW1wOyZhbXA7IChfX0dOVUNfXyAmZ3Q7PSAzICk8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNzMiPjwvYT4wMDA3MyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gR0NDIHZlcnNpb24gMyBhbmQgaGlnaGVyLnM8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNzQiPjwvYT4wMDA3NCAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyN3YXJuaW5nKCAmcXVvdDtVc2luZyBzbiogZnVuY3Rpb25zLiZxdW90OyApPC9zcGFuPgotPGEgbmFtZT0ibDAwMDc1Ij48L2E+MDAwNzUgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICAgICAjZGVmaW5lIFRJWE1MX1NOUFJJTlRGIHNucHJpbnRmPC9zcGFuPgotPGEgbmFtZT0ibDAwMDc2Ij48L2E+MDAwNzYgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAgICAgI2RlZmluZSBUSVhNTF9TU0NBTkYgICBzc2NhbmY8L3NwYW4+Ci08YSBuYW1lPSJsMDAwNzciPjwvYT4wMDA3NyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbHNlPC9zcGFuPgotPGEgbmFtZT0ibDAwMDc4Ij48L2E+MDAwNzggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAgICAgI2RlZmluZSBUSVhNTF9TTlBSSU5URiBzbnByaW50Zjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA3OSI+PC9hPjAwMDc5IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgICAgICNkZWZpbmUgVElYTUxfU1NDQU5GICAgc3NjYW5mPC9zcGFuPgotPGEgbmFtZT0ibDAwMDgwIj48L2E+MDAwODAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDAwODEiPjwvYT4wMDA4MSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I2VuZGlmICA8L3NwYW4+Ci08YSBuYW1lPSJsMDAwODIiPjwvYT4wMDA4MiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDAwODMiPjwvYT4wMDA4MyA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgdGl0bGU9IkFsd2F5cyB0aGUgdG9wIGxldmVsIG5vZGUuIj5UaVhtbERvY3VtZW50PC9hPjsKLTxhIG5hbWU9ImwwMDA4NCI+PC9hPjAwMDg0IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT47Ci08YSBuYW1lPSJsMDAwODUiPjwvYT4wMDA4NSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIiB0aXRsZT0iQW4gWE1MIGNvbW1lbnQuIj5UaVhtbENvbW1lbnQ8L2E+OwotPGEgbmFtZT0ibDAwMDg2Ij48L2E+MDAwODYgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCIgdGl0bGU9IkFueSB0YWcgdGhhdCB0aW55WG1sIGRvZXNuJmFtcDsjMzk7dCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4iPlRpWG1sVW5rbm93bjwvYT47Ci08YSBuYW1lPSJsMDAwODciPjwvYT4wMDA4NyA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIHRpdGxlPSJBbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIuIj5UaVhtbEF0dHJpYnV0ZTwvYT47Ci08YSBuYW1lPSJsMDAwODgiPjwvYT4wMDA4OCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIiB0aXRsZT0iWE1MIHRleHQuIj5UaVhtbFRleHQ8L2E+OwotPGEgbmFtZT0ibDAwMDg5Ij48L2E+MDAwODkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiIHRpdGxlPSJJbiBjb3JyZWN0IFhNTCB0aGUgZGVjbGFyYXRpb24gaXMgdGhlIGZpcnN0IGVudHJ5IGluIHRoZSBmaWxlLiI+VGlYbWxEZWNsYXJhdGlvbjwvYT47Ci08YSBuYW1lPSJsMDAwOTAiPjwvYT4wMDA5MCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPlRpWG1sUGFyc2luZ0RhdGE7Ci08YSBuYW1lPSJsMDAwOTEiPjwvYT4wMDA5MSAKLTxhIG5hbWU9ImwwMDA5MiI+PC9hPjAwMDkyIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IFRJWE1MX01BSk9SX1ZFUlNJT04gPSAyOwotPGEgbmFtZT0ibDAwMDkzIj48L2E+MDAwOTMgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gVElYTUxfTUlOT1JfVkVSU0lPTiA9IDY7Ci08YSBuYW1lPSJsMDAwOTQiPjwvYT4wMDA5NCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBUSVhNTF9QQVRDSF9WRVJTSU9OID0gMjsKLTxhIG5hbWU9ImwwMDA5NSI+PC9hPjAwMDk1IAotPGEgbmFtZT0ibDAwMDk2Ij48L2E+MDAwOTYgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8qICBJbnRlcm5hbCBzdHJ1Y3R1cmUgZm9yIHRyYWNraW5nIGxvY2F0aW9uIG9mIGl0ZW1zIDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA5NyI+PC9hPjAwMDk3IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgaW4gdGhlIFhNTCBmaWxlLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA5OCI+PC9hPjAwMDk4IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4qLzwvc3Bhbj4KLTxhIG5hbWU9ImwwMDA5OSI+PC9hPjAwMDk5IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdHJ1Y3QgPC9zcGFuPlRpWG1sQ3Vyc29yCi08YSBuYW1lPSJsMDAxMDAiPjwvYT4wMDEwMCB7Ci08YSBuYW1lPSJsMDAxMDEiPjwvYT4wMDEwMSAgICAgVGlYbWxDdXJzb3IoKSAgICAgICB7IENsZWFyKCk7IH0KLTxhIG5hbWU9ImwwMDEwMiI+PC9hPjAwMTAyICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IENsZWFyKCkgICAgICAgIHsgcm93ID0gY29sID0gLTE7IH0KLTxhIG5hbWU9ImwwMDEwMyI+PC9hPjAwMTAzIAotPGEgbmFtZT0ibDAwMTA0Ij48L2E+MDAxMDQgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiByb3c7ICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyAwIGJhc2VkLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDEwNSI+PC9hPjAwMTA1ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gY29sOyAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gMCBiYXNlZC48L3NwYW4+Ci08YSBuYW1lPSJsMDAxMDYiPjwvYT4wMDEwNiB9OwotPGEgbmFtZT0ibDAwMTA3Ij48L2E+MDAxMDcgCi08YSBuYW1lPSJsMDAxMDgiPjwvYT4wMDEwOCAKLTxhIG5hbWU9ImwwMDEyOCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIj4wMDEyODwvYT4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCIgdGl0bGU9IkltcGxlbWVudHMgdGhlIGludGVyZmFjZSB0byB0aGUgJmFtcDtxdW90O1Zpc2l0b3IgcGF0dGVybiZhbXA7cXVvdDsgKHNlZSB0aGUgQWNjZXB0KCkgbWV0aG9kLi4uIj5UaVhtbFZpc2l0b3I8L2E+Ci08YSBuYW1lPSJsMDAxMjkiPjwvYT4wMDEyOSB7Ci08YSBuYW1lPSJsMDAxMzAiPjwvYT4wMDEzMCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPjoKLTxhIG5hbWU9ImwwMDEzMSI+PC9hPjAwMTMxICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gfjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIiB0aXRsZT0iSW1wbGVtZW50cyB0aGUgaW50ZXJmYWNlIHRvIHRoZSAmYW1wO3F1b3Q7VmlzaXRvciBwYXR0ZXJuJmFtcDtxdW90OyAoc2VlIHRoZSBBY2NlcHQoKSBtZXRob2QuLi4iPlRpWG1sVmlzaXRvcjwvYT4oKSB7fQotPGEgbmFtZT0ibDAwMTMyIj48L2E+MDAxMzIgCi08YSBuYW1lPSJsMDAxMzQiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhMDdiYWVjYjUyZGQ3ZDg3MTZhZTJhNDhhZDA5NTZlZTAiPjAwMTM0PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYTA3YmFlY2I1MmRkN2Q4NzE2YWUyYTQ4YWQwOTU2ZWUwIiB0aXRsZT0iVmlzaXQgYSBkb2N1bWVudC4iPlZpc2l0RW50ZXI8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgdGl0bGU9IkFsd2F5cyB0aGUgdG9wIGxldmVsIG5vZGUuIj5UaVhtbERvY3VtZW50PC9hPiZhbXA7IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKmRvYyovPC9zcGFuPiApICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRydWU8L3NwYW4+OyB9Ci08YSBuYW1lPSJsMDAxMzYiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhYTBhZGU0ZjI3MDg3NDQ3ZTkzOTc0ZTk3NWMzMjQ2YWQiPjAwMTM2PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYWEwYWRlNGYyNzA4NzQ0N2U5Mzk3NGU5NzVjMzI0NmFkIiB0aXRsZT0iVmlzaXQgYSBkb2N1bWVudC4iPlZpc2l0RXhpdDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIiB0aXRsZT0iQWx3YXlzIHRoZSB0b3AgbGV2ZWwgbm9kZS4iPlRpWG1sRG9jdW1lbnQ8L2E+JmFtcDsgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8qZG9jKi88L3NwYW4+ICkgICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRydWU8L3NwYW4+OyB9Ci08YSBuYW1lPSJsMDAxMzciPjwvYT4wMDEzNyAKLTxhIG5hbWU9ImwwMDEzOSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2FmNmM2MTc4ZmZhNTE3YmJkYmE5NWQ3MDQ5MDg3NWZmZiI+MDAxMzk8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhZjZjNjE3OGZmYTUxN2JiZGJhOTVkNzA0OTA4NzVmZmYiIHRpdGxlPSJWaXNpdCBhbiBlbGVtZW50LiI+VmlzaXRFbnRlcjwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4mYW1wOyA8c3BhbiBjbGFzcz0iY29tbWVudCI+LyplbGVtZW50Ki88L3NwYW4+LCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIHRpdGxlPSJBbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIuIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKmZpcnN0QXR0cmlidXRlKi88L3NwYW4+ICkgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRydWU8L3NwYW4+OyB9Ci08YSBuYW1lPSJsMDAxNDEiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhZWMyYjFmODExNjIyNmQ1MmYzYTFiOTVkYWZkM2EzMmMiPjAwMTQxPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYWVjMmIxZjgxMTYyMjZkNTJmM2ExYjk1ZGFmZDNhMzJjIiB0aXRsZT0iVmlzaXQgYW4gZWxlbWVudC4iPlZpc2l0RXhpdDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4mYW1wOyA8c3BhbiBjbGFzcz0iY29tbWVudCI+LyplbGVtZW50Ki88L3NwYW4+ICkgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRydWU8L3NwYW4+OyB9Ci08YSBuYW1lPSJsMDAxNDIiPjwvYT4wMDE0MiAKLTxhIG5hbWU9ImwwMDE0NCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2FmYWQ3MWM3MWNlNjQ3M2ZiOWI0YjY0Y2Q5MmRlNGExOSI+MDAxNDQ8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhZmFkNzFjNzFjZTY0NzNmYjliNGI2NGNkOTJkZTRhMTkiIHRpdGxlPSJWaXNpdCBhIGRlY2xhcmF0aW9uLiI+VmlzaXQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCIgdGl0bGU9IkluIGNvcnJlY3QgWE1MIHRoZSBkZWNsYXJhdGlvbiBpcyB0aGUgZmlyc3QgZW50cnkgaW4gdGhlIGZpbGUuIj5UaVhtbERlY2xhcmF0aW9uPC9hPiZhbXA7IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKmRlY2xhcmF0aW9uKi88L3NwYW4+ICkgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dHJ1ZTwvc3Bhbj47IH0KLTxhIG5hbWU9ImwwMDE0NiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2EzOTliOGViY2E1Y2QxNDY2NDk3NGEzMmQyY2UwMjllNSI+MDAxNDY8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhMzk5YjhlYmNhNWNkMTQ2NjQ5NzRhMzJkMmNlMDI5ZTUiIHRpdGxlPSJWaXNpdCBhIHRleHQgbm9kZS4iPlZpc2l0PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCIgdGl0bGU9IlhNTCB0ZXh0LiI+VGlYbWxUZXh0PC9hPiZhbXA7IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKnRleHQqLzwvc3Bhbj4gKSAgICAgICAgICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRydWU8L3NwYW4+OyB9Ci08YSBuYW1lPSJsMDAxNDgiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCNhNTNhNjBlN2E1Mjg2MjdiMzFhZjMxNjE5NzJjYzdmYTIiPjAwMTQ4PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYTUzYTYwZTdhNTI4NjI3YjMxYWYzMTYxOTcyY2M3ZmEyIiB0aXRsZT0iVmlzaXQgYSBjb21tZW50IG5vZGUuIj5WaXNpdDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiIHRpdGxlPSJBbiBYTUwgY29tbWVudC4iPlRpWG1sQ29tbWVudDwvYT4mYW1wOyA8c3BhbiBjbGFzcz0iY29tbWVudCI+Lypjb21tZW50Ki88L3NwYW4+ICkgICAgICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50cnVlPC9zcGFuPjsgfQotPGEgbmFtZT0ibDAwMTUwIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwjYTdlMjg0ZDYwN2QyNzVjNTFkYWMxYWRiNTgxNTljZTI4Ij4wMDE1MDwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sI2E3ZTI4NGQ2MDdkMjc1YzUxZGFjMWFkYjU4MTU5Y2UyOCIgdGl0bGU9IlZpc2l0IGFuIHVua25vd24gbm9kZS4iPlZpc2l0PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCIgdGl0bGU9IkFueSB0YWcgdGhhdCB0aW55WG1sIGRvZXNuJmFtcDsjMzk7dCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4iPlRpWG1sVW5rbm93bjwvYT4mYW1wOyA8c3BhbiBjbGFzcz0iY29tbWVudCI+Lyp1bmtub3duKi88L3NwYW4+ICkgICAgICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50cnVlPC9zcGFuPjsgfQotPGEgbmFtZT0ibDAwMTUxIj48L2E+MDAxNTEgfTsKLTxhIG5hbWU9ImwwMDE1MiI+PC9hPjAwMTUyIAotPGEgbmFtZT0ibDAwMTUzIj48L2E+MDAxNTMgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIE9ubHkgdXNlZCBieSBBdHRyaWJ1dGU6OlF1ZXJ5IGZ1bmN0aW9uczwvc3Bhbj4KLTxhIG5hbWU9ImwwMDE1NCI+PC9hPjAwMTU0IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5lbnVtPC9zcGFuPiAKLTxhIG5hbWU9ImwwMDE1NSI+PC9hPjAwMTU1IHsgCi08YSBuYW1lPSJsMDAxNTYiPjwvYT4wMDE1NiAgICAgVElYTUxfU1VDQ0VTUywKLTxhIG5hbWU9ImwwMDE1NyI+PC9hPjAwMTU3ICAgICBUSVhNTF9OT19BVFRSSUJVVEUsCi08YSBuYW1lPSJsMDAxNTgiPjwvYT4wMDE1OCAgICAgVElYTUxfV1JPTkdfVFlQRQotPGEgbmFtZT0ibDAwMTU5Ij48L2E+MDAxNTkgfTsKLTxhIG5hbWU9ImwwMDE2MCI+PC9hPjAwMTYwIAotPGEgbmFtZT0ibDAwMTYxIj48L2E+MDAxNjEgCi08YSBuYW1lPSJsMDAxNjIiPjwvYT4wMDE2MiA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gVXNlZCBieSB0aGUgcGFyc2luZyByb3V0aW5lcy48L3NwYW4+Ci08YSBuYW1lPSJsMDAxNjMiPjwvYT4wMDE2MyA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ZW51bTwvc3Bhbj4gVGlYbWxFbmNvZGluZwotPGEgbmFtZT0ibDAwMTY0Ij48L2E+MDAxNjQgewotPGEgbmFtZT0ibDAwMTY1Ij48L2E+MDAxNjUgICAgIFRJWE1MX0VOQ09ESU5HX1VOS05PV04sCi08YSBuYW1lPSJsMDAxNjYiPjwvYT4wMDE2NiAgICAgVElYTUxfRU5DT0RJTkdfVVRGOCwKLTxhIG5hbWU9ImwwMDE2NyI+PC9hPjAwMTY3ICAgICBUSVhNTF9FTkNPRElOR19MRUdBQ1kKLTxhIG5hbWU9ImwwMDE2OCI+PC9hPjAwMTY4IH07Ci08YSBuYW1lPSJsMDAxNjkiPjwvYT4wMDE2OSAKLTxhIG5hbWU9ImwwMDE3MCI+PC9hPjAwMTcwIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVGlYbWxFbmNvZGluZyBUSVhNTF9ERUZBVUxUX0VOQ09ESU5HID0gVElYTUxfRU5DT0RJTkdfVU5LTk9XTjsKLTxhIG5hbWU9ImwwMDE3MSI+PC9hPjAwMTcxIAotPGEgbmFtZT0ibDAwMTk0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiPjAwMTk0PC9hPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIiB0aXRsZT0iVGlYbWxCYXNlIGlzIGEgYmFzZSBjbGFzcyBmb3IgZXZlcnkgY2xhc3MgaW4gVGlueVhtbC4iPlRpWG1sQmFzZTwvYT4KLTxhIG5hbWU9ImwwMDE5NSI+PC9hPjAwMTk1IHsKLTxhIG5hbWU9ImwwMDE5NiI+PC9hPjAwMTk2ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ZnJpZW5kPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPjsKLTxhIG5hbWU9ImwwMDE5NyI+PC9hPjAwMTk3ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ZnJpZW5kPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIiB0aXRsZT0iVGhlIGVsZW1lbnQgaXMgYSBjb250YWluZXIgY2xhc3MuIj5UaVhtbEVsZW1lbnQ8L2E+OwotPGEgbmFtZT0ibDAwMTk4Ij48L2E+MDAxOTggICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5mcmllbmQ8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIiB0aXRsZT0iQWx3YXlzIHRoZSB0b3AgbGV2ZWwgbm9kZS4iPlRpWG1sRG9jdW1lbnQ8L2E+OwotPGEgbmFtZT0ibDAwMTk5Ij48L2E+MDAxOTkgCi08YSBuYW1lPSJsMDAyMDAiPjwvYT4wMDIwMCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPjoKLTxhIG5hbWU9ImwwMDIwMSI+PC9hPjAwMjAxICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCIgdGl0bGU9IlRpWG1sQmFzZSBpcyBhIGJhc2UgY2xhc3MgZm9yIGV2ZXJ5IGNsYXNzIGluIFRpbnlYbWwuIj5UaVhtbEJhc2U8L2E+KCkgOiAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiMjQyYzAxNTkwMTkxZjY0NDU2OWZhODlhMDgwZDk3YyIgdGl0bGU9IkZpZWxkIGNvbnRhaW5pbmcgYSBnZW5lcmljIHVzZXIgcG9pbnRlci4iPnVzZXJEYXRhPC9hPigwKSAgICAge30KLTxhIG5hbWU9ImwwMDIwMiI+PC9hPjAwMjAyICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gfjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIiB0aXRsZT0iVGlYbWxCYXNlIGlzIGEgYmFzZSBjbGFzcyBmb3IgZXZlcnkgY2xhc3MgaW4gVGlueVhtbC4iPlRpWG1sQmFzZTwvYT4oKSAgICAgICAgICAgIHt9Ci08YSBuYW1lPSJsMDAyMDMiPjwvYT4wMDIwMyAKLTxhIG5hbWU9ImwwMDIxMyI+PC9hPjAwMjEzICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMGRlNTZiM2YyZWYxNGM2NTA5MWEzYjkxNjQzN2I1MTIiIHRpdGxlPSJBbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbSBvciB0aGUgc3RyaW5nIGNsYXNzIChUaVhtbFN0cmluZy4uLiI+UHJpbnQ8L2E+KCBGSUxFKiBjZmlsZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGRlcHRoICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA9IDA7Ci08YSBuYW1lPSJsMDAyMTQiPjwvYT4wMDIxNCAKLTxhIG5hbWU9ImwwMDIyMSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwZjc5OWVjNjQ1YmZiOGQ4YTk2OWU4MzQ3OGYzNzljMSI+MDAyMjE8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2EwZjc5OWVjNjQ1YmZiOGQ4YTk2OWU4MzQ3OGYzNzljMSIgdGl0bGU9IlRoZSB3b3JsZCBkb2VzIG5vdCBhZ3JlZSBvbiB3aGV0aGVyIHdoaXRlIHNwYWNlIHNob3VsZCBiZSBrZXB0IG9yIG5vdC4iPlNldENvbmRlbnNlV2hpdGVTcGFjZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gY29uZGVuc2UgKSAgICAgIHsgY29uZGVuc2VXaGl0ZVNwYWNlID0gY29uZGVuc2U7IH0KLTxhIG5hbWU9ImwwMDIyMiI+PC9hPjAwMjIyIAotPGEgbmFtZT0ibDAwMjI0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWQ0YjE0NzI1MzFjNjQ3YTI1YjE4NDBhODdhZTQyNDM4Ij4wMDIyNDwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdGF0aWM8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWQ0YjE0NzI1MzFjNjQ3YTI1YjE4NDBhODdhZTQyNDM4IiB0aXRsZT0iUmV0dXJuIHRoZSBjdXJyZW50IHdoaXRlIHNwYWNlIHNldHRpbmcuIj5Jc1doaXRlU3BhY2VDb25kZW5zZWQ8L2E+KCkgICAgICAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBjb25kZW5zZVdoaXRlU3BhY2U7IH0KLTxhIG5hbWU9ImwwMDIyNSI+PC9hPjAwMjI1IAotPGEgbmFtZT0ibDAwMjQ0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTAyNGJjZWIwNzAxODhkZjkyYzJhOGQ4ODUyZGQwODUzIj4wMDI0NDwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhMDI0YmNlYjA3MDE4OGRmOTJjMmE4ZDg4NTJkZDA4NTMiIHRpdGxlPSJSZXR1cm4gdGhlIHBvc2l0aW9uLCBpbiB0aGUgb3JpZ2luYWwgc291cmNlIGZpbGUsIG9mIHRoaXMgbm9kZSBvciBhdHRyaWJ1dGUuIj5Sb3c8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGxvY2F0aW9uLnJvdyArIDE7IH0KLTxhIG5hbWU9ImwwMDI0NSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiNTRiZmI5YjcwZmU2ZGQyNzZlN2IyNzljYWI3ZjAwMyI+MDAyNDU8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWI1NGJmYjliNzBmZTZkZDI3NmU3YjI3OWNhYjdmMDAzIiB0aXRsZT0iU2VlIFJvdygpLiI+Q29sdW1uPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBsb2NhdGlvbi5jb2wgKyAxOyB9ICAgIAotPGEgbmFtZT0ibDAwMjQ2Ij48L2E+MDAyNDYgCi08YSBuYW1lPSJsMDAyNDciPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYzZiM2UwZjc5MDkzMGQ0OTcwZWMzMDc2NGU5MzdiNWQiPjAwMjQ3PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWM2YjNlMGY3OTA5MzBkNDk3MGVjMzA3NjRlOTM3YjVkIiB0aXRsZT0iU2V0IGEgcG9pbnRlciB0byBhcmJpdHJhcnkgdXNlciBkYXRhLiI+U2V0VXNlckRhdGE8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+KiB1c2VyICkgICAgICAgICB7IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiMjQyYzAxNTkwMTkxZjY0NDU2OWZhODlhMDgwZDk3YyIgdGl0bGU9IkZpZWxkIGNvbnRhaW5pbmcgYSBnZW5lcmljIHVzZXIgcG9pbnRlci4iPnVzZXJEYXRhPC9hPiA9IHVzZXI7IH0gICAgCi08YSBuYW1lPSJsMDAyNDgiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNjU1OWE1MzBjYTY3NjNmYzMwMWExNGQ3N2VkMjhjMTciPjAwMjQ4PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYTY1NTlhNTMwY2E2NzYzZmMzMDFhMTRkNzdlZDI4YzE3IiB0aXRsZT0iR2V0IGEgcG9pbnRlciB0byBhcmJpdHJhcnkgdXNlciBkYXRhLiI+R2V0VXNlckRhdGE8L2E+KCkgICAgICAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjI0MmMwMTU5MDE5MWY2NDQ1NjlmYTg5YTA4MGQ5N2MiIHRpdGxlPSJGaWVsZCBjb250YWluaW5nIGEgZ2VuZXJpYyB1c2VyIHBvaW50ZXIuIj51c2VyRGF0YTwvYT47IH0gICAgCi08YSBuYW1lPSJsMDAyNDkiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDAxMjAyMTBlNDY4MGVmMjA4ODYwMTc1M2NlMGVkZTQiPjAwMjQ5PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhZDAxMjAyMTBlNDY4MGVmMjA4ODYwMTc1M2NlMGVkZTQiIHRpdGxlPSJHZXQgYSBwb2ludGVyIHRvIGFyYml0cmFyeSB1c2VyIGRhdGEuIj5HZXRVc2VyRGF0YTwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwjYWIyNDJjMDE1OTAxOTFmNjQ0NTY5ZmE4OWEwODBkOTdjIiB0aXRsZT0iRmllbGQgY29udGFpbmluZyBhIGdlbmVyaWMgdXNlciBwb2ludGVyLiI+dXNlckRhdGE8L2E+OyB9ICAgIAotPGEgbmFtZT0ibDAwMjUwIj48L2E+MDAyNTAgCi08YSBuYW1lPSJsMDAyNTEiPjwvYT4wMDI1MSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFRhYmxlIHRoYXQgcmV0dXJzLCBmb3IgYSBnaXZlbiBsZWFkIGJ5dGUsIHRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXM8L3NwYW4+Ci08YSBuYW1lPSJsMDAyNTIiPjwvYT4wMDI1MiAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIGluIHRoZSBVVEYtOCBzZXF1ZW5jZS48L3NwYW4+Ci08YSBuYW1lPSJsMDAyNTMiPjwvYT4wMDI1MyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gdXRmOEJ5dGVUYWJsZVsyNTZdOwotPGEgbmFtZT0ibDAwMjU0Ij48L2E+MDAyNTQgCi08YSBuYW1lPSJsMDAyNTUiPjwvYT4wMDI1NSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExN2ViYWJlMzY5MjZlZjM5OGU3OGRlYzBkMGFkMDM3OCIgdGl0bGU9IlBhcnNlIHRoZSBnaXZlbiBudWxsIHRlcm1pbmF0ZWQgYmxvY2sgb2YgeG1sIGRhdGEuIj5QYXJzZTwvYT4oICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHAsIAotPGEgbmFtZT0ibDAwMjU2Ij48L2E+MDAyNTYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaVhtbFBhcnNpbmdEYXRhKiBkYXRhLCAKLTxhIG5hbWU9ImwwMDI1NyI+PC9hPjAwMjU3ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGlYbWxFbmNvZGluZyBlbmNvZGluZyA8c3BhbiBjbGFzcz0iY29tbWVudCI+Lyo9IFRJWE1MX0VOQ09ESU5HX1VOS05PV04gKi88L3NwYW4+ICkgPSAwOwotPGEgbmFtZT0ibDAwMjU4Ij48L2E+MDAyNTggCi08YSBuYW1lPSJsMDAyNjIiPjwvYT4wMDI2MiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhNmJkOGMzMTVjMWFjYjA5ZTM0MTA3Yjg3MzY1MDU5NDgiIHRpdGxlPSJFeHBhbmRzIGVudGl0aWVzIGluIGEgc3RyaW5nLiI+RW5jb2RlU3RyaW5nPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUSVhNTF9TVFJJTkcmYW1wOyBzdHIsIFRJWE1MX1NUUklORyogb3V0ICk7Ci08YSBuYW1lPSJsMDAyNjMiPjwvYT4wMDI2MyAKLTxhIG5hbWU9ImwwMDI2NCI+PC9hPjAwMjY0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ZW51bTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDI2NSI+PC9hPjAwMjY1ICAgICB7Ci08YSBuYW1lPSJsMDAyNjYiPjwvYT4wMDI2NiAgICAgICAgIFRJWE1MX05PX0VSUk9SID0gMCwKLTxhIG5hbWU9ImwwMDI2NyI+PC9hPjAwMjY3ICAgICAgICAgVElYTUxfRVJST1IsCi08YSBuYW1lPSJsMDAyNjgiPjwvYT4wMDI2OCAgICAgICAgIFRJWE1MX0VSUk9SX09QRU5JTkdfRklMRSwKLTxhIG5hbWU9ImwwMDI2OSI+PC9hPjAwMjY5ICAgICAgICAgVElYTUxfRVJST1JfUEFSU0lOR19FTEVNRU5ULAotPGEgbmFtZT0ibDAwMjcwIj48L2E+MDAyNzAgICAgICAgICBUSVhNTF9FUlJPUl9GQUlMRURfVE9fUkVBRF9FTEVNRU5UX05BTUUsCi08YSBuYW1lPSJsMDAyNzEiPjwvYT4wMDI3MSAgICAgICAgIFRJWE1MX0VSUk9SX1JFQURJTkdfRUxFTUVOVF9WQUxVRSwKLTxhIG5hbWU9ImwwMDI3MiI+PC9hPjAwMjcyICAgICAgICAgVElYTUxfRVJST1JfUkVBRElOR19BVFRSSUJVVEVTLAotPGEgbmFtZT0ibDAwMjczIj48L2E+MDAyNzMgICAgICAgICBUSVhNTF9FUlJPUl9QQVJTSU5HX0VNUFRZLAotPGEgbmFtZT0ibDAwMjc0Ij48L2E+MDAyNzQgICAgICAgICBUSVhNTF9FUlJPUl9SRUFESU5HX0VORF9UQUcsCi08YSBuYW1lPSJsMDAyNzUiPjwvYT4wMDI3NSAgICAgICAgIFRJWE1MX0VSUk9SX1BBUlNJTkdfVU5LTk9XTiwKLTxhIG5hbWU9ImwwMDI3NiI+PC9hPjAwMjc2ICAgICAgICAgVElYTUxfRVJST1JfUEFSU0lOR19DT01NRU5ULAotPGEgbmFtZT0ibDAwMjc3Ij48L2E+MDAyNzcgICAgICAgICBUSVhNTF9FUlJPUl9QQVJTSU5HX0RFQ0xBUkFUSU9OLAotPGEgbmFtZT0ibDAwMjc4Ij48L2E+MDAyNzggICAgICAgICBUSVhNTF9FUlJPUl9ET0NVTUVOVF9FTVBUWSwKLTxhIG5hbWU9ImwwMDI3OSI+PC9hPjAwMjc5ICAgICAgICAgVElYTUxfRVJST1JfRU1CRURERURfTlVMTCwKLTxhIG5hbWU9ImwwMDI4MCI+PC9hPjAwMjgwICAgICAgICAgVElYTUxfRVJST1JfUEFSU0lOR19DREFUQSwKLTxhIG5hbWU9ImwwMDI4MSI+PC9hPjAwMjgxICAgICAgICAgVElYTUxfRVJST1JfRE9DVU1FTlRfVE9QX09OTFksCi08YSBuYW1lPSJsMDAyODIiPjwvYT4wMDI4MiAKLTxhIG5hbWU9ImwwMDI4MyI+PC9hPjAwMjgzICAgICAgICAgVElYTUxfRVJST1JfU1RSSU5HX0NPVU5UCi08YSBuYW1lPSJsMDAyODQiPjwvYT4wMDI4NCAgICAgfTsKLTxhIG5hbWU9ImwwMDI4NSI+PC9hPjAwMjg1IAotPGEgbmFtZT0ibDAwMjg2Ij48L2E+MDAyODYgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByb3RlY3RlZDwvc3Bhbj46Ci08YSBuYW1lPSJsMDAyODciPjwvYT4wMDI4NyAKLTxhIG5hbWU9ImwwMDI4OCI+PC9hPjAwMjg4ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIFNraXBXaGl0ZVNwYWNlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7Ci08YSBuYW1lPSJsMDAyODkiPjwvYT4wMDI4OSAKLTxhIG5hbWU9ImwwMDI5MCI+PC9hPjAwMjkwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+aW5saW5lPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IElzV2hpdGVTcGFjZSggPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiBjICkgICAgICAgCi08YSBuYW1lPSJsMDAyOTEiPjwvYT4wMDI5MSAgICAgeyAKLTxhIG5hbWU9ImwwMDI5MiI+PC9hPjAwMjkyICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICggaXNzcGFjZSggKDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dW5zaWduZWQ8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4pIGMgKSB8fCBjID09IDxzcGFuIGNsYXNzPSJjaGFybGl0ZXJhbCI+JiMzOTtcbiYjMzk7PC9zcGFuPiB8fCBjID09IDxzcGFuIGNsYXNzPSJjaGFybGl0ZXJhbCI+JiMzOTtcciYjMzk7PC9zcGFuPiApOyAKLTxhIG5hbWU9ImwwMDI5MyI+PC9hPjAwMjkzICAgICB9Ci08YSBuYW1lPSJsMDAyOTQiPjwvYT4wMDI5NCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmlubGluZTwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBJc1doaXRlU3BhY2UoIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBjICkKLTxhIG5hbWU9ImwwMDI5NSI+PC9hPjAwMjk1ICAgICB7Ci08YSBuYW1lPSJsMDAyOTYiPjwvYT4wMDI5NiAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+aWY8L3NwYW4+ICggYyAmbHQ7IDI1NiApCi08YSBuYW1lPSJsMDAyOTciPjwvYT4wMDI5NyAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gSXNXaGl0ZVNwYWNlKCAoPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPikgYyApOwotPGEgbmFtZT0ibDAwMjk4Ij48L2E+MDAyOTggICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZhbHNlPC9zcGFuPjsgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gQWdhaW4sIG9ubHkgdHJ1bHkgY29ycmVjdCBmb3IgRW5nbGlzaC9MYXRpbi4uLmJ1dCB1c3VhbGx5IHdvcmtzLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDI5OSI+PC9hPjAwMjk5ICAgICB9Ci08YSBuYW1lPSJsMDAzMDAiPjwvYT4wMDMwMCAKLTxhIG5hbWU9ImwwMDMwMSI+PC9hPjAwMzAxIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDMwMiI+PC9hPjAwMzAyIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBTdHJlYW1XaGl0ZVNwYWNlKCBzdGQ6OmlzdHJlYW0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICk7Ci08YSBuYW1lPSJsMDAzMDMiPjwvYT4wMDMwMyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBTdHJlYW1Ubyggc3RkOjppc3RyZWFtICogaW4sIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBjaGFyYWN0ZXIsIFRJWE1MX1NUUklORyAqIHRhZyApOwotPGEgbmFtZT0ibDAwMzA0Ij48L2E+MDAzMDQgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbmRpZjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDMwNSI+PC9hPjAwMzA1IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDMwNiI+PC9hPjAwMzA2ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+LyogIFJlYWRzIGFuIFhNTCBuYW1lIGludG8gdGhlIHN0cmluZyBwcm92aWRlZC4gUmV0dXJuczwvc3Bhbj4KLTxhIG5hbWU9ImwwMDMwNyI+PC9hPjAwMzA3IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgICAgIGEgcG9pbnRlciBqdXN0IHBhc3QgdGhlIGxhc3QgY2hhcmFjdGVyIG9mIHRoZSBuYW1lLDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDMwOCI+PC9hPjAwMzA4IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgICAgIG9yIDAgaWYgdGhlIGZ1bmN0aW9uIGhhcyBhbiBlcnJvci48L3NwYW4+Ci08YSBuYW1lPSJsMDAzMDkiPjwvYT4wMDMwOSA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgICovPC9zcGFuPgotPGEgbmFtZT0ibDAwMzEwIj48L2E+MDAzMTAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdGF0aWM8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogUmVhZE5hbWUoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogcCwgVElYTUxfU1RSSU5HKiBuYW1lLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7Ci08YSBuYW1lPSJsMDAzMTEiPjwvYT4wMDMxMSAKLTxhIG5hbWU9ImwwMDMxMiI+PC9hPjAwMzEyICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+LyogIFJlYWRzIHRleHQuIFJldHVybnMgYSBwb2ludGVyIHBhc3QgdGhlIGdpdmVuIGVuZCB0YWcuPC9zcGFuPgotPGEgbmFtZT0ibDAwMzEzIj48L2E+MDAzMTMgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAgICAgV2lja2VkbHkgY29tcGxleCBvcHRpb25zLCBidXQgaXQga2VlcHMgdGhlIChzZW5zaXRpdmUpIGNvZGUgaW4gb25lIHBsYWNlLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDMxNCI+PC9hPjAwMzE0IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgKi88L3NwYW4+Ci08YSBuYW1lPSJsMDAzMTUiPjwvYT4wMDMxNSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBSZWFkVGV4dCggICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBpbiwgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIHdoZXJlIHRvIHN0YXJ0PC9zcGFuPgotPGEgbmFtZT0ibDAwMzE2Ij48L2E+MDAzMTYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVElYTUxfU1RSSU5HKiB0ZXh0LCAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyB0aGUgc3RyaW5nIHJlYWQ8L3NwYW4+Ci08YSBuYW1lPSJsMDAzMTciPjwvYT4wMDMxNyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IGlnbm9yZVdoaXRlU3BhY2UsICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIHdoZXRoZXIgdG8ga2VlcCB0aGUgd2hpdGUgc3BhY2U8L3NwYW4+Ci08YSBuYW1lPSJsMDAzMTgiPjwvYT4wMDMxOCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIGVuZFRhZywgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gd2hhdCBlbmRzIHRoaXMgdGV4dDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDMxOSI+PC9hPjAwMzE5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gaWdub3JlQ2FzZSwgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gd2hldGhlciB0byBpZ25vcmUgY2FzZSBpbiB0aGUgZW5kIHRhZzwvc3Bhbj4KLTxhIG5hbWU9ImwwMDMyMCI+PC9hPjAwMzIwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gdGhlIGN1cnJlbnQgZW5jb2Rpbmc8L3NwYW4+Ci08YSBuYW1lPSJsMDAzMjEiPjwvYT4wMDMyMSAKLTxhIG5hbWU9ImwwMDMyMiI+PC9hPjAwMzIyICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gSWYgYW4gZW50aXR5IGhhcyBiZWVuIGZvdW5kLCB0cmFuc2Zvcm0gaXQgaW50byBhIGNoYXJhY3Rlci48L3NwYW4+Ci08YSBuYW1lPSJsMDAzMjMiPjwvYT4wMDMyMyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBHZXRFbnRpdHkoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogaW4sIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHZhbHVlLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4qIGxlbmd0aCwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApOwotPGEgbmFtZT0ibDAwMzI0Ij48L2E+MDAzMjQgCi08YSBuYW1lPSJsMDAzMjUiPjwvYT4wMDMyNSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIEdldCBhIGNoYXJhY3Rlciwgd2hpbGUgaW50ZXJwcmV0aW5nIGVudGl0aWVzLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDMyNiI+PC9hPjAwMzI2ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gVGhlIGxlbmd0aCBjYW4gYmUgZnJvbSAwIHRvIDQgYnl0ZXMuPC9zcGFuPgotPGEgbmFtZT0ibDAwMzI3Ij48L2E+MDAzMjcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5pbmxpbmU8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdGF0aWM8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogR2V0Q2hhciggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBwLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBfdmFsdWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiogbGVuZ3RoLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nICkKLTxhIG5hbWU9ImwwMDMyOCI+PC9hPjAwMzI4ICAgICB7Ci08YSBuYW1lPSJsMDAzMjkiPjwvYT4wMDMyOSAgICAgICAgIGFzc2VydCggcCApOwotPGEgbmFtZT0ibDAwMzMwIj48L2E+MDAzMzAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPmlmPC9zcGFuPiAoIGVuY29kaW5nID09IFRJWE1MX0VOQ09ESU5HX1VURjggKQotPGEgbmFtZT0ibDAwMzMxIj48L2E+MDAzMzEgICAgICAgICB7Ci08YSBuYW1lPSJsMDAzMzIiPjwvYT4wMDMzMiAgICAgICAgICAgICAqbGVuZ3RoID0gdXRmOEJ5dGVUYWJsZVsgKigoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnVuc2lnbmVkPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KilwKSBdOwotPGEgbmFtZT0ibDAwMzMzIj48L2E+MDAzMzMgICAgICAgICAgICAgYXNzZXJ0KCAqbGVuZ3RoICZndDs9IDAgJmFtcDsmYW1wOyAqbGVuZ3RoICZsdDsgNSApOwotPGEgbmFtZT0ibDAwMzM0Ij48L2E+MDAzMzQgICAgICAgICB9Ci08YSBuYW1lPSJsMDAzMzUiPjwvYT4wMDMzNSAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+ZWxzZTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDMzNiI+PC9hPjAwMzM2ICAgICAgICAgewotPGEgbmFtZT0ibDAwMzM3Ij48L2E+MDAzMzcgICAgICAgICAgICAgKmxlbmd0aCA9IDE7Ci08YSBuYW1lPSJsMDAzMzgiPjwvYT4wMDMzOCAgICAgICAgIH0KLTxhIG5hbWU9ImwwMDMzOSI+PC9hPjAwMzM5IAotPGEgbmFtZT0ibDAwMzQwIj48L2E+MDAzNDAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPmlmPC9zcGFuPiAoICpsZW5ndGggPT0gMSApCi08YSBuYW1lPSJsMDAzNDEiPjwvYT4wMDM0MSAgICAgICAgIHsKLTxhIG5hbWU9ImwwMDM0MiI+PC9hPjAwMzQyICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+aWY8L3NwYW4+ICggKnAgPT0gPHNwYW4gY2xhc3M9ImNoYXJsaXRlcmFsIj4mIzM5OyZhbXA7JiMzOTs8L3NwYW4+ICkKLTxhIG5hbWU9ImwwMDM0MyI+PC9hPjAwMzQzICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gR2V0RW50aXR5KCBwLCBfdmFsdWUsIGxlbmd0aCwgZW5jb2RpbmcgKTsKLTxhIG5hbWU9ImwwMDM0NCI+PC9hPjAwMzQ0ICAgICAgICAgICAgICpfdmFsdWUgPSAqcDsKLTxhIG5hbWU9ImwwMDM0NSI+PC9hPjAwMzQ1ICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBwKzE7Ci08YSBuYW1lPSJsMDAzNDYiPjwvYT4wMDM0NiAgICAgICAgIH0KLTxhIG5hbWU9ImwwMDM0NyI+PC9hPjAwMzQ3ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5lbHNlPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPmlmPC9zcGFuPiAoICpsZW5ndGggKQotPGEgbmFtZT0ibDAwMzQ4Ij48L2E+MDAzNDggICAgICAgICB7Ci08YSBuYW1lPSJsMDAzNDkiPjwvYT4wMDM0OSAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly9zdHJuY3B5KCBfdmFsdWUsIHAsICpsZW5ndGggKTsgICAgLy8gbG90cyBvZiBjb21waWxlcnMgZG9uJiMzOTt0IGxpa2UgdGhpcyBmdW5jdGlvbiAodW5zYWZlKSw8L3NwYW4+Ci08YSBuYW1lPSJsMDAzNTAiPjwvYT4wMDM1MCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gYW5kIHRoZSBudWxsIHRlcm1pbmF0b3IgaXNuJiMzOTt0IG5lZWRlZDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDM1MSI+PC9hPjAwMzUxICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+Zm9yPC9zcGFuPiggPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGk9MDsgcFtpXSAmYW1wOyZhbXA7IGkmbHQ7Kmxlbmd0aDsgKytpICkgewotPGEgbmFtZT0ibDAwMzUyIj48L2E+MDAzNTIgICAgICAgICAgICAgICAgIF92YWx1ZVtpXSA9IHBbaV07Ci08YSBuYW1lPSJsMDAzNTMiPjwvYT4wMDM1MyAgICAgICAgICAgICB9Ci08YSBuYW1lPSJsMDAzNTQiPjwvYT4wMDM1NCAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gcCArICgqbGVuZ3RoKTsKLTxhIG5hbWU9ImwwMDM1NSI+PC9hPjAwMzU1ICAgICAgICAgfQotPGEgbmFtZT0ibDAwMzU2Ij48L2E+MDAzNTYgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPmVsc2U8L3NwYW4+Ci08YSBuYW1lPSJsMDAzNTciPjwvYT4wMDM1NyAgICAgICAgIHsKLTxhIG5hbWU9ImwwMDM1OCI+PC9hPjAwMzU4ICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBOb3QgdmFsaWQgdGV4dC48L3NwYW4+Ci08YSBuYW1lPSJsMDAzNTkiPjwvYT4wMDM1OSAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gMDsKLTxhIG5hbWU9ImwwMDM2MCI+PC9hPjAwMzYwICAgICAgICAgfQotPGEgbmFtZT0ibDAwMzYxIj48L2E+MDAzNjEgICAgIH0KLTxhIG5hbWU9ImwwMDM2MiI+PC9hPjAwMzYyIAotPGEgbmFtZT0ibDAwMzYzIj48L2E+MDAzNjMgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBSZXR1cm4gdHJ1ZSBpZiB0aGUgbmV4dCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJlYW0gYXJlIGFueSBvZiB0aGUgZW5kVGFnIHNlcXVlbmNlcy48L3NwYW4+Ci08YSBuYW1lPSJsMDAzNjQiPjwvYT4wMDM2NCAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIElnbm9yZSBjYXNlIG9ubHkgd29ya3MgZm9yIGVuZ2xpc2gsIGFuZCBzaG91bGQgb25seSBiZSByZWxpZWQgb24gd2hlbiBjb21wYXJpbmc8L3NwYW4+Ci08YSBuYW1lPSJsMDAzNjUiPjwvYT4wMDM2NSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIHRvIEVuZ2xpc2ggd29yZHM6IFN0cmluZ0VxdWFsKCBwLCAmcXVvdDt2ZXJzaW9uJnF1b3Q7LCB0cnVlICkgaXMgZmluZS48L3NwYW4+Ci08YSBuYW1lPSJsMDAzNjYiPjwvYT4wMDM2NiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBTdHJpbmdFcXVhbCggICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBwLAotPGEgbmFtZT0ibDAwMzY3Ij48L2E+MDAzNjcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIGVuZFRhZywKLTxhIG5hbWU9ImwwMDM2OCI+PC9hPjAwMzY4ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBpZ25vcmVDYXNlLAotPGEgbmFtZT0ibDAwMzY5Ij48L2E+MDAzNjkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7Ci08YSBuYW1lPSJsMDAzNzAiPjwvYT4wMDM3MCAKLTxhIG5hbWU9ImwwMDM3MSI+PC9hPjAwMzcxICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIGVycm9yU3RyaW5nWyBUSVhNTF9FUlJPUl9TVFJJTkdfQ09VTlQgXTsKLTxhIG5hbWU9ImwwMDM3MiI+PC9hPjAwMzcyIAotPGEgbmFtZT0ibDAwMzczIj48L2E+MDAzNzMgICAgIFRpWG1sQ3Vyc29yIGxvY2F0aW9uOwotPGEgbmFtZT0ibDAwMzc0Ij48L2E+MDAzNzQgCi08YSBuYW1lPSJsMDAzNzYiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCNhYjI0MmMwMTU5MDE5MWY2NDQ1NjlmYTg5YTA4MGQ5N2MiPjAwMzc2PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiogICAgICAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sI2FiMjQyYzAxNTkwMTkxZjY0NDU2OWZhODlhMDgwZDk3YyIgdGl0bGU9IkZpZWxkIGNvbnRhaW5pbmcgYSBnZW5lcmljIHVzZXIgcG9pbnRlci4iPnVzZXJEYXRhPC9hPjsKLTxhIG5hbWU9ImwwMDM3NyI+PC9hPjAwMzc3ICAgICAKLTxhIG5hbWU9ImwwMDM3OCI+PC9hPjAwMzc4ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gTm9uZSBvZiB0aGVzZSBtZXRob2RzIGFyZSByZWxpYWJsZSBmb3IgYW55IGxhbmd1YWdlIGV4Y2VwdCBFbmdsaXNoLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDM3OSI+PC9hPjAwMzc5ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gR29vZCBmb3IgYXBwcm94aW1hdGlvbiwgbm90IGdyZWF0IGZvciBhY2N1cmFjeS48L3NwYW4+Ci08YSBuYW1lPSJsMDAzODAiPjwvYT4wMDM4MCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IElzQWxwaGEoIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dW5zaWduZWQ8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gYW55Qnl0ZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApOwotPGEgbmFtZT0ibDAwMzgxIj48L2E+MDAzODEgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5zdGF0aWM8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBJc0FscGhhTnVtKCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnVuc2lnbmVkPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+IGFueUJ5dGUsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKLTxhIG5hbWU9ImwwMDM4MiI+PC9hPjAwMzgyICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+aW5saW5lPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gVG9Mb3dlciggPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IHYsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKQotPGEgbmFtZT0ibDAwMzgzIj48L2E+MDAzODMgICAgIHsKLTxhIG5hbWU9ImwwMDM4NCI+PC9hPjAwMzg0ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKCBlbmNvZGluZyA9PSBUSVhNTF9FTkNPRElOR19VVEY4ICkKLTxhIG5hbWU9ImwwMDM4NSI+PC9hPjAwMzg1ICAgICAgICAgewotPGEgbmFtZT0ibDAwMzg2Ij48L2E+MDAzODYgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKCB2ICZsdDsgMTI4ICkgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHRvbG93ZXIoIHYgKTsKLTxhIG5hbWU9ImwwMDM4NyI+PC9hPjAwMzg3ICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiB2OwotPGEgbmFtZT0ibDAwMzg4Ij48L2E+MDAzODggICAgICAgICB9Ci08YSBuYW1lPSJsMDAzODkiPjwvYT4wMDM4OSAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+ZWxzZTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDM5MCI+PC9hPjAwMzkwICAgICAgICAgewotPGEgbmFtZT0ibDAwMzkxIj48L2E+MDAzOTEgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHRvbG93ZXIoIHYgKTsKLTxhIG5hbWU9ImwwMDM5MiI+PC9hPjAwMzkyICAgICAgICAgfQotPGEgbmFtZT0ibDAwMzkzIj48L2E+MDAzOTMgICAgIH0KLTxhIG5hbWU9ImwwMDM5NCI+PC9hPjAwMzk0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IENvbnZlcnRVVEYzMlRvVVRGOCggPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj51bnNpZ25lZDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5sb25nPC9zcGFuPiBpbnB1dCwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogb3V0cHV0LCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4qIGxlbmd0aCApOwotPGEgbmFtZT0ibDAwMzk1Ij48L2E+MDAzOTUgCi08YSBuYW1lPSJsMDAzOTYiPjwvYT4wMDM5NiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJpdmF0ZTwvc3Bhbj46Ci08YSBuYW1lPSJsMDAzOTciPjwvYT4wMDM5NyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxCYXNlLmh0bWwiIHRpdGxlPSJUaVhtbEJhc2UgaXMgYSBiYXNlIGNsYXNzIGZvciBldmVyeSBjbGFzcyBpbiBUaW55WG1sLiI+VGlYbWxCYXNlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCIgdGl0bGU9IlRpWG1sQmFzZSBpcyBhIGJhc2UgY2xhc3MgZm9yIGV2ZXJ5IGNsYXNzIGluIFRpbnlYbWwuIj5UaVhtbEJhc2U8L2E+JmFtcDsgKTsgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBub3QgaW1wbGVtZW50ZWQuPC9zcGFuPgotPGEgbmFtZT0ibDAwMzk4Ij48L2E+MDAzOTggICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gb3BlcmF0b3I9KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIiB0aXRsZT0iVGlYbWxCYXNlIGlzIGEgYmFzZSBjbGFzcyBmb3IgZXZlcnkgY2xhc3MgaW4gVGlueVhtbC4iPlRpWG1sQmFzZTwvYT4mYW1wOyBiYXNlICk7ICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBub3QgYWxsb3dlZC48L3NwYW4+Ci08YSBuYW1lPSJsMDAzOTkiPjwvYT4wMDM5OSAKLTxhIG5hbWU9ImwwMDQwMCI+PC9hPjAwNDAwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RydWN0IDwvc3Bhbj5FbnRpdHkKLTxhIG5hbWU9ImwwMDQwMSI+PC9hPjAwNDAxICAgICB7Ci08YSBuYW1lPSJsMDA0MDIiPjwvYT4wMDQwMiAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogICAgIHN0cjsKLTxhIG5hbWU9ImwwMDQwMyI+PC9hPjAwNDAzICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj51bnNpZ25lZDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+ICAgIHN0ckxlbmd0aDsKLTxhIG5hbWU9ImwwMDQwNCI+PC9hPjAwNDA0ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAgICAgICAgICAgIGNocjsKLTxhIG5hbWU9ImwwMDQwNSI+PC9hPjAwNDA1ICAgICB9OwotPGEgbmFtZT0ibDAwNDA2Ij48L2E+MDA0MDYgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5lbnVtPC9zcGFuPgotPGEgbmFtZT0ibDAwNDA3Ij48L2E+MDA0MDcgICAgIHsKLTxhIG5hbWU9ImwwMDQwOCI+PC9hPjAwNDA4ICAgICAgICAgTlVNX0VOVElUWSA9IDUsCi08YSBuYW1lPSJsMDA0MDkiPjwvYT4wMDQwOSAgICAgICAgIE1BWF9FTlRJVFlfTEVOR1RIID0gNgotPGEgbmFtZT0ibDAwNDEwIj48L2E+MDA0MTAgCi08YSBuYW1lPSJsMDA0MTEiPjwvYT4wMDQxMSAgICAgfTsKLTxhIG5hbWU9ImwwMDQxMiI+PC9hPjAwNDEyICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+c3RhdGljPC9zcGFuPiBFbnRpdHkgZW50aXR5WyBOVU1fRU5USVRZIF07Ci08YSBuYW1lPSJsMDA0MTMiPjwvYT4wMDQxMyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnN0YXRpYzwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBjb25kZW5zZVdoaXRlU3BhY2U7Ci08YSBuYW1lPSJsMDA0MTQiPjwvYT4wMDQxNCB9OwotPGEgbmFtZT0ibDAwNDE1Ij48L2E+MDA0MTUgCi08YSBuYW1lPSJsMDA0MTYiPjwvYT4wMDQxNiAKLTxhIG5hbWU9ImwwMDQyMyI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIj4wMDQyMzwvYT4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4gOiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCIgdGl0bGU9IlRpWG1sQmFzZSBpcyBhIGJhc2UgY2xhc3MgZm9yIGV2ZXJ5IGNsYXNzIGluIFRpbnlYbWwuIj5UaVhtbEJhc2U8L2E+Ci08YSBuYW1lPSJsMDA0MjQiPjwvYT4wMDQyNCB7Ci08YSBuYW1lPSJsMDA0MjUiPjwvYT4wMDQyNSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZyaWVuZDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiIHRpdGxlPSJBbHdheXMgdGhlIHRvcCBsZXZlbCBub2RlLiI+VGlYbWxEb2N1bWVudDwvYT47Ci08YSBuYW1lPSJsMDA0MjYiPjwvYT4wMDQyNiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZyaWVuZDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPjsKLTxhIG5hbWU9ImwwMDQyNyI+PC9hPjAwNDI3IAotPGEgbmFtZT0ibDAwNDI4Ij48L2E+MDA0MjggPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj46Ci08YSBuYW1lPSJsMDA0MjkiPjwvYT4wMDQyOSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEwgICAgPC9zcGFuPgotPGEgbmFtZT0ibDAwNDMwIj48L2E+MDA0MzAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAwNDM0Ij48L2E+MDA0MzQgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ZnJpZW5kPC9zcGFuPiBzdGQ6OmlzdHJlYW0mYW1wOyA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYjU3YmQ0MjY1NjNjOTI2ODQ0ZjY1YTc4NDEyZTE4YjkiIHRpdGxlPSJBbiBpbnB1dCBzdHJlYW0gb3BlcmF0b3IsIGZvciBldmVyeSBjbGFzcy4iPm9wZXJhdG9yICZndDsmZ3Q7IDwvYT4oc3RkOjppc3RyZWFtJmFtcDsgaW4sIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiZhbXA7IGJhc2UpOwotPGEgbmFtZT0ibDAwNDM1Ij48L2E+MDA0MzUgCi08YSBuYW1lPSJsMDA0NTIiPjwvYT4wMDQ1MiAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5mcmllbmQ8L3NwYW4+IHN0ZDo6b3N0cmVhbSZhbXA7IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4NmNkNDljZmIxN2E4NDRjMDAxMGIzMTM2YWM5NjZjNyIgdGl0bGU9IkFuIG91dHB1dCBzdHJlYW0gb3BlcmF0b3IsIGZvciBldmVyeSBjbGFzcy4iPm9wZXJhdG9yJmx0OyZsdDsgPC9hPihzdGQ6Om9zdHJlYW0mYW1wOyBvdXQsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+JmFtcDsgYmFzZSk7Ci08YSBuYW1lPSJsMDA0NTMiPjwvYT4wMDQ1MyAKLTxhIG5hbWU9ImwwMDQ1NSI+PC9hPjAwNDU1ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZyaWVuZDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODZjZDQ5Y2ZiMTdhODQ0YzAwMTBiMzEzNmFjOTY2YzciIHRpdGxlPSJBbiBvdXRwdXQgc3RyZWFtIG9wZXJhdG9yLCBmb3IgZXZlcnkgY2xhc3MuIj5vcGVyYXRvciZsdDsmbHQ7IDwvYT4oc3RkOjpzdHJpbmcmYW1wOyBvdXQsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+JmFtcDsgYmFzZSApOwotPGEgbmFtZT0ibDAwNDU2Ij48L2E+MDA0NTYgCi08YSBuYW1lPSJsMDA0NTciPjwvYT4wMDQ1NyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgotPGEgbmFtZT0ibDAwNDU4Ij48L2E+MDA0NTggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAwNDYyIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgzNmVkZWQ0OTIwYWI5ZTllZjI4NDk2ZjQ4Y2Q5NWEyIj4wMDQ2MjwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5lbnVtPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODM2ZWRlZDQ5MjBhYjllOWVmMjg0OTZmNDhjZDk1YTIiIHRpdGxlPSJUaGUgdHlwZXMgb2YgWE1MIG5vZGVzIHN1cHBvcnRlZCBieSBUaW55WG1sLiI+Tm9kZVR5cGU8L2E+Ci08YSBuYW1lPSJsMDA0NjMiPjwvYT4wMDQ2MyAgICAgewotPGEgbmFtZT0ibDAwNDY0Ij48L2E+MDA0NjQgICAgICAgICBUSU5ZWE1MX0RPQ1VNRU5ULAotPGEgbmFtZT0ibDAwNDY1Ij48L2E+MDA0NjUgICAgICAgICBUSU5ZWE1MX0VMRU1FTlQsCi08YSBuYW1lPSJsMDA0NjYiPjwvYT4wMDQ2NiAgICAgICAgIFRJTllYTUxfQ09NTUVOVCwKLTxhIG5hbWU9ImwwMDQ2NyI+PC9hPjAwNDY3ICAgICAgICAgVElOWVhNTF9VTktOT1dOLAotPGEgbmFtZT0ibDAwNDY4Ij48L2E+MDA0NjggICAgICAgICBUSU5ZWE1MX1RFWFQsCi08YSBuYW1lPSJsMDA0NjkiPjwvYT4wMDQ2OSAgICAgICAgIFRJTllYTUxfREVDTEFSQVRJT04sCi08YSBuYW1lPSJsMDA0NzAiPjwvYT4wMDQ3MCAgICAgICAgIFRJTllYTUxfVFlQRUNPVU5UCi08YSBuYW1lPSJsMDA0NzEiPjwvYT4wMDQ3MSAgICAgfTsKLTxhIG5hbWU9ImwwMDQ3MiI+PC9hPjAwNDcyIAotPGEgbmFtZT0ibDAwNDczIj48L2E+MDA0NzMgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiB+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KCk7Ci08YSBuYW1lPSJsMDA0NzQiPjwvYT4wMDQ3NCAKLTxhIG5hbWU9ImwwMDQ4NyI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3Nzk0M2ViOTBkMTJjMjg5MmIxMzM3YTlmNTkxOGI0MSI+MDA0ODc8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3Nzk0M2ViOTBkMTJjMjg5MmIxMzM3YTlmNTkxOGI0MSIgdGl0bGU9IlRoZSBtZWFuaW5nIG9mICZhbXA7IzM5O3ZhbHVlJmFtcDsjMzk7IGNoYW5nZXMgZm9yIHRoZSBzcGVjaWZpYyB0eXBlIG9mIFRpWG1sTm9kZS4iPlZhbHVlPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gdmFsdWUuY19zdHIgKCk7IH0KLTxhIG5hbWU9ImwwMDQ4OCI+PC9hPjAwNDg4IAotPGEgbmFtZT0ibDAwNDg5Ij48L2E+MDA0ODkgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgotPGEgbmFtZT0ibDAwNDkwIj48L2E+MDA0OTAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAwNDk0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTZkOWU1MDU2MTlkMzliZjUwYmZkOTYwOWM5MTY5ZWE1Ij4wMDQ5NDwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNmQ5ZTUwNTYxOWQzOWJmNTBiZmQ5NjA5YzkxNjllYTUiIHRpdGxlPSJSZXR1cm4gVmFsdWUoKSBhcyBhIHN0ZDo6c3RyaW5nLiI+VmFsdWVTdHI8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0IDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiB2YWx1ZTsgfQotPGEgbmFtZT0ibDAwNDk1Ij48L2E+MDA0OTUgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbmRpZjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDQ5NiI+PC9hPjAwNDk2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDQ5NyI+PC9hPjAwNDk3ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRJWE1MX1NUUklORyZhbXA7IFZhbHVlVFN0cigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gdmFsdWU7IH0KLTxhIG5hbWU9ImwwMDQ5OCI+PC9hPjAwNDk4IAotPGEgbmFtZT0ibDAwNTA4Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTJhMzgzMjljYTVkM2YyOGY5OGNlOTMyYjgyOTlhZTkwIj4wMDUwODwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTJhMzgzMjljYTVkM2YyOGY5OGNlOTMyYjgyOTlhZTkwIiB0aXRsZT0iQ2hhbmdlcyB0aGUgdmFsdWUgb2YgdGhlIG5vZGUuIj5TZXRWYWx1ZTwvYT4oPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogX3ZhbHVlKSB7IHZhbHVlID0gX3ZhbHVlO30KLTxhIG5hbWU9ImwwMDUwOSI+PC9hPjAwNTA5IAotPGEgbmFtZT0ibDAwNTEwIj48L2E+MDA1MTAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgotPGEgbmFtZT0ibDAwNTEyIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI1OThkNWY0NDgwNDJjMWFiYmVhZTQ1MDNkZDQ1ZmYyIj4wMDUxMjwvYT4gPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgIHZvaWQgU2V0VmFsdWUoIGNvbnN0IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlICkgIHsgdmFsdWUgPSBfdmFsdWU7IH08L3NwYW4+Ci08YSBuYW1lPSJsMDA1MTMiPjwvYT4wMDUxMyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbmRpZjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDUxNCI+PC9hPjAwNTE0IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDUxNiI+PC9hPjAwNTE2ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MDhlN2Y5NTNkZjYxZDRkMmQxMmY3MzE3MTU1MGE0YiIgdGl0bGU9IkRlbGV0ZSBhbGwgdGhlIGNoaWxkcmVuIG9mIHRoaXMgbm9kZS4gRG9lcyBub3QgYWZmZWN0ICZhbXA7IzM5O3RoaXMmYW1wOyMzOTsuIj5DbGVhcjwvYT4oKTsKLTxhIG5hbWU9ImwwMDUxNyI+PC9hPjAwNTE3IAotPGEgbmFtZT0ibDAwNTE5Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWI2NDMwNDMxMzJmZmQ3OTRmODYwMjY4NWQzNGE5ODJlIj4wMDUxOTwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWI2NDMwNDMxMzJmZmQ3OTRmODYwMjY4NWQzNGE5ODJlIiB0aXRsZT0iT25lIHN0ZXAgdXAgdGhlIERPTS4iPlBhcmVudDwvYT4oKSAgICAgICAgICAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBwYXJlbnQ7IH0KLTxhIG5hbWU9ImwwMDUyMCI+PC9hPjAwNTIwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWI2NDMwNDMxMzJmZmQ3OTRmODYwMjY4NWQzNGE5ODJlIiB0aXRsZT0iT25lIHN0ZXAgdXAgdGhlIERPTS4iPlBhcmVudDwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHBhcmVudDsgfQotPGEgbmFtZT0ibDAwNTIxIj48L2E+MDA1MjEgCi08YSBuYW1lPSJsMDA1MjIiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDRjOGVlZTI2YmJlMmQxYjI3NjIwMzhkZjlkZGUyZjAiPjAwNTIyPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NGM4ZWVlMjZiYmUyZDFiMjc2MjAzOGRmOWRkZTJmMCIgdGl0bGU9IlRoZSBmaXJzdCBjaGlsZCBvZiB0aGlzIG5vZGUuIFdpbGwgYmUgbnVsbCBpZiB0aGVyZSBhcmUgbm8gY2hpbGRyZW4uIj5GaXJzdENoaWxkPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgIGNvbnN0ICAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBmaXJzdENoaWxkOyB9ICAKLTxhIG5hbWU9ImwwMDUyMyI+PC9hPjAwNTIzICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NGM4ZWVlMjZiYmUyZDFiMjc2MjAzOGRmOWRkZTJmMCIgdGl0bGU9IlRoZSBmaXJzdCBjaGlsZCBvZiB0aGlzIG5vZGUuIFdpbGwgYmUgbnVsbCBpZiB0aGVyZSBhcmUgbm8gY2hpbGRyZW4uIj5GaXJzdENoaWxkPC9hPigpICAgICAgICAgICAgICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gZmlyc3RDaGlsZDsgfQotPGEgbmFtZT0ibDAwNTI0Ij48L2E+MDA1MjQgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDRjOGVlZTI2YmJlMmQxYjI3NjIwMzhkZjlkZGUyZjAiIHRpdGxlPSJUaGUgZmlyc3QgY2hpbGQgb2YgdGhpcyBub2RlLiBXaWxsIGJlIG51bGwgaWYgdGhlcmUgYXJlIG5vIGNoaWxkcmVuLiI+Rmlyc3RDaGlsZDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIHZhbHVlICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsgICAgICAgICAgICAKLTxhIG5hbWU9ImwwMDUyNSI+PC9hPjAwNTI1IAotPGEgbmFtZT0ibDAwNTI2Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWJjOGJmMzJiZTY0MTllYzQ1M2E3MzE4NjhkZTE5NTU0Ij4wMDUyNjwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWJjOGJmMzJiZTY0MTllYzQ1M2E3MzE4NjhkZTE5NTU0IiB0aXRsZT0iVGhlIGZpcnN0IGNoaWxkIG9mIHRoaXMgbm9kZSB3aXRoIHRoZSBtYXRjaGluZyAmYW1wOyMzOTt2YWx1ZSZhbXA7IzM5Oy4gV2lsbCBiZSBudWxsIGlmIG5vbmUuLi4iPkZpcnN0Q2hpbGQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBfdmFsdWUgKSB7Ci08YSBuYW1lPSJsMDA1MjciPjwvYT4wMDUyNyAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBDYWxsIHRocm91Z2ggdG8gdGhlIGNvbnN0IHZlcnNpb24gLSBzYWZlIHNpbmNlIG5vdGhpbmcgaXMgY2hhbmdlZC4gRXhpdGluZyBzeW50YXg6IGNhc3QgdGhpcyB0byBhIGNvbnN0IChhbHdheXMgc2FmZSk8L3NwYW4+Ci08YSBuYW1lPSJsMDA1MjgiPjwvYT4wMDUyOCAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBjYWxsIHRoZSBtZXRob2QsIGNhc3QgdGhlIHJldHVybiBiYWNrIHRvIG5vbi1jb25zdC48L3NwYW4+Ci08YSBuYW1lPSJsMDA1MjkiPjwvYT4wMDUyOSAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3RfY2FzdCZsdDs8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPHNwYW4gY2xhc3M9ImtleXdvcmQiPiZndDs8L3NwYW4+ICgoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0X2Nhc3QmbHQ7PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3QgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPHNwYW4gY2xhc3M9ImtleXdvcmQiPiZndDs8L3NwYW4+KDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPikpLSZndDtGaXJzdENoaWxkKCBfdmFsdWUgKSk7Ci08YSBuYW1lPSJsMDA1MzAiPjwvYT4wMDUzMCAgICAgfQotPGEgbmFtZT0ibDAwNTMxIj48L2E+MDA1MzEgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiBMYXN0Q2hpbGQoKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBsYXN0Q2hpbGQ7IH0gICAgICAgCi08YSBuYW1lPSJsMDA1MzIiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjQzMmQyYjI0OTVmNmNhZjljYjQyNzhkZjcwNmEwMzEiPjAwNTMyPC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjQzMmQyYjI0OTVmNmNhZjljYjQyNzhkZjcwNmEwMzEiIHRpdGxlPSJUaGUgbGFzdCBjaGlsZCBvZiB0aGlzIG5vZGUuIFdpbGwgYmUgbnVsbCBpZiB0aGVyZSBhcmUgbm8gY2hpbGRyZW4uIj5MYXN0Q2hpbGQ8L2E+KCkgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGxhc3RDaGlsZDsgfQotPGEgbmFtZT0ibDAwNTMzIj48L2E+MDA1MzMgICAgIAotPGEgbmFtZT0ibDAwNTM0Ij48L2E+MDA1MzQgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiBMYXN0Q2hpbGQoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIHZhbHVlICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsgICAgICAgICAKLTxhIG5hbWU9ImwwMDUzNSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiYWQ1YmYxMDU5YzQ4MTI3Yjk1ODcxMWVmODllOGU1ZCI+MDA1MzU8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FiYWQ1YmYxMDU5YzQ4MTI3Yjk1ODcxMWVmODllOGU1ZCIgdGl0bGU9IlRoZSBsYXN0IGNoaWxkIG9mIHRoaXMgbm9kZSBtYXRjaGluZyAmYW1wOyMzOTt2YWx1ZSZhbXA7IzM5Oy4gV2lsbCBiZSBudWxsIGlmIHRoZXJlIGFyZSBuby4uLiI+TGFzdENoaWxkPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogX3ZhbHVlICkgewotPGEgbmFtZT0ibDAwNTM2Ij48L2E+MDA1MzYgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0X2Nhc3QmbHQ7PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4mZ3Q7PC9zcGFuPiAoKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdF9jYXN0Jmx0Ozwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0IDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4mZ3Q7PC9zcGFuPig8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4pKS0mZ3Q7TGFzdENoaWxkKCBfdmFsdWUgKSk7Ci08YSBuYW1lPSJsMDA1MzciPjwvYT4wMDUzNyAgICAgfQotPGEgbmFtZT0ibDAwNTM4Ij48L2E+MDA1MzggCi08YSBuYW1lPSJsMDA1MzkiPjwvYT4wMDUzOSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Ci08YSBuYW1lPSJsMDA1NDAiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDdmNjIwMGE1OTU2YzcyM2M1YjUyZDcwZjI5YzQ2ZjYiPjAwNTQwPC9hPiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDdmNjIwMGE1OTU2YzcyM2M1YjUyZDcwZjI5YzQ2ZjYiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPkZpcnN0Q2hpbGQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICA8L3NwYW4+eyAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDdmNjIwMGE1OTU2YzcyM2M1YjUyZDcwZjI5YzQ2ZjYiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPkZpcnN0Q2hpbGQ8L2E+IChfdmFsdWUuY19zdHIgKCkpOyAgICB9ICAgCi08YSBuYW1lPSJsMDA1NDEiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTBkMjY2OWNjYjVlMjllMDJmY2IwZTQ0MDg2ODVlZjYiPjAwNTQxPC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTBkMjY2OWNjYjVlMjllMDJmY2IwZTQ0MDg2ODVlZjYiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPkZpcnN0Q2hpbGQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlICkgICAgICAgICAgICAgIHsgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTEwZDI2NjljY2I1ZTI5ZTAyZmNiMGU0NDA4Njg1ZWY2IiB0aXRsZT0iU1RMIHN0ZDo6c3RyaW5nIGZvcm0uIj5GaXJzdENoaWxkPC9hPiAoX3ZhbHVlLmNfc3RyICgpKTsgICAgfSAgIAotPGEgbmFtZT0ibDAwNTQyIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTI1NmQwY2RiZmNmZWNjYWU4M2YzYTFjOTc0N2E4YjYzIj4wMDU0MjwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjU2ZDBjZGJmY2ZlY2NhZTgzZjNhMWM5NzQ3YThiNjMiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPkxhc3RDaGlsZDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUgKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICA8L3NwYW4+eyAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMjU2ZDBjZGJmY2ZlY2NhZTgzZjNhMWM5NzQ3YThiNjMiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPkxhc3RDaGlsZDwvYT4gKF92YWx1ZS5jX3N0ciAoKSk7IH0gICAKLTxhIG5hbWU9ImwwMDU0MyI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2OTc3MmM5MjAyZjcwNTUzZjk0MGIxNWMwNmIwN2JlMyI+MDA1NDM8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2OTc3MmM5MjAyZjcwNTUzZjk0MGIxNWMwNmIwN2JlMyIgdGl0bGU9IlNUTCBzdGQ6OnN0cmluZyBmb3JtLiI+TGFzdENoaWxkPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSApICAgICAgICAgICAgICAgeyAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNjk3NzJjOTIwMmY3MDU1M2Y5NDBiMTVjMDZiMDdiZTMiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPkxhc3RDaGlsZDwvYT4gKF92YWx1ZS5jX3N0ciAoKSk7IH0gICAKLTxhIG5hbWU9ImwwMDU0NCI+PC9hPjAwNTQ0IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDA1NDUiPjwvYT4wMDU0NSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDA1NjIiPjwvYT4wMDU2MiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4NjIxMTk2YmEzNzA1ZmEyMjZiZWY0YTc2MWNjNTFiNiIgdGl0bGU9IkFuIGFsdGVybmF0ZSB3YXkgdG8gd2FsayB0aGUgY2hpbGRyZW4gb2YgYSBub2RlLiI+SXRlcmF0ZUNoaWxkcmVuPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIHByZXZpb3VzICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMDU2MyI+PC9hPjAwNTYzICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4NjIxMTk2YmEzNzA1ZmEyMjZiZWY0YTc2MWNjNTFiNiIgdGl0bGU9IkFuIGFsdGVybmF0ZSB3YXkgdG8gd2FsayB0aGUgY2hpbGRyZW4gb2YgYSBub2RlLiI+SXRlcmF0ZUNoaWxkcmVuPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIHByZXZpb3VzICkgewotPGEgbmFtZT0ibDAwNTY0Ij48L2E+MDA1NjQgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0X2Nhc3QmbHQ7PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4mZ3Q7PC9zcGFuPiggKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdF9jYXN0Jmx0Ozwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0IDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4mZ3Q7PC9zcGFuPig8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4pKS0mZ3Q7SXRlcmF0ZUNoaWxkcmVuKCBwcmV2aW91cyApICk7Ci08YSBuYW1lPSJsMDA1NjUiPjwvYT4wMDU2NSAgICAgfQotPGEgbmFtZT0ibDAwNTY2Ij48L2E+MDA1NjYgCi08YSBuYW1lPSJsMDA1NjgiPjwvYT4wMDU2OCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4NjIxMTk2YmEzNzA1ZmEyMjZiZWY0YTc2MWNjNTFiNiIgdGl0bGU9IkFuIGFsdGVybmF0ZSB3YXkgdG8gd2FsayB0aGUgY2hpbGRyZW4gb2YgYSBub2RlLiI+SXRlcmF0ZUNoaWxkcmVuPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogdmFsdWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiBwcmV2aW91cyApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDA1NjkiPjwvYT4wMDU2OSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODYyMTE5NmJhMzcwNWZhMjI2YmVmNGE3NjFjYzUxYjYiIHRpdGxlPSJBbiBhbHRlcm5hdGUgd2F5IHRvIHdhbGsgdGhlIGNoaWxkcmVuIG9mIGEgbm9kZS4iPkl0ZXJhdGVDaGlsZHJlbjwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIF92YWx1ZSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIHByZXZpb3VzICkgewotPGEgbmFtZT0ibDAwNTcwIj48L2E+MDA1NzAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0X2Nhc3QmbHQ7PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4mZ3Q7PC9zcGFuPiggKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdF9jYXN0Jmx0Ozwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0IDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4mZ3Q7PC9zcGFuPig8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4pKS0mZ3Q7SXRlcmF0ZUNoaWxkcmVuKCBfdmFsdWUsIHByZXZpb3VzICkgKTsKLTxhIG5hbWU9ImwwMDU3MSI+PC9hPjAwNTcxICAgICB9Ci08YSBuYW1lPSJsMDA1NzIiPjwvYT4wMDU3MiAKLTxhIG5hbWU9ImwwMDU3MyI+PC9hPjAwNTczIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDU3NCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExY2JhYWY4ZTgyYzA5YWQ3NjNkNTI2MTZkNzU3MjRkZiI+MDA1NzQ8L2E+IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExY2JhYWY4ZTgyYzA5YWQ3NjNkNTI2MTZkNzU3MjRkZiIgdGl0bGU9IlNUTCBzdGQ6OnN0cmluZyBmb3JtLiI+SXRlcmF0ZUNoaWxkcmVuPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIHByZXZpb3VzICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICA8L3NwYW4+eyAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMWNiYWFmOGU4MmMwOWFkNzYzZDUyNjE2ZDc1NzI0ZGYiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPkl0ZXJhdGVDaGlsZHJlbjwvYT4gKF92YWx1ZS5jX3N0ciAoKSwgcHJldmlvdXMpOyB9ICAgCi08YSBuYW1lPSJsMDA1NzUiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTZlOWFkNTNlMmY1NDQ1YjE0YmYzMjVjOTBhYTg2MmMiPjAwNTc1PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTZlOWFkNTNlMmY1NDQ1YjE0YmYzMjVjOTBhYTg2MmMiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPkl0ZXJhdGVDaGlsZHJlbjwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiBwcmV2aW91cyApIHsgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNmU5YWQ1M2UyZjU0NDViMTRiZjMyNWM5MGFhODYyYyIgdGl0bGU9IlNUTCBzdGQ6OnN0cmluZyBmb3JtLiI+SXRlcmF0ZUNoaWxkcmVuPC9hPiAoX3ZhbHVlLmNfc3RyICgpLCBwcmV2aW91cyk7IH0gICAKLTxhIG5hbWU9ImwwMDU3NiI+PC9hPjAwNTc2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDA1NzciPjwvYT4wMDU3NyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDA1ODEiPjwvYT4wMDU4MSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZDdkNDYzMGUxYTJhOTE2ZWRkYTE2YmUyMjQ0OGE4YmEiIHRpdGxlPSJBZGQgYSBuZXcgbm9kZSByZWxhdGVkIHRvIHRoaXMuIj5JbnNlcnRFbmRDaGlsZDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+JmFtcDsgYWRkVGhpcyApOwotPGEgbmFtZT0ibDAwNTgyIj48L2E+MDA1ODIgCi08YSBuYW1lPSJsMDA1ODMiPjwvYT4wMDU4MyAKLTxhIG5hbWU9ImwwMDU5MyI+PC9hPjAwNTkzICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1ZDI5NDQyYWU0NmRlNmQwMTY4NDI5MTU2MTk3YmZjNiIgdGl0bGU9IkFkZCBhIG5ldyBub2RlIHJlbGF0ZWQgdG8gdGhpcy4iPkxpbmtFbmRDaGlsZDwvYT4oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogYWRkVGhpcyApOwotPGEgbmFtZT0ibDAwNTk0Ij48L2E+MDA1OTQgCi08YSBuYW1lPSJsMDA1OTgiPjwvYT4wMDU5OCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMGMxNDZmYTJmZmYwMTU3YjY4MTU5NDEwMmY0OGNiYzciIHRpdGxlPSJBZGQgYSBuZXcgbm9kZSByZWxhdGVkIHRvIHRoaXMuIj5JbnNlcnRCZWZvcmVDaGlsZDwvYT4oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogYmVmb3JlVGhpcywgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4mYW1wOyBhZGRUaGlzICk7Ci08YSBuYW1lPSJsMDA1OTkiPjwvYT4wMDU5OSAKLTxhIG5hbWU9ImwwMDYwMyI+PC9hPjAwNjAzICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FkOWI3NWU1NGVjMTkzMDFjOGI0ZDVmZjU4M2QwYjNkNSIgdGl0bGU9IkFkZCBhIG5ldyBub2RlIHJlbGF0ZWQgdG8gdGhpcy4iPkluc2VydEFmdGVyQ2hpbGQ8L2E+KCAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiBhZnRlclRoaXMsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+JmFtcDsgYWRkVGhpcyApOwotPGEgbmFtZT0ibDAwNjA0Ij48L2E+MDA2MDQgCi08YSBuYW1lPSJsMDA2MDgiPjwvYT4wMDYwOCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMGM0OWU3MzlhMTdiOTkzODA1MGMyMmNkODk2MTdmYmQiIHRpdGxlPSJSZXBsYWNlIGEgY2hpbGQgb2YgdGhpcyBub2RlLiI+UmVwbGFjZUNoaWxkPC9hPiggPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiByZXBsYWNlVGhpcywgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4mYW1wOyB3aXRoVGhpcyApOwotPGEgbmFtZT0ibDAwNjA5Ij48L2E+MDA2MDkgCi08YSBuYW1lPSJsMDA2MTEiPjwvYT4wMDYxMSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZTE5ZDg1MTBlZmM5MDU5NjU1MmY0ZmVlYWM5YThmYmYiIHRpdGxlPSJEZWxldGUgYSBjaGlsZCBvZiB0aGlzIG5vZGUuIj5SZW1vdmVDaGlsZDwvYT4oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogcmVtb3ZlVGhpcyApOwotPGEgbmFtZT0ibDAwNjEyIj48L2E+MDA2MTIgCi08YSBuYW1lPSJsMDA2MTQiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYzJjZDg5Mjc2ODcyNjI3MGU1MTFiMmFiMzJkZTRkMTAiPjAwNjE0PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjMmNkODkyNzY4NzI2MjcwZTUxMWIyYWIzMmRlNGQxMCIgdGl0bGU9Ik5hdmlnYXRlIHRvIGEgc2libGluZyBub2RlLiI+UHJldmlvdXNTaWJsaW5nPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgICAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBwcmV2OyB9Ci08YSBuYW1lPSJsMDA2MTUiPjwvYT4wMDYxNSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYzJjZDg5Mjc2ODcyNjI3MGU1MTFiMmFiMzJkZTRkMTAiIHRpdGxlPSJOYXZpZ2F0ZSB0byBhIHNpYmxpbmcgbm9kZS4iPlByZXZpb3VzU2libGluZzwvYT4oKSAgICAgICAgICAgICAgICAgICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHByZXY7IH0KLTxhIG5hbWU9ImwwMDYxNiI+PC9hPjAwNjE2IAotPGEgbmFtZT0ibDAwNjE4Ij48L2E+MDA2MTggICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYzJjZDg5Mjc2ODcyNjI3MGU1MTFiMmFiMzJkZTRkMTAiIHRpdGxlPSJOYXZpZ2F0ZSB0byBhIHNpYmxpbmcgbm9kZS4iPlByZXZpb3VzU2libGluZzwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMDYxOSI+PC9hPjAwNjE5ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjMmNkODkyNzY4NzI2MjcwZTUxMWIyYWIzMmRlNGQxMCIgdGl0bGU9Ik5hdmlnYXRlIHRvIGEgc2libGluZyBub2RlLiI+UHJldmlvdXNTaWJsaW5nPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICpfcHJldiApIHsKLTxhIG5hbWU9ImwwMDYyMCI+PC9hPjAwNjIwICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdF9jYXN0Jmx0Ozwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Jmd0Ozwvc3Bhbj4oICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3RfY2FzdCZsdDs8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdCA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Jmd0Ozwvc3Bhbj4oPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+KSktJmd0O1ByZXZpb3VzU2libGluZyggX3ByZXYgKSApOwotPGEgbmFtZT0ibDAwNjIxIj48L2E+MDA2MjEgICAgIH0KLTxhIG5hbWU9ImwwMDYyMiI+PC9hPjAwNjIyIAotPGEgbmFtZT0ibDAwNjIzIj48L2E+MDA2MjMgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgotPGEgbmFtZT0ibDAwNjI0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY1ODI3NmY1N2QzNWQ1ZDQyNTZkMWRjMWEyYzM5OGFiIj4wMDYyNDwvYT4gPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPiAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTY1ODI3NmY1N2QzNWQ1ZDQyNTZkMWRjMWEyYzM5OGFiIiB0aXRsZT0iU1RMIHN0ZDo6c3RyaW5nIGZvcm0uIj5QcmV2aW91c1NpYmxpbmc8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0IDwvc3Bhbj57ICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2NTgyNzZmNTdkMzVkNWQ0MjU2ZDFkYzFhMmMzOThhYiIgdGl0bGU9IlNUTCBzdGQ6OnN0cmluZyBmb3JtLiI+UHJldmlvdXNTaWJsaW5nPC9hPiAoX3ZhbHVlLmNfc3RyICgpKTsgICB9ICAgCi08YSBuYW1lPSJsMDA2MjUiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhY2M4YTA0MzRjN2Y0MDFkNGEzYjZkZWU3N2MxYTU5MTIiPjAwNjI1PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhY2M4YTA0MzRjN2Y0MDFkNGEzYjZkZWU3N2MxYTU5MTIiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPlByZXZpb3VzU2libGluZzwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUgKSAgICAgICAgICAgICB7ICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjYzhhMDQzNGM3ZjQwMWQ0YTNiNmRlZTc3YzFhNTkxMiIgdGl0bGU9IlNUTCBzdGQ6OnN0cmluZyBmb3JtLiI+UHJldmlvdXNTaWJsaW5nPC9hPiAoX3ZhbHVlLmNfc3RyICgpKTsgICB9ICAgCi08YSBuYW1lPSJsMDA2MjYiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMWI5NGQyZjdmYTdhYjI1YTVhOGU4ZDQzNDBjNDQ5YzkiPjAwNjI2PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExYjk0ZDJmN2ZhN2FiMjVhNWE4ZThkNDM0MGM0NDljOSIgdGl0bGU9IlNUTCBzdGQ6OnN0cmluZyBmb3JtLiI+TmV4dFNpYmxpbmc8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICA8L3NwYW4+eyAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMWI5NGQyZjdmYTdhYjI1YTVhOGU4ZDQzNDBjNDQ5YzkiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPk5leHRTaWJsaW5nPC9hPiAoX3ZhbHVlLmNfc3RyICgpKTsgICB9ICAgCi08YSBuYW1lPSJsMDA2MjciPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTc1N2MxZjRkMDFlOGM5NTk2ZmZkYmQ1NjFjNzZhZWEiPjAwNjI3PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMTc1N2MxZjRkMDFlOGM5NTk2ZmZkYmQ1NjFjNzZhZWEiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPk5leHRTaWJsaW5nPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSkgICAgICAgICAgICAgICAgICB7ICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2ExNzU3YzFmNGQwMWU4Yzk1OTZmZmRiZDU2MWM3NmFlYSIgdGl0bGU9IlNUTCBzdGQ6OnN0cmluZyBmb3JtLiI+TmV4dFNpYmxpbmc8L2E+IChfdmFsdWUuY19zdHIgKCkpOyAgIH0gICAKLTxhIG5hbWU9ImwwMDYyOCI+PC9hPjAwNjI4IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDA2MjkiPjwvYT4wMDYyOSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDA2MzEiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjg1NGJhZWJhMzg0ZjVmZTk4NTlmNWFlZTAzYjU0OGUiPjAwNjMxPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmODU0YmFlYmEzODRmNWZlOTg1OWY1YWVlMDNiNTQ4ZSIgdGl0bGU9Ik5hdmlnYXRlIHRvIGEgc2libGluZyBub2RlLiI+TmV4dFNpYmxpbmc8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgICAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBuZXh0OyB9Ci08YSBuYW1lPSJsMDA2MzIiPjwvYT4wMDYzMiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjg1NGJhZWJhMzg0ZjVmZTk4NTlmNWFlZTAzYjU0OGUiIHRpdGxlPSJOYXZpZ2F0ZSB0byBhIHNpYmxpbmcgbm9kZS4iPk5leHRTaWJsaW5nPC9hPigpICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IG5leHQ7IH0KLTxhIG5hbWU9ImwwMDYzMyI+PC9hPjAwNjMzIAotPGEgbmFtZT0ibDAwNjM1Ij48L2E+MDA2MzUgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjg1NGJhZWJhMzg0ZjVmZTk4NTlmNWFlZTAzYjU0OGUiIHRpdGxlPSJOYXZpZ2F0ZSB0byBhIHNpYmxpbmcgbm9kZS4iPk5leHRTaWJsaW5nPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAwNjM2Ij48L2E+MDA2MzYgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWY4NTRiYWViYTM4NGY1ZmU5ODU5ZjVhZWUwM2I1NDhlIiB0aXRsZT0iTmF2aWdhdGUgdG8gYSBzaWJsaW5nIG5vZGUuIj5OZXh0U2libGluZzwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogX25leHQgKSB7Ci08YSBuYW1lPSJsMDA2MzciPjwvYT4wMDYzNyAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3RfY2FzdCZsdDs8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPHNwYW4gY2xhc3M9ImtleXdvcmQiPiZndDs8L3NwYW4+KCAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0X2Nhc3QmbHQ7PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3QgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPHNwYW4gY2xhc3M9ImtleXdvcmQiPiZndDs8L3NwYW4+KDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPikpLSZndDtOZXh0U2libGluZyggX25leHQgKSApOwotPGEgbmFtZT0ibDAwNjM4Ij48L2E+MDA2MzggICAgIH0KLTxhIG5hbWU9ImwwMDYzOSI+PC9hPjAwNjM5IAotPGEgbmFtZT0ibDAwNjQ0Ij48L2E+MDA2NDQgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3M2FjZjkyOWQ0OWQxMGJkMGU1ZmIzZDMxYjAzNzJkMSIgdGl0bGU9IkNvbnZlbmllbmNlIGZ1bmN0aW9uIHRvIGdldCB0aHJvdWdoIGVsZW1lbnRzLiI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDA2NDUiPjwvYT4wMDY0NSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3M2FjZjkyOWQ0OWQxMGJkMGU1ZmIzZDMxYjAzNzJkMSIgdGl0bGU9IkNvbnZlbmllbmNlIGZ1bmN0aW9uIHRvIGdldCB0aHJvdWdoIGVsZW1lbnRzLiI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPigpIHsKLTxhIG5hbWU9ImwwMDY0NiI+PC9hPjAwNjQ2ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdF9jYXN0Jmx0Ozwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4qIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4mZ3Q7PC9zcGFuPiggKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdF9jYXN0Jmx0Ozwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0IDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4mZ3Q7PC9zcGFuPig8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4pKS0mZ3Q7TmV4dFNpYmxpbmdFbGVtZW50KCkgKTsKLTxhIG5hbWU9ImwwMDY0NyI+PC9hPjAwNjQ3ICAgICB9Ci08YSBuYW1lPSJsMDA2NDgiPjwvYT4wMDY0OCAKLTxhIG5hbWU9ImwwMDY1MyI+PC9hPjAwNjUzICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIiB0aXRsZT0iVGhlIGVsZW1lbnQgaXMgYSBjb250YWluZXIgY2xhc3MuIj5UaVhtbEVsZW1lbnQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNzNhY2Y5MjlkNDlkMTBiZDBlNWZiM2QzMWIwMzcyZDEiIHRpdGxlPSJDb252ZW5pZW5jZSBmdW5jdGlvbiB0byBnZXQgdGhyb3VnaCBlbGVtZW50cy4iPk5leHRTaWJsaW5nRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMDY1NCI+PC9hPjAwNjU0ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTczYWNmOTI5ZDQ5ZDEwYmQwZTVmYjNkMzFiMDM3MmQxIiB0aXRsZT0iQ29udmVuaWVuY2UgZnVuY3Rpb24gdG8gZ2V0IHRocm91Z2ggZWxlbWVudHMuIj5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKl9uZXh0ICkgewotPGEgbmFtZT0ibDAwNjU1Ij48L2E+MDA2NTUgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0X2Nhc3QmbHQ7PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiogPHNwYW4gY2xhc3M9ImtleXdvcmQiPiZndDs8L3NwYW4+KCAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0X2Nhc3QmbHQ7PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3QgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPHNwYW4gY2xhc3M9ImtleXdvcmQiPiZndDs8L3NwYW4+KDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPikpLSZndDtOZXh0U2libGluZ0VsZW1lbnQoIF9uZXh0ICkgKTsKLTxhIG5hbWU9ImwwMDY1NiI+PC9hPjAwNjU2ICAgICB9Ci08YSBuYW1lPSJsMDA2NTciPjwvYT4wMDY1NyAKLTxhIG5hbWU9ImwwMDY1OCI+PC9hPjAwNjU4IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDY1OSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3NTcyZDBhZjlkMWU2OTZlZTNmMDVkOGJiNWViYjQ2MyI+MDA2NTk8L2E+IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTc1NzJkMGFmOWQxZTY5NmVlM2YwNWQ4YmI1ZWJiNDYzIiB0aXRsZT0iU1RMIHN0ZDo6c3RyaW5nIGZvcm0uIj5OZXh0U2libGluZ0VsZW1lbnQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgPC9zcGFuPnsgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTc1NzJkMGFmOWQxZTY5NmVlM2YwNWQ4YmI1ZWJiNDYzIiB0aXRsZT0iU1RMIHN0ZDo6c3RyaW5nIGZvcm0uIj5OZXh0U2libGluZ0VsZW1lbnQ8L2E+IChfdmFsdWUuY19zdHIgKCkpOyAgICB9ICAgCi08YSBuYW1lPSJsMDA2NjAiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTA2OTU4ZTM0NDA2NzI5YTRlNGM1MzI2ZWEzOWQwODEiPjAwNjYwPC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E1MDY5NThlMzQ0MDY3MjlhNGU0YzUzMjZlYTM5ZDA4MSIgdGl0bGU9IlNUTCBzdGQ6OnN0cmluZyBmb3JtLiI+TmV4dFNpYmxpbmdFbGVtZW50PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF92YWx1ZSkgICAgICAgICAgICAgICAgeyAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTA2OTU4ZTM0NDA2NzI5YTRlNGM1MzI2ZWEzOWQwODEiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPk5leHRTaWJsaW5nRWxlbWVudDwvYT4gKF92YWx1ZS5jX3N0ciAoKSk7ICAgIH0gICAKLTxhIG5hbWU9ImwwMDY2MSI+PC9hPjAwNjYxIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDA2NjIiPjwvYT4wMDY2MiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDA2NjQiPjwvYT4wMDY2NCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWY0ZmI2NTJmNmJkNzlhZTBkNWNlN2QwZjdkM2MwZmJhIiB0aXRsZT0iQ29udmVuaWVuY2UgZnVuY3Rpb24gdG8gZ2V0IHRocm91Z2ggZWxlbWVudHMuIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAwNjY1Ij48L2E+MDA2NjUgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIiB0aXRsZT0iVGhlIGVsZW1lbnQgaXMgYSBjb250YWluZXIgY2xhc3MuIj5UaVhtbEVsZW1lbnQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjRmYjY1MmY2YmQ3OWFlMGQ1Y2U3ZDBmN2QzYzBmYmEiIHRpdGxlPSJDb252ZW5pZW5jZSBmdW5jdGlvbiB0byBnZXQgdGhyb3VnaCBlbGVtZW50cy4iPkZpcnN0Q2hpbGRFbGVtZW50PC9hPigpIHsKLTxhIG5hbWU9ImwwMDY2NiI+PC9hPjAwNjY2ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdF9jYXN0Jmx0Ozwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4qIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4mZ3Q7PC9zcGFuPiggKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdF9jYXN0Jmx0Ozwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0IDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4mZ3Q7PC9zcGFuPig8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4pKS0mZ3Q7Rmlyc3RDaGlsZEVsZW1lbnQoKSApOwotPGEgbmFtZT0ibDAwNjY3Ij48L2E+MDA2NjcgICAgIH0KLTxhIG5hbWU9ImwwMDY2OCI+PC9hPjAwNjY4IAotPGEgbmFtZT0ibDAwNjcwIj48L2E+MDA2NzAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmNGZiNjUyZjZiZDc5YWUwZDVjZTdkMGY3ZDNjMGZiYSIgdGl0bGU9IkNvbnZlbmllbmNlIGZ1bmN0aW9uIHRvIGdldCB0aHJvdWdoIGVsZW1lbnRzLiI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBfdmFsdWUgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAwNjcxIj48L2E+MDA2NzEgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIiB0aXRsZT0iVGhlIGVsZW1lbnQgaXMgYSBjb250YWluZXIgY2xhc3MuIj5UaVhtbEVsZW1lbnQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjRmYjY1MmY2YmQ3OWFlMGQ1Y2U3ZDBmN2QzYzBmYmEiIHRpdGxlPSJDb252ZW5pZW5jZSBmdW5jdGlvbiB0byBnZXQgdGhyb3VnaCBlbGVtZW50cy4iPkZpcnN0Q2hpbGRFbGVtZW50PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogX3ZhbHVlICkgewotPGEgbmFtZT0ibDAwNjcyIj48L2E+MDA2NzIgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0X2Nhc3QmbHQ7PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiogPHNwYW4gY2xhc3M9ImtleXdvcmQiPiZndDs8L3NwYW4+KCAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0X2Nhc3QmbHQ7PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3QgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPHNwYW4gY2xhc3M9ImtleXdvcmQiPiZndDs8L3NwYW4+KDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPikpLSZndDtGaXJzdENoaWxkRWxlbWVudCggX3ZhbHVlICkgKTsKLTxhIG5hbWU9ImwwMDY3MyI+PC9hPjAwNjczICAgICB9Ci08YSBuYW1lPSJsMDA2NzQiPjwvYT4wMDY3NCAKLTxhIG5hbWU9ImwwMDY3NSI+PC9hPjAwNjc1IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDY3NiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzMjdhZDRiYmQ5MDA3M2M1ZGZjOTMxYjA3MzE0ZjVmNyI+MDA2NzY8L2E+IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMyN2FkNGJiZDkwMDczYzVkZmM5MzFiMDczMTRmNWY3IiB0aXRsZT0iU1RMIHN0ZDo6c3RyaW5nIGZvcm0uIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUgKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgPC9zcGFuPnsgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTMyN2FkNGJiZDkwMDczYzVkZmM5MzFiMDczMTRmNWY3IiB0aXRsZT0iU1RMIHN0ZDo6c3RyaW5nIGZvcm0uIj5GaXJzdENoaWxkRWxlbWVudDwvYT4gKF92YWx1ZS5jX3N0ciAoKSk7IH0gICAKLTxhIG5hbWU9ImwwMDY3NyI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3ZjFkNzI5MTg4MDUzNGMxZTVjZGViMzkyZDhjMWY0NSI+MDA2Nzc8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTdmMWQ3MjkxODgwNTM0YzFlNWNkZWIzOTJkOGMxZjQ1IiB0aXRsZT0iU1RMIHN0ZDo6c3RyaW5nIGZvcm0uIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUgKSAgICAgICAgICAgICAgICB7ICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3ZjFkNzI5MTg4MDUzNGMxZTVjZGViMzkyZDhjMWY0NSIgdGl0bGU9IlNUTCBzdGQ6OnN0cmluZyBmb3JtLiI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+IChfdmFsdWUuY19zdHIgKCkpOyB9ICAgCi08YSBuYW1lPSJsMDA2NzgiPjwvYT4wMDY3OCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgotPGEgbmFtZT0ibDAwNjc5Ij48L2E+MDA2NzkgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAwNjg0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTU3Yjk5ZDVjOTdkNjdhNDJiOTc1MmY1MjEwYTFiYTVlIj4wMDY4NDwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNTdiOTlkNWM5N2Q2N2E0MmI5NzUyZjUyMTBhMWJhNWUiIHRpdGxlPSJRdWVyeSB0aGUgdHlwZSAoYXMgYW4gZW51bWVyYXRlZCB2YWx1ZSwgYWJvdmUpIG9mIHRoaXMgbm9kZS4iPlR5cGU8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiB0eXBlOyB9Ci08YSBuYW1lPSJsMDA2ODUiPjwvYT4wMDY4NSAKLTxhIG5hbWU9ImwwMDY4OSI+PC9hPjAwNjg5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgdGl0bGU9IkFsd2F5cyB0aGUgdG9wIGxldmVsIG5vZGUuIj5UaVhtbERvY3VtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTgwZTM5N2ZhOTczY2Y1MzIzZTMzYjA3MTU0YjAyNGYzIiB0aXRsZT0iUmV0dXJuIGEgcG9pbnRlciB0byB0aGUgRG9jdW1lbnQgdGhpcyBub2RlIGxpdmVzIGluLiI+R2V0RG9jdW1lbnQ8L2E+KCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMDY5MCI+PC9hPjAwNjkwICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiIHRpdGxlPSJBbHdheXMgdGhlIHRvcCBsZXZlbCBub2RlLiI+VGlYbWxEb2N1bWVudDwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E4MGUzOTdmYTk3M2NmNTMyM2UzM2IwNzE1NGIwMjRmMyIgdGl0bGU9IlJldHVybiBhIHBvaW50ZXIgdG8gdGhlIERvY3VtZW50IHRoaXMgbm9kZSBsaXZlcyBpbi4iPkdldERvY3VtZW50PC9hPigpIHsKLTxhIG5hbWU9ImwwMDY5MSI+PC9hPjAwNjkxICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdF9jYXN0Jmx0Ozwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIiB0aXRsZT0iQWx3YXlzIHRoZSB0b3AgbGV2ZWwgbm9kZS4iPlRpWG1sRG9jdW1lbnQ8L2E+KiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Jmd0Ozwvc3Bhbj4oICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3RfY2FzdCZsdDs8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdCA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Jmd0Ozwvc3Bhbj4oPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+KSktJmd0O0dldERvY3VtZW50KCkgKTsKLTxhIG5hbWU9ImwwMDY5MiI+PC9hPjAwNjkyICAgICB9Ci08YSBuYW1lPSJsMDA2OTMiPjwvYT4wMDY5MyAKLTxhIG5hbWU9ImwwMDY5NSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FlZWQyMWFkMzA2MzBlZjZlN2ZhZjA5NjEyN2VkYzlmMyI+MDA2OTU8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FlZWQyMWFkMzA2MzBlZjZlN2ZhZjA5NjEyN2VkYzlmMyIgdGl0bGU9IlJldHVybnMgdHJ1ZSBpZiB0aGlzIG5vZGUgaGFzIG5vIGNoaWxkcmVuLiI+Tm9DaGlsZHJlbjwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gIWZpcnN0Q2hpbGQ7IH0KLTxhIG5hbWU9ImwwMDY5NiI+PC9hPjAwNjk2IAotPGEgbmFtZT0ibDAwNjk3Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYThhNGNkYTRiMTVjMjlmNjRjZmY0MTkzMDlhZWJlZDA4Ij4wMDY5NzwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgdGl0bGU9IkFsd2F5cyB0aGUgdG9wIGxldmVsIG5vZGUuIj5UaVhtbERvY3VtZW50PC9hPiogICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYThhNGNkYTRiMTVjMjlmNjRjZmY0MTkzMDlhZWJlZDA4IiB0aXRsZT0iQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIGlmIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIj5Ub0RvY3VtZW50PC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgICBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gMDsgfSAKLTxhIG5hbWU9ImwwMDY5OCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MmFiZWQ5NmRjOTY2N2FiOWUwYTJhMjc1MzAxYmIxYyI+MDA2OTg8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiogICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E3MmFiZWQ5NmRjOTY2N2FiOWUwYTJhMjc1MzAxYmIxYyIgdGl0bGU9IkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiI+VG9FbGVtZW50PC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgICAgY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDA7IH0gCi08YSBuYW1lPSJsMDA2OTkiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYTBhNTA4NmY5ZWFlZTkxMGJiZmRjN2Y5NzVlMjY1NzQiPjAwNjk5PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiIHRpdGxlPSJBbiBYTUwgY29tbWVudC4iPlRpWG1sQ29tbWVudDwvYT4qICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhYTBhNTA4NmY5ZWFlZTkxMGJiZmRjN2Y5NzVlMjY1NzQiIHRpdGxlPSJDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4iPlRvQ29tbWVudDwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gICAgIGNvbnN0IDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAwOyB9IAotPGEgbmFtZT0ibDAwNzAwIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWZkNzIwNWNmMzFkN2EzNzY5MjlmOGEzNjkzMDYyN2EyIj4wMDcwMDwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIiB0aXRsZT0iQW55IHRhZyB0aGF0IHRpbnlYbWwgZG9lc24mYW1wOyMzOTt0IHJlY29nbml6ZSBpcyBzYXZlZCBhcyBhbiB1bmtub3duLiI+VGlYbWxVbmtub3duPC9hPiogICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmZDcyMDVjZjMxZDdhMzc2OTI5ZjhhMzY5MzA2MjdhMiIgdGl0bGU9IkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiI+VG9Vbmtub3duPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgICAgY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDA7IH0gCi08YSBuYW1lPSJsMDA3MDEiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhOTVhNDZhNTJjNTI1OTkyZDZiNGVlMDhiZWIxNGNkNjkiPjAwNzAxPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIHRpdGxlPSJYTUwgdGV4dC4iPlRpWG1sVGV4dDwvYT4qICAgICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhOTVhNDZhNTJjNTI1OTkyZDZiNGVlMDhiZWIxNGNkNjkiIHRpdGxlPSJDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4iPlRvVGV4dDwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gICAgICAgIGNvbnN0IDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAwOyB9IAotPGEgbmFtZT0ibDAwNzAyIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTlmNDNlNjk4NGZjN2Q0YWZkNmViMzI3MTRjNmI3YjcyIj4wMDcwMjwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCIgdGl0bGU9IkluIGNvcnJlY3QgWE1MIHRoZSBkZWNsYXJhdGlvbiBpcyB0aGUgZmlyc3QgZW50cnkgaW4gdGhlIGZpbGUuIj5UaVhtbERlY2xhcmF0aW9uPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTlmNDNlNjk4NGZjN2Q0YWZkNmViMzI3MTRjNmI3YjcyIiB0aXRsZT0iQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIGlmIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIj5Ub0RlY2xhcmF0aW9uPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gMDsgfSAKLTxhIG5hbWU9ImwwMDcwMyI+PC9hPjAwNzAzIAotPGEgbmFtZT0ibDAwNzA0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTZhNGM4YWMyOGVlN2E3NDVkMDU5ZGI2NjkxZTAzYmFlIj4wMDcwNDwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiIHRpdGxlPSJBbHdheXMgdGhlIHRvcCBsZXZlbCBub2RlLiI+VGlYbWxEb2N1bWVudDwvYT4qICAgICAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E2YTRjOGFjMjhlZTdhNzQ1ZDA1OWRiNjY5MWUwM2JhZSIgdGl0bGU9IkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiI+VG9Eb2N1bWVudDwvYT4oKSAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAwOyB9IAotPGEgbmFtZT0ibDAwNzA1Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYWE2NWQwMDAyMjMxODdkMjJhNGRjZWJkNzQ3OWU5ZWJjIj4wMDcwNTwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiogICAgICAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FhNjVkMDAwMjIzMTg3ZDIyYTRkY2ViZDc0NzllOWViYyIgdGl0bGU9IkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiI+VG9FbGVtZW50PC9hPigpICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAwOyB9IAotPGEgbmFtZT0ibDAwNzA2Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTM4M2UwNmEwNzg3ZjcwNjM5NTM5MzQ4Njc5OTBmODQ5Ij4wMDcwNjwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCIgdGl0bGU9IkFuIFhNTCBjb21tZW50LiI+VGlYbWxDb21tZW50PC9hPiogICAgICAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzODNlMDZhMDc4N2Y3MDYzOTUzOTM0ODY3OTkwZjg0OSIgdGl0bGU9IkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiI+VG9Db21tZW50PC9hPigpICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAwOyB9IAotPGEgbmFtZT0ibDAwNzA3Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTA2ZGU1YWY4NTI2NjhjN2U0YWYwZDA5YzIwNWYwYjBkIj4wMDcwNzwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCIgdGl0bGU9IkFueSB0YWcgdGhhdCB0aW55WG1sIGRvZXNuJmFtcDsjMzk7dCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4iPlRpWG1sVW5rbm93bjwvYT4qICAgICAgICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhMDZkZTVhZjg1MjY2OGM3ZTRhZjBkMDljMjA1ZjBiMGQiIHRpdGxlPSJDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4iPlRvVW5rbm93bjwvYT4oKSAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gMDsgfSAKLTxhIG5hbWU9ImwwMDcwOCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EzZGRmYmNhYzc4ZmJlYTA0MWZhZDU3ZTVjNmQ2MGEwMyI+MDA3MDg8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIHRpdGxlPSJYTUwgdGV4dC4iPlRpWG1sVGV4dDwvYT4qICAgICAgICAgICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhM2RkZmJjYWM3OGZiZWEwNDFmYWQ1N2U1YzZkNjBhMDMiIHRpdGxlPSJDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4iPlRvVGV4dDwvYT4oKSAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gMDsgfSAKLTxhIG5hbWU9ImwwMDcwOSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0MDI3MTM2Y2E4MjBmZjRhNjM2YjYwNzIzMWI2YTZkZiI+MDA3MDk8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIiB0aXRsZT0iSW4gY29ycmVjdCBYTUwgdGhlIGRlY2xhcmF0aW9uIGlzIHRoZSBmaXJzdCBlbnRyeSBpbiB0aGUgZmlsZS4iPlRpWG1sRGVjbGFyYXRpb248L2E+KiAgICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhNDAyNzEzNmNhODIwZmY0YTYzNmI2MDcyMzFiNmE2ZGYiIHRpdGxlPSJDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4iPlRvRGVjbGFyYXRpb248L2E+KCkgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gMDsgfSAKLTxhIG5hbWU9ImwwMDcxMCI+PC9hPjAwNzEwIAotPGEgbmFtZT0ibDAwNzE0Ij48L2E+MDA3MTQgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2E0NTA4Y2MzYTJkN2E5OGU5NmE1NGNjMDljMzdhNzhhNCIgdGl0bGU9IkNyZWF0ZSBhbiBleGFjdCBkdXBsaWNhdGUgb2YgdGhpcyBub2RlIGFuZCByZXR1cm4gaXQuIj5DbG9uZTwvYT4oKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+ID0gMDsKLTxhIG5hbWU9ImwwMDcxNSI+PC9hPjAwNzE1IAotPGEgbmFtZT0ibDAwNzM4Ij48L2E+MDA3MzggICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FjYzBmODhiNzQ2MmM2Y2I3MzgwOWQ0MTBhNGY1YmI4NiIgdGl0bGU9IkFjY2VwdCBhIGhpZXJjaGljYWwgdmlzaXQgdGhlIG5vZGVzIGluIHRoZSBUaW55WE1MIERPTS4iPkFjY2VwdDwvYT4oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIiB0aXRsZT0iSW1wbGVtZW50cyB0aGUgaW50ZXJmYWNlIHRvIHRoZSAmYW1wO3F1b3Q7VmlzaXRvciBwYXR0ZXJuJmFtcDtxdW90OyAoc2VlIHRoZSBBY2NlcHQoKSBtZXRob2QuLi4iPlRpWG1sVmlzaXRvcjwvYT4qIHZpc2l0b3IgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+ID0gMDsKLTxhIG5hbWU9ImwwMDczOSI+PC9hPjAwNzM5IAotPGEgbmFtZT0ibDAwNzQwIj48L2E+MDA3NDAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByb3RlY3RlZDwvc3Bhbj46Ci08YSBuYW1lPSJsMDA3NDEiPjwvYT4wMDc0MSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODM2ZWRlZDQ5MjBhYjllOWVmMjg0OTZmNDhjZDk1YTIiIHRpdGxlPSJUaGUgdHlwZXMgb2YgWE1MIG5vZGVzIHN1cHBvcnRlZCBieSBUaW55WG1sLiI+Tm9kZVR5cGU8L2E+IF90eXBlICk7Ci08YSBuYW1lPSJsMDA3NDIiPjwvYT4wMDc0MiAKLTxhIG5hbWU9ImwwMDc0MyI+PC9hPjAwNzQzICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gQ29weSB0byB0aGUgYWxsb2NhdGVkIG9iamVjdC4gU2hhcmVkIGZ1bmN0aW9uYWxpdHkgYmV0d2VlbiBDbG9uZSwgQ29weSBjb25zdHJ1Y3Rvciw8L3NwYW4+Ci08YSBuYW1lPSJsMDA3NDQiPjwvYT4wMDc0NCAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIGFuZCB0aGUgYXNzaWdubWVudCBvcGVyYXRvci48L3NwYW4+Ci08YSBuYW1lPSJsMDA3NDUiPjwvYT4wMDc0NSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBDb3B5VG8oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogdGFyZ2V0ICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMDc0NiI+PC9hPjAwNzQ2IAotPGEgbmFtZT0ibDAwNzQ3Ij48L2E+MDA3NDcgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgotPGEgbmFtZT0ibDAwNzQ4Ij48L2E+MDA3NDggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPiAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFRoZSByZWFsIHdvcmsgb2YgdGhlIGlucHV0IG9wZXJhdG9yLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDc0OSI+PC9hPjAwNzQ5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTdHJlYW1Jbiggc3RkOjppc3RyZWFtKiBpbiwgVElYTUxfU1RSSU5HKiB0YWcgKSA9IDA7Ci08YSBuYW1lPSJsMDA3NTAiPjwvYT4wMDc1MCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgotPGEgbmFtZT0ibDAwNzUxIj48L2E+MDA3NTEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAwNzUyIj48L2E+MDA3NTIgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBGaWd1cmUgb3V0IHdoYXQgaXMgYXQgKnAsIGFuZCBwYXJzZSBpdC4gUmV0dXJucyBudWxsIGlmIGl0IGlzIG5vdCBhbiB4bWwgbm9kZS48L3NwYW4+Ci08YSBuYW1lPSJsMDA3NTMiPjwvYT4wMDc1MyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiBJZGVudGlmeSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBzdGFydCwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApOwotPGEgbmFtZT0ibDAwNzU0Ij48L2E+MDA3NTQgCi08YSBuYW1lPSJsMDA3NTUiPjwvYT4wMDc1NSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiAgICAgIHBhcmVudDsKLTxhIG5hbWU9ImwwMDc1NiI+PC9hPjAwNzU2ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhODM2ZWRlZDQ5MjBhYjllOWVmMjg0OTZmNDhjZDk1YTIiIHRpdGxlPSJUaGUgdHlwZXMgb2YgWE1MIG5vZGVzIHN1cHBvcnRlZCBieSBUaW55WG1sLiI+Tm9kZVR5cGU8L2E+ICAgICAgICB0eXBlOwotPGEgbmFtZT0ibDAwNzU3Ij48L2E+MDA3NTcgCi08YSBuYW1lPSJsMDA3NTgiPjwvYT4wMDc1OCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiAgICAgIGZpcnN0Q2hpbGQ7Ci08YSBuYW1lPSJsMDA3NTkiPjwvYT4wMDc1OSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiAgICAgIGxhc3RDaGlsZDsKLTxhIG5hbWU9ImwwMDc2MCI+PC9hPjAwNzYwIAotPGEgbmFtZT0ibDAwNzYxIj48L2E+MDA3NjEgICAgIFRJWE1MX1NUUklORyAgICB2YWx1ZTsKLTxhIG5hbWU9ImwwMDc2MiI+PC9hPjAwNzYyIAotPGEgbmFtZT0ibDAwNzYzIj48L2E+MDA3NjMgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogICAgICBwcmV2OwotPGEgbmFtZT0ibDAwNzY0Ij48L2E+MDA3NjQgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogICAgICBuZXh0OwotPGEgbmFtZT0ibDAwNzY1Ij48L2E+MDA3NjUgCi08YSBuYW1lPSJsMDA3NjYiPjwvYT4wMDc2NiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJpdmF0ZTwvc3Bhbj46Ci08YSBuYW1lPSJsMDA3NjciPjwvYT4wMDc2NyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiZhbXA7ICk7ICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gbm90IGltcGxlbWVudGVkLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDc2OCI+PC9hPjAwNzY4ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IG9wZXJhdG9yPSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4mYW1wOyBiYXNlICk7ICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBub3QgYWxsb3dlZC48L3NwYW4+Ci08YSBuYW1lPSJsMDA3NjkiPjwvYT4wMDc2OSB9OwotPGEgbmFtZT0ibDAwNzcwIj48L2E+MDA3NzAgCi08YSBuYW1lPSJsMDA3NzEiPjwvYT4wMDc3MSAKLTxhIG5hbWU9ImwwMDc3OSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiPjAwNzc5PC9hPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIHRpdGxlPSJBbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIuIj5UaVhtbEF0dHJpYnV0ZTwvYT4gOiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEJhc2UuaHRtbCIgdGl0bGU9IlRpWG1sQmFzZSBpcyBhIGJhc2UgY2xhc3MgZm9yIGV2ZXJ5IGNsYXNzIGluIFRpbnlYbWwuIj5UaVhtbEJhc2U8L2E+Ci08YSBuYW1lPSJsMDA3ODAiPjwvYT4wMDc4MCB7Ci08YSBuYW1lPSJsMDA3ODEiPjwvYT4wMDc4MSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZyaWVuZDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj5UaVhtbEF0dHJpYnV0ZVNldDsKLTxhIG5hbWU9ImwwMDc4MiI+PC9hPjAwNzgyIAotPGEgbmFtZT0ibDAwNzgzIj48L2E+MDA3ODMgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj46Ci08YSBuYW1lPSJsMDA3ODUiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E5Y2ZhM2M4MTc5ODczZmQ0ODVkODMwMDNiMTE0ZjhlMSI+MDA3ODU8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E5Y2ZhM2M4MTc5ODczZmQ0ODVkODMwMDNiMTE0ZjhlMSIgdGl0bGU9IkNvbnN0cnVjdCBhbiBlbXB0eSBhdHRyaWJ1dGUuIj5UaVhtbEF0dHJpYnV0ZTwvYT4oKSA6IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQmFzZS5odG1sIiB0aXRsZT0iVGlYbWxCYXNlIGlzIGEgYmFzZSBjbGFzcyBmb3IgZXZlcnkgY2xhc3MgaW4gVGlueVhtbC4iPlRpWG1sQmFzZTwvYT4oKQotPGEgbmFtZT0ibDAwNzg2Ij48L2E+MDA3ODYgICAgIHsKLTxhIG5hbWU9ImwwMDc4NyI+PC9hPjAwNzg3ICAgICAgICAgZG9jdW1lbnQgPSAwOwotPGEgbmFtZT0ibDAwNzg4Ij48L2E+MDA3ODggICAgICAgICBwcmV2ID0gbmV4dCA9IDA7Ci08YSBuYW1lPSJsMDA3ODkiPjwvYT4wMDc4OSAgICAgfQotPGEgbmFtZT0ibDAwNzkwIj48L2E+MDA3OTAgCi08YSBuYW1lPSJsMDA3OTEiPjwvYT4wMDc5MSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Ci08YSBuYW1lPSJsMDA3OTMiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EwNTIyMTM1MjJjYWFjMzk3OTk2MGUwNzE0MDYzODYxZCI+MDA3OTM8L2E+IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICBUaVhtbEF0dHJpYnV0ZSggY29uc3Qgc3RkOjpzdHJpbmcmYW1wOyBfbmFtZSwgY29uc3Qgc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUgKTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDc5NCI+PC9hPjAwNzk0IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgewotPGEgbmFtZT0ibDAwNzk1Ij48L2E+MDA3OTUgICAgICAgICBuYW1lID0gX25hbWU7Ci08YSBuYW1lPSJsMDA3OTYiPjwvYT4wMDc5NiAgICAgICAgIHZhbHVlID0gX3ZhbHVlOwotPGEgbmFtZT0ibDAwNzk3Ij48L2E+MDA3OTcgICAgICAgICBkb2N1bWVudCA9IDA7Ci08YSBuYW1lPSJsMDA3OTgiPjwvYT4wMDc5OCAgICAgICAgIHByZXYgPSBuZXh0ID0gMDsKLTxhIG5hbWU9ImwwMDc5OSI+PC9hPjAwNzk5ICAgICB9Ci08YSBuYW1lPSJsMDA4MDAiPjwvYT4wMDgwMCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgotPGEgbmFtZT0ibDAwODAxIj48L2E+MDA4MDEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAwODAzIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNzU5ZDBiNzZmYjhmY2Y3NjVlY2FiMjQzYmMxNGYwNWUiPjAwODAzPC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhOWNmYTNjODE3OTg3M2ZkNDg1ZDgzMDAzYjExNGY4ZTEiIHRpdGxlPSJDb25zdHJ1Y3QgYW4gZW1wdHkgYXR0cmlidXRlLiI+VGlYbWxBdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiBfbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogX3ZhbHVlICkKLTxhIG5hbWU9ImwwMDgwNCI+PC9hPjAwODA0ICAgICB7Ci08YSBuYW1lPSJsMDA4MDUiPjwvYT4wMDgwNSAgICAgICAgIG5hbWUgPSBfbmFtZTsKLTxhIG5hbWU9ImwwMDgwNiI+PC9hPjAwODA2ICAgICAgICAgdmFsdWUgPSBfdmFsdWU7Ci08YSBuYW1lPSJsMDA4MDciPjwvYT4wMDgwNyAgICAgICAgIGRvY3VtZW50ID0gMDsKLTxhIG5hbWU9ImwwMDgwOCI+PC9hPjAwODA4ICAgICAgICAgcHJldiA9IG5leHQgPSAwOwotPGEgbmFtZT0ibDAwODA5Ij48L2E+MDA4MDkgICAgIH0KLTxhIG5hbWU9ImwwMDgxMCI+PC9hPjAwODEwIAotPGEgbmFtZT0ibDAwODExIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMjk4YTU3Mjg3ZDMwNTkwNGJhNmJkOTZhZTZmNzhkM2QiPjAwODExPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMjk4YTU3Mjg3ZDMwNTkwNGJhNmJkOTZhZTZmNzhkM2QiIHRpdGxlPSJSZXR1cm4gdGhlIG5hbWUgb2YgdGhpcyBhdHRyaWJ1dGUuIj5OYW1lPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgY29uc3QgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IG5hbWUuY19zdHIoKTsgfSAgICAgICAgCi08YSBuYW1lPSJsMDA4MTIiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EwZjg3NDQ5MGVhYzhjYTAwZWUwMDcwNzY1ZDBlOTdlMyI+MDA4MTI8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EwZjg3NDQ5MGVhYzhjYTAwZWUwMDcwNzY1ZDBlOTdlMyIgdGl0bGU9IlJldHVybiB0aGUgdmFsdWUgb2YgdGhpcyBhdHRyaWJ1dGUuIj5WYWx1ZTwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHZhbHVlLmNfc3RyKCk7IH0gICAgICAgCi08YSBuYW1lPSJsMDA4MTMiPjwvYT4wMDgxMyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Ci08YSBuYW1lPSJsMDA4MTQiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E4NzcwNWMzY2NmOWVlOTQxN2JlYjRmN2NiYWNkNGQzMyI+MDA4MTQ8L2E+IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTg3NzA1YzNjY2Y5ZWU5NDE3YmViNGY3Y2JhY2Q0ZDMzIiB0aXRsZT0iUmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGlzIGF0dHJpYnV0ZS4iPlZhbHVlU3RyPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gdmFsdWU7IH0gICAgICAgICAgICAgICAKLTxhIG5hbWU9ImwwMDgxNSI+PC9hPjAwODE1IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDA4MTYiPjwvYT4wMDgxNiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiAgICAgICAgICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FhMWEyMGFkNTlkYzdlODlhMGFiMjY1Mzk2MzYwZDUwZiIgdGl0bGU9IlJldHVybiB0aGUgdmFsdWUgb2YgdGhpcyBhdHRyaWJ1dGUsIGNvbnZlcnRlZCB0byBhbiBpbnRlZ2VyLiI+SW50VmFsdWU8L2E+KCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotPGEgbmFtZT0ibDAwODE3Ij48L2E+MDA4MTcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+ZG91YmxlPC9zcGFuPiAgICAgICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EyODgwZGRlZjUzZmM3NTIyYzk5NTM1MjczOTU0ZDIzMCIgdGl0bGU9IlJldHVybiB0aGUgdmFsdWUgb2YgdGhpcyBhdHRyaWJ1dGUsIGNvbnZlcnRlZCB0byBhIGRvdWJsZS4iPkRvdWJsZVZhbHVlPC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLTxhIG5hbWU9ImwwMDgxOCI+PC9hPjAwODE4IAotPGEgbmFtZT0ibDAwODE5Ij48L2E+MDA4MTkgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBHZXQgdGhlIHRpbnl4bWwgc3RyaW5nIHJlcHJlc2VudGF0aW9uPC9zcGFuPgotPGEgbmFtZT0ibDAwODIwIj48L2E+MDA4MjAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gVElYTUxfU1RSSU5HJmFtcDsgTmFtZVRTdHIoKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IG5hbWU7IH0KLTxhIG5hbWU9ImwwMDgyMSI+PC9hPjAwODIxIAotPGEgbmFtZT0ibDAwODMxIj48L2E+MDA4MzEgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FkNmM5MzA4OGVlMjFhZjQxYTEwNzkzMTIyMzMzOTM0NCIgdGl0bGU9IlF1ZXJ5SW50VmFsdWUgZXhhbWluZXMgdGhlIHZhbHVlIHN0cmluZy4iPlF1ZXJ5SW50VmFsdWU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4qIF92YWx1ZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDA4MzMiPjwvYT4wMDgzMyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWM4N2IyYTg0ODk5MDZhNWQ3YWEyODc1ZjIwYmUzNTEzIiB0aXRsZT0iUXVlcnlEb3VibGVWYWx1ZSBleGFtaW5lcyB0aGUgdmFsdWUgc3RyaW5nLiBTZWUgUXVlcnlJbnRWYWx1ZSgpLiI+UXVlcnlEb3VibGVWYWx1ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+ZG91YmxlPC9zcGFuPiogX3ZhbHVlICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMDgzNCI+PC9hPjAwODM0IAotPGEgbmFtZT0ibDAwODM1Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhYjdmYTNkMjFmZjhkN2M1NzY0Y2Y5YWYxNWI2NjdhOTkiPjAwODM1PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FiN2ZhM2QyMWZmOGQ3YzU3NjRjZjlhZjE1YjY2N2E5OSIgdGl0bGU9IlNldCB0aGUgbmFtZSBvZiB0aGlzIGF0dHJpYnV0ZS4iPlNldE5hbWU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIF9uYW1lICkgICB7IG5hbWUgPSBfbmFtZTsgfSAgICAgICAgICAgICAgIAotPGEgbmFtZT0ibDAwODM2Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMmRhZTQ0MTc4ZjY2OGIzY2I0ODEwMWJlNGYyMjM2YTAiPjAwODM2PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2EyZGFlNDQxNzhmNjY4YjNjYjQ4MTAxYmU0ZjIyMzZhMCIgdGl0bGU9IlNldCB0aGUgdmFsdWUuIj5TZXRWYWx1ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogX3ZhbHVlICkgeyB2YWx1ZSA9IF92YWx1ZTsgfSAgICAgICAgICAgICAKLTxhIG5hbWU9ImwwMDgzNyI+PC9hPjAwODM3IAotPGEgbmFtZT0ibDAwODM4Ij48L2E+MDA4MzggICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhN2UwNjVkZjY0MDExNmE2MmVhNGY0YjdkYTU0NDljYzgiIHRpdGxlPSJTZXQgdGhlIHZhbHVlIGZyb20gYW4gaW50ZWdlci4iPlNldEludFZhbHVlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IF92YWx1ZSApOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKLTxhIG5hbWU9ImwwMDgzOSI+PC9hPjAwODM5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTAzMTZkYTMxMzczNDk2YzQzNjhhZDU0OWJmNzExMzk0IiB0aXRsZT0iU2V0IHRoZSB2YWx1ZSBmcm9tIGEgZG91YmxlLiI+U2V0RG91YmxlVmFsdWU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmRvdWJsZTwvc3Bhbj4gX3ZhbHVlICk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAotPGEgbmFtZT0ibDAwODQwIj48L2E+MDA4NDAgCi08YSBuYW1lPSJsMDA4NDEiPjwvYT4wMDg0MSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Ci08YSBuYW1lPSJsMDA4NDMiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2FiMjk2ZmYwYzlhOGM3MDEwNTVjZDI1N2E4YTk3NmU1NyI+MDA4NDM8L2E+IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICB2b2lkIFNldE5hbWUoIGNvbnN0IHN0ZDo6c3RyaW5nJmFtcDsgX25hbWUgKSAgICB7IG5hbWUgPSBfbmFtZTsgfSAgIDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDg0NSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWI0M2Y2N2EwY2MzZWMxZDgwZTYyNjA2NTAwZjA5MjVmIj4wMDg0NTwvYT4gPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgIHZvaWQgU2V0VmFsdWUoIGNvbnN0IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlICkgIHsgdmFsdWUgPSBfdmFsdWU7IH08L3NwYW4+Ci08YSBuYW1lPSJsMDA4NDYiPjwvYT4wMDg0NiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbmRpZjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDg0NyI+PC9hPjAwODQ3IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDg0OSI+PC9hPjAwODQ5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIHRpdGxlPSJBbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIuIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTFjNzhlOTJlMjIzYTQwODQzZjY0NGJhNDhlZjY5ZjY3IiB0aXRsZT0iR2V0IHRoZSBuZXh0IHNpYmxpbmcgYXR0cmlidXRlIGluIHRoZSBET00uIFJldHVybnMgbnVsbCBhdCBlbmQuIj5OZXh0PC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDA4NTAiPjwvYT4wMDg1MCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhMWM3OGU5MmUyMjNhNDA4NDNmNjQ0YmE0OGVmNjlmNjciIHRpdGxlPSJHZXQgdGhlIG5leHQgc2libGluZyBhdHRyaWJ1dGUgaW4gdGhlIERPTS4gUmV0dXJucyBudWxsIGF0IGVuZC4iPk5leHQ8L2E+KCkgewotPGEgbmFtZT0ibDAwODUxIj48L2E+MDA4NTEgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0X2Nhc3QmbHQ7PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+KiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Jmd0Ozwvc3Bhbj4oICg8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3RfY2FzdCZsdDs8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdCA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiogPHNwYW4gY2xhc3M9ImtleXdvcmQiPiZndDs8L3NwYW4+KDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPikpLSZndDtOZXh0KCkgKTsgCi08YSBuYW1lPSJsMDA4NTIiPjwvYT4wMDg1MiAgICAgfQotPGEgbmFtZT0ibDAwODUzIj48L2E+MDA4NTMgCi08YSBuYW1lPSJsMDA4NTUiPjwvYT4wMDg1NSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E2ZWJiZmUzMzNmZTc2Y2Q4MzRiZDZjYmNjYTMxMzBjZiIgdGl0bGU9IkdldCB0aGUgcHJldmlvdXMgc2libGluZyBhdHRyaWJ1dGUgaW4gdGhlIERPTS4gUmV0dXJucyBudWxsIGF0IGJlZ2lubmluZy4iPlByZXZpb3VzPC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDA4NTYiPjwvYT4wMDg1NiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhNmViYmZlMzMzZmU3NmNkODM0YmQ2Y2JjY2EzMTMwY2YiIHRpdGxlPSJHZXQgdGhlIHByZXZpb3VzIHNpYmxpbmcgYXR0cmlidXRlIGluIHRoZSBET00uIFJldHVybnMgbnVsbCBhdCBiZWdpbm5pbmcuIj5QcmV2aW91czwvYT4oKSB7Ci08YSBuYW1lPSJsMDA4NTciPjwvYT4wMDg1NyAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3RfY2FzdCZsdDs8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIHRpdGxlPSJBbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIuIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj4mZ3Q7PC9zcGFuPiggKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdF9jYXN0Jmx0Ozwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0IDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+KiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Jmd0Ozwvc3Bhbj4oPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+KSktJmd0O1ByZXZpb3VzKCkgKTsgCi08YSBuYW1lPSJsMDA4NTgiPjwvYT4wMDg1OCAgICAgfQotPGEgbmFtZT0ibDAwODU5Ij48L2E+MDA4NTkgCi08YSBuYW1lPSJsMDA4NjAiPjwvYT4wMDg2MCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBvcGVyYXRvcj09KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIHRpdGxlPSJBbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIuIj5UaVhtbEF0dHJpYnV0ZTwvYT4mYW1wOyByaHMgKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHJocy5uYW1lID09IG5hbWU7IH0KLTxhIG5hbWU9ImwwMDg2MSI+PC9hPjAwODYxICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IG9wZXJhdG9yJmx0OyggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+JmFtcDsgcmhzICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+ICBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gbmFtZSAmbHQ7IHJocy5uYW1lOyB9Ci08YSBuYW1lPSJsMDA4NjIiPjwvYT4wMDg2MiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiBvcGVyYXRvciZndDsoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiZhbXA7IHJocyApPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IG5hbWUgJmd0OyByaHMubmFtZTsgfQotPGEgbmFtZT0ibDAwODYzIj48L2E+MDA4NjMgCi08YSBuYW1lPSJsMDA4NjQiPjwvYT4wMDg2NCAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8qICBBdHRyaWJ1dGUgcGFyc2luZyBzdGFydHM6IGZpcnN0IGxldHRlciBvZiB0aGUgbmFtZTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDg2NSI+PC9hPjAwODY1IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuczogdGhlIG5leHQgY2hhciBhZnRlciB0aGUgdmFsdWUgZW5kIHF1b3RlPC9zcGFuPgotPGEgbmFtZT0ibDAwODY2Ij48L2E+MDA4NjYgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAqLzwvc3Bhbj4KLTxhIG5hbWU9ImwwMDg2NyI+PC9hPjAwODY3ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBQYXJzZSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBwLCBUaVhtbFBhcnNpbmdEYXRhKiBkYXRhLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7Ci08YSBuYW1lPSJsMDA4NjgiPjwvYT4wMDg2OCAKLTxhIG5hbWU9ImwwMDg2OSI+PC9hPjAwODY5ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gUHJpbnRzIHRoaXMgQXR0cmlidXRlIHRvIGEgRklMRSBzdHJlYW0uPC9zcGFuPgotPGEgbmFtZT0ibDAwODcwIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhY2MwNDk1NmMxZDVjNGMzMWZlNzRmN2E3NTI4ZDEwOWEiPjAwODcwPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhY2MwNDk1NmMxZDVjNGMzMWZlNzRmN2E3NTI4ZDEwOWEiIHRpdGxlPSJBbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbSBvciB0aGUgc3RyaW5nIGNsYXNzIChUaVhtbFN0cmluZy4uLiI+UHJpbnQ8L2E+KCBGSUxFKiBjZmlsZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGRlcHRoICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0IDwvc3Bhbj57Ci08YSBuYW1lPSJsMDA4NzEiPjwvYT4wMDg3MSAgICAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYWNjMDQ5NTZjMWQ1YzRjMzFmZTc0ZjdhNzUyOGQxMDlhIiB0aXRsZT0iQWxsIFRpbnlYbWwgY2xhc3NlcyBjYW4gcHJpbnQgdGhlbXNlbHZlcyB0byBhIGZpbGVzdHJlYW0gb3IgdGhlIHN0cmluZyBjbGFzcyAoVGlYbWxTdHJpbmcuLi4iPlByaW50PC9hPiggY2ZpbGUsIGRlcHRoLCAwICk7Ci08YSBuYW1lPSJsMDA4NzIiPjwvYT4wMDg3MiAgICAgfQotPGEgbmFtZT0ibDAwODczIj48L2E+MDA4NzMgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCNhY2MwNDk1NmMxZDVjNGMzMWZlNzRmN2E3NTI4ZDEwOWEiIHRpdGxlPSJBbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbSBvciB0aGUgc3RyaW5nIGNsYXNzIChUaVhtbFN0cmluZy4uLiI+UHJpbnQ8L2E+KCBGSUxFKiBjZmlsZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGRlcHRoLCBUSVhNTF9TVFJJTkcqIHN0ciApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDA4NzQiPjwvYT4wMDg3NCAKLTxhIG5hbWU9ImwwMDg3NSI+PC9hPjAwODc1ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gW2ludGVybmFsIHVzZV08L3NwYW4+Ci08YSBuYW1lPSJsMDA4NzYiPjwvYT4wMDg3NiAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFNldCB0aGUgZG9jdW1lbnQgcG9pbnRlciBzbyB0aGUgYXR0cmlidXRlIGNhbiByZXBvcnQgZXJyb3JzLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDg3NyI+PC9hPjAwODc3ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IFNldERvY3VtZW50KCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiIHRpdGxlPSJBbHdheXMgdGhlIHRvcCBsZXZlbCBub2RlLiI+VGlYbWxEb2N1bWVudDwvYT4qIGRvYyApICB7IGRvY3VtZW50ID0gZG9jOyB9Ci08YSBuYW1lPSJsMDA4NzgiPjwvYT4wMDg3OCAKLTxhIG5hbWU9ImwwMDg3OSI+PC9hPjAwODc5IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wcml2YXRlPC9zcGFuPjoKLTxhIG5hbWU9ImwwMDg4MCI+PC9hPjAwODgwICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E5Y2ZhM2M4MTc5ODczZmQ0ODVkODMwMDNiMTE0ZjhlMSIgdGl0bGU9IkNvbnN0cnVjdCBhbiBlbXB0eSBhdHRyaWJ1dGUuIj5UaVhtbEF0dHJpYnV0ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiZhbXA7ICk7ICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBub3QgaW1wbGVtZW50ZWQuPC9zcGFuPgotPGEgbmFtZT0ibDAwODgxIj48L2E+MDA4ODEgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gb3BlcmF0b3I9KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIHRpdGxlPSJBbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIuIj5UaVhtbEF0dHJpYnV0ZTwvYT4mYW1wOyBiYXNlICk7ICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIG5vdCBhbGxvd2VkLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDg4MiI+PC9hPjAwODgyIAotPGEgbmFtZT0ibDAwODgzIj48L2E+MDA4ODMgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgdGl0bGU9IkFsd2F5cyB0aGUgdG9wIGxldmVsIG5vZGUuIj5UaVhtbERvY3VtZW50PC9hPiogIGRvY3VtZW50OyAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBBIHBvaW50ZXIgYmFjayB0byBhIGRvY3VtZW50LCBmb3IgZXJyb3IgcmVwb3J0aW5nLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDg4NCI+PC9hPjAwODg0ICAgICBUSVhNTF9TVFJJTkcgbmFtZTsKLTxhIG5hbWU9ImwwMDg4NSI+PC9hPjAwODg1ICAgICBUSVhNTF9TVFJJTkcgdmFsdWU7Ci08YSBuYW1lPSJsMDA4ODYiPjwvYT4wMDg4NiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiogcHJldjsKLTxhIG5hbWU9ImwwMDg4NyI+PC9hPjAwODg3ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+KiBuZXh0OwotPGEgbmFtZT0ibDAwODg4Ij48L2E+MDA4ODggfTsKLTxhIG5hbWU9ImwwMDg4OSI+PC9hPjAwODg5IAotPGEgbmFtZT0ibDAwODkwIj48L2E+MDA4OTAgCi08YSBuYW1lPSJsMDA4OTEiPjwvYT4wMDg5MSA8c3BhbiBjbGFzcz0iY29tbWVudCI+LyogIEEgY2xhc3MgdXNlZCB0byBtYW5hZ2UgYSBncm91cCBvZiBhdHRyaWJ1dGVzLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDg5MiI+PC9hPjAwODkyIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgSXQgaXMgb25seSB1c2VkIGludGVybmFsbHksIGJvdGggYnkgdGhlIEVMRU1FTlQgYW5kIHRoZSBERUNMQVJBVElPTi48L3NwYW4+Ci08YSBuYW1lPSJsMDA4OTMiPjwvYT4wMDg5MyA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgIDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDg5NCI+PC9hPjAwODk0IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgVGhlIHNldCBjYW4gYmUgY2hhbmdlZCB0cmFuc3BhcmVudCB0byB0aGUgRWxlbWVudCBhbmQgRGVjbGFyYXRpb248L3NwYW4+Ci08YSBuYW1lPSJsMDA4OTUiPjwvYT4wMDg5NSA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgIGNsYXNzZXMgdGhhdCB1c2UgaXQsIGJ1dCBOT1QgdHJhbnNwYXJlbnQgdG8gdGhlIEF0dHJpYnV0ZTwvc3Bhbj4KLTxhIG5hbWU9ImwwMDg5NiI+PC9hPjAwODk2IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgd2hpY2ggaGFzIHRvIGltcGxlbWVudCBhIG5leHQoKSBhbmQgcHJldmlvdXMoKSBtZXRob2QuIFdoaWNoIG1ha2VzPC9zcGFuPgotPGEgbmFtZT0ibDAwODk3Ij48L2E+MDA4OTcgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICBpdCBhIGJpdCBwcm9ibGVtYXRpYyBhbmQgcHJldmVudHMgdGhlIHVzZSBvZiBTVEwuPC9zcGFuPgotPGEgbmFtZT0ibDAwODk4Ij48L2E+MDA4OTggPHNwYW4gY2xhc3M9ImNvbW1lbnQiPjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDg5OSI+PC9hPjAwODk5IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgVGhpcyB2ZXJzaW9uIGlzIGltcGxlbWVudGVkIHdpdGggY2lyY3VsYXIgbGlzdHMgYmVjYXVzZTo8L3NwYW4+Ci08YSBuYW1lPSJsMDA5MDAiPjwvYT4wMDkwMCA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgICAgICAtIEkgbGlrZSBjaXJjdWxhciBsaXN0czwvc3Bhbj4KLTxhIG5hbWU9ImwwMDkwMSI+PC9hPjAwOTAxIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgICAgIC0gaXQgZGVtb25zdHJhdGVzIHNvbWUgaW5kZXBlbmRlbmNlIGZyb20gdGhlICh0eXBpY2FsKSBkb3VibHkgbGlua2VkIGxpc3QuPC9zcGFuPgotPGEgbmFtZT0ibDAwOTAyIj48L2E+MDA5MDIgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiovPC9zcGFuPgotPGEgbmFtZT0ibDAwOTAzIj48L2E+MDA5MDMgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj5UaVhtbEF0dHJpYnV0ZVNldAotPGEgbmFtZT0ibDAwOTA0Ij48L2E+MDA5MDQgewotPGEgbmFtZT0ibDAwOTA1Ij48L2E+MDA5MDUgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj46Ci08YSBuYW1lPSJsMDA5MDYiPjwvYT4wMDkwNiAgICAgVGlYbWxBdHRyaWJ1dGVTZXQoKTsKLTxhIG5hbWU9ImwwMDkwNyI+PC9hPjAwOTA3ICAgICB+VGlYbWxBdHRyaWJ1dGVTZXQoKTsKLTxhIG5hbWU9ImwwMDkwOCI+PC9hPjAwOTA4IAotPGEgbmFtZT0ibDAwOTA5Ij48L2E+MDA5MDkgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gQWRkKCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+KiBhdHRyaWJ1dGUgKTsKLTxhIG5hbWU9ImwwMDkxMCI+PC9hPjAwOTEwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IFJlbW92ZSggPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiogYXR0cmlidXRlICk7Ci08YSBuYW1lPSJsMDA5MTEiPjwvYT4wMDkxMSAKLTxhIG5hbWU9ImwwMDkxMiI+PC9hPjAwOTEyICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIHRpdGxlPSJBbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIuIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIEZpcnN0KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+ICAgY29uc3QgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCBzZW50aW5lbC5uZXh0ID09ICZhbXA7c2VudGluZWwgKSA/IDAgOiBzZW50aW5lbC5uZXh0OyB9Ci08YSBuYW1lPSJsMDA5MTMiPjwvYT4wMDkxMyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiogRmlyc3QoKSAgICAgICAgICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCBzZW50aW5lbC5uZXh0ID09ICZhbXA7c2VudGluZWwgKSA/IDAgOiBzZW50aW5lbC5uZXh0OyB9Ci08YSBuYW1lPSJsMDA5MTQiPjwvYT4wMDkxNCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+KiBMYXN0KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICggc2VudGluZWwucHJldiA9PSAmYW1wO3NlbnRpbmVsICkgPyAwIDogc2VudGluZWwucHJldjsgfQotPGEgbmFtZT0ibDAwOTE1Ij48L2E+MDA5MTUgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIHRpdGxlPSJBbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIuIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIExhc3QoKSAgICAgICAgICAgICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICggc2VudGluZWwucHJldiA9PSAmYW1wO3NlbnRpbmVsICkgPyAwIDogc2VudGluZWwucHJldjsgfQotPGEgbmFtZT0ibDAwOTE2Ij48L2E+MDA5MTYgCi08YSBuYW1lPSJsMDA5MTciPjwvYT4wMDkxNyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiogRmluZCggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBfbmFtZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDA5MTgiPjwvYT4wMDkxOCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiogRmluZE9yQ3JlYXRlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIF9uYW1lICk7Ci08YSBuYW1lPSJsMDA5MTkiPjwvYT4wMDkxOSAKLTxhIG5hbWU9ImwwMDkyMCI+PC9hPjAwOTIwIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiMgICBpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgotPGEgbmFtZT0ibDAwOTIxIj48L2E+MDA5MjEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPiAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+KiBGaW5kKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX25hbWUgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAwOTIyIj48L2E+MDA5MjIgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIHRpdGxlPSJBbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIuIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIEZpbmRPckNyZWF0ZSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IF9uYW1lICk7Ci08YSBuYW1lPSJsMDA5MjMiPjwvYT4wMDkyMyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jICAgZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDA5MjQiPjwvYT4wMDkyNCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDA5MjUiPjwvYT4wMDkyNSAKLTxhIG5hbWU9ImwwMDkyNiI+PC9hPjAwOTI2IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wcml2YXRlPC9zcGFuPjoKLTxhIG5hbWU9ImwwMDkyNyI+PC9hPjAwOTI3ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8qTUU6ICBCZWNhdXNlIG9mIGhpZGRlbi9kaXNhYmxlZCBjb3B5LWNvbnN0cnVrdG9yIGluIFRpWG1sQXR0cmlidXRlIChzZW50aW5lbC1lbGVtZW50KSw8L3NwYW4+Ci08YSBuYW1lPSJsMDA5MjgiPjwvYT4wMDkyOCAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vKk1FOiAgdGhpcyBjbGFzcyBtdXN0IGJlIGFsc28gdXNlIGEgaGlkZGVuL2Rpc2FibGVkIGNvcHktY29uc3RydWN0b3IgISEhPC9zcGFuPgotPGEgbmFtZT0ibDAwOTI5Ij48L2E+MDA5MjkgICAgIFRpWG1sQXR0cmlidXRlU2V0KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IFRpWG1sQXR0cmlidXRlU2V0JmFtcDsgKTsgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBub3QgYWxsb3dlZDwvc3Bhbj4KLTxhIG5hbWU9ImwwMDkzMCI+PC9hPjAwOTMwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IG9wZXJhdG9yPSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBUaVhtbEF0dHJpYnV0ZVNldCZhbXA7ICk7IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBub3QgYWxsb3dlZCAoYXMgVGlYbWxBdHRyaWJ1dGUpPC9zcGFuPgotPGEgbmFtZT0ibDAwOTMxIj48L2E+MDA5MzEgCi08YSBuYW1lPSJsMDA5MzIiPjwvYT4wMDkzMiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiBzZW50aW5lbDsKLTxhIG5hbWU9ImwwMDkzMyI+PC9hPjAwOTMzIH07Ci08YSBuYW1lPSJsMDA5MzQiPjwvYT4wMDkzNCAKLTxhIG5hbWU9ImwwMDkzNSI+PC9hPjAwOTM1IAotPGEgbmFtZT0ibDAwOTQwIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiPjAwOTQwPC9hPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIiB0aXRsZT0iVGhlIGVsZW1lbnQgaXMgYSBjb250YWluZXIgY2xhc3MuIj5UaVhtbEVsZW1lbnQ8L2E+IDogPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+Ci08YSBuYW1lPSJsMDA5NDEiPjwvYT4wMDk0MSB7Ci08YSBuYW1lPSJsMDA5NDIiPjwvYT4wMDk0MiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPjoKLTxhIG5hbWU9ImwwMDk0NCI+PC9hPjAwOTQ0ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMDFiYzNhYjM3MmQzNWRhMDhlZmNiYmU2NWFkOTBjNjAiIHRpdGxlPSJDb25zdHJ1Y3QgYW4gZWxlbWVudC4iPlRpWG1sRWxlbWVudDwvYT4gKDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIGluX3ZhbHVlKTsKLTxhIG5hbWU9ImwwMDk0NSI+PC9hPjAwOTQ1IAotPGEgbmFtZT0ibDAwOTQ2Ij48L2E+MDA5NDYgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgotPGEgbmFtZT0ibDAwOTQ4Ij48L2E+MDA5NDggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgIFRpWG1sRWxlbWVudCggY29uc3Qgc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUgKTs8L3NwYW4+Ci08YSBuYW1lPSJsMDA5NDkiPjwvYT4wMDk0OSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbmRpZjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDk1MCI+PC9hPjAwOTUwIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KLTxhIG5hbWU9ImwwMDk1MSI+PC9hPjAwOTUxICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMDFiYzNhYjM3MmQzNWRhMDhlZmNiYmU2NWFkOTBjNjAiIHRpdGxlPSJDb25zdHJ1Y3QgYW4gZWxlbWVudC4iPlRpWG1sRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4mYW1wOyApOwotPGEgbmFtZT0ibDAwOTUyIj48L2E+MDA5NTIgCi08YSBuYW1lPSJsMDA5NTMiPjwvYT4wMDk1MyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4mYW1wOyBvcGVyYXRvcj0oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4mYW1wOyBiYXNlICk7Ci08YSBuYW1lPSJsMDA5NTQiPjwvYT4wMDk1NCAKLTxhIG5hbWU9ImwwMDk1NSI+PC9hPjAwOTU1ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gfjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIiB0aXRsZT0iVGhlIGVsZW1lbnQgaXMgYSBjb250YWluZXIgY2xhc3MuIj5UaVhtbEVsZW1lbnQ8L2E+KCk7Ci08YSBuYW1lPSJsMDA5NTYiPjwvYT4wMDk1NiAKLTxhIG5hbWU9ImwwMDk2MCI+PC9hPjAwOTYwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlNDE5YTQ0MmE5NzAxYTYyYjBjM2Q4ZmQxY2JkZDEyZCIgdGl0bGU9IkdpdmVuIGFuIGF0dHJpYnV0ZSBuYW1lLCBBdHRyaWJ1dGUoKSByZXR1cm5zIHRoZSB2YWx1ZSBmb3IgdGhlIGF0dHJpYnV0ZSBvZiB0aGF0Li4uIj5BdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIG5hbWUgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAwOTYxIj48L2E+MDA5NjEgCi08YSBuYW1lPSJsMDA5NjgiPjwvYT4wMDk2OCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZTQxOWE0NDJhOTcwMWE2MmIwYzNkOGZkMWNiZGQxMmQiIHRpdGxlPSJHaXZlbiBhbiBhdHRyaWJ1dGUgbmFtZSwgQXR0cmlidXRlKCkgcmV0dXJucyB0aGUgdmFsdWUgZm9yIHRoZSBhdHRyaWJ1dGUgb2YgdGhhdC4uLiI+QXR0cmlidXRlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4qIGkgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAwOTY5Ij48L2E+MDA5NjkgCi08YSBuYW1lPSJsMDA5NzYiPjwvYT4wMDk3NiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhZTQxOWE0NDJhOTcwMWE2MmIwYzNkOGZkMWNiZGQxMmQiIHRpdGxlPSJHaXZlbiBhbiBhdHRyaWJ1dGUgbmFtZSwgQXR0cmlidXRlKCkgcmV0dXJucyB0aGUgdmFsdWUgZm9yIHRoZSBhdHRyaWJ1dGUgb2YgdGhhdC4uLiI+QXR0cmlidXRlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmRvdWJsZTwvc3Bhbj4qIGQgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAwOTc3Ij48L2E+MDA5NzcgCi08YSBuYW1lPSJsMDA5ODUiPjwvYT4wMDk4NSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlYTBiZmU0NzEzODBmMjgxYzU5NDU3NzBkZGJmNTJiOSIgdGl0bGU9IlF1ZXJ5SW50QXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBpdCBpcyBhbiBhbHRlcm5hdGl2ZSB0byB0aGUgQXR0cmlidXRlKCkuLi4iPlF1ZXJ5SW50QXR0cmlidXRlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4qIF92YWx1ZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDA5ODciPjwvYT4wMDk4NyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FlNDhkZjY0NGY4OTBhYjg2ZmExOTgzOWFjNDAxZjAwZCIgdGl0bGU9IlF1ZXJ5VW5zaWduZWRBdHRyaWJ1dGUgZXhhbWluZXMgdGhlIGF0dHJpYnV0ZSAtIHNlZSBRdWVyeUludEF0dHJpYnV0ZSgpLiI+UXVlcnlVbnNpZ25lZEF0dHJpYnV0ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj51bnNpZ25lZDwvc3Bhbj4qIF92YWx1ZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDA5OTIiPjwvYT4wMDk5MiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FmNGExZDNmODhjMjhlYjBmMzExNWRjMzllYmQ4M2ZmZiIgdGl0bGU9IlF1ZXJ5Qm9vbEF0dHJpYnV0ZSBleGFtaW5lcyB0aGUgYXR0cmlidXRlIC0gc2VlIFF1ZXJ5SW50QXR0cmlidXRlKCkuIj5RdWVyeUJvb2xBdHRyaWJ1dGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIG5hbWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4qIF92YWx1ZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDA5OTQiPjwvYT4wMDk5NCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E4OThkNzczMGVjYzM0MWYwYmZmYzdhOWRhZGJmMWNlNyIgdGl0bGU9IlF1ZXJ5RG91YmxlQXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBzZWUgUXVlcnlJbnRBdHRyaWJ1dGUoKS4iPlF1ZXJ5RG91YmxlQXR0cmlidXRlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmRvdWJsZTwvc3Bhbj4qIF92YWx1ZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDA5OTYiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhYTA0ZDNhZjExNjAxZWY1YTVmODgyOTUyMDNhODQzYmUiPjAwOTk2PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FhMDRkM2FmMTE2MDFlZjVhNWY4ODI5NTIwM2E4NDNiZSIgdGl0bGU9IlF1ZXJ5RmxvYXRBdHRyaWJ1dGUgZXhhbWluZXMgdGhlIGF0dHJpYnV0ZSAtIHNlZSBRdWVyeUludEF0dHJpYnV0ZSgpLiI+UXVlcnlGbG9hdEF0dHJpYnV0ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5mbG9hdDwvc3Bhbj4qIF92YWx1ZSApPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+ewotPGEgbmFtZT0ibDAwOTk3Ij48L2E+MDA5OTcgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmRvdWJsZTwvc3Bhbj4gZDsKLTxhIG5hbWU9ImwwMDk5OCI+PC9hPjAwOTk4ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IHJlc3VsdCA9IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E4OThkNzczMGVjYzM0MWYwYmZmYzdhOWRhZGJmMWNlNyIgdGl0bGU9IlF1ZXJ5RG91YmxlQXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBzZWUgUXVlcnlJbnRBdHRyaWJ1dGUoKS4iPlF1ZXJ5RG91YmxlQXR0cmlidXRlPC9hPiggbmFtZSwgJmFtcDtkICk7Ci08YSBuYW1lPSJsMDA5OTkiPjwvYT4wMDk5OSAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+aWY8L3NwYW4+ICggcmVzdWx0ID09IFRJWE1MX1NVQ0NFU1MgKSB7Ci08YSBuYW1lPSJsMDEwMDAiPjwvYT4wMTAwMCAgICAgICAgICAgICAqX3ZhbHVlID0gKGZsb2F0KWQ7Ci08YSBuYW1lPSJsMDEwMDEiPjwvYT4wMTAwMSAgICAgICAgIH0KLTxhIG5hbWU9ImwwMTAwMiI+PC9hPjAxMDAyICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHJlc3VsdDsKLTxhIG5hbWU9ImwwMTAwMyI+PC9hPjAxMDAzICAgICB9Ci08YSBuYW1lPSJsMDEwMDQiPjwvYT4wMTAwNCAKLTxhIG5hbWU9ImwwMTAwNSI+PC9hPjAxMDA1IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KLTxhIG5hbWU9ImwwMTAwNyI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExNDMyMWFjMzYwZWZlOTA2ZWQ0NDlkOWRiM2ZkOTk2MSI+MDEwMDc8L2E+IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICBpbnQgUXVlcnlTdHJpbmdBdHRyaWJ1dGUoIGNvbnN0IGNoYXIqIG5hbWUsIHN0ZDo6c3RyaW5nKiBfdmFsdWUgKSBjb25zdCB7PC9zcGFuPgotPGEgbmFtZT0ibDAxMDA4Ij48L2E+MDEwMDggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPiAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBjc3RyID0gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWU0MTlhNDQyYTk3MDFhNjJiMGMzZDhmZDFjYmRkMTJkIiB0aXRsZT0iR2l2ZW4gYW4gYXR0cmlidXRlIG5hbWUsIEF0dHJpYnV0ZSgpIHJldHVybnMgdGhlIHZhbHVlIGZvciB0aGUgYXR0cmlidXRlIG9mIHRoYXQuLi4iPkF0dHJpYnV0ZTwvYT4oIG5hbWUgKTsKLTxhIG5hbWU9ImwwMTAwOSI+PC9hPjAxMDA5ICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKCBjc3RyICkgewotPGEgbmFtZT0ibDAxMDEwIj48L2E+MDEwMTAgICAgICAgICAgICAgKl92YWx1ZSA9IHN0ZDo6c3RyaW5nKCBjc3RyICk7Ci08YSBuYW1lPSJsMDEwMTEiPjwvYT4wMTAxMSAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gVElYTUxfU1VDQ0VTUzsKLTxhIG5hbWU9ImwwMTAxMiI+PC9hPjAxMDEyICAgICAgICAgfQotPGEgbmFtZT0ibDAxMDEzIj48L2E+MDEwMTMgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gVElYTUxfTk9fQVRUUklCVVRFOwotPGEgbmFtZT0ibDAxMDE0Ij48L2E+MDEwMTQgICAgIH0KLTxhIG5hbWU9ImwwMTAxNSI+PC9hPjAxMDE1IAotPGEgbmFtZT0ibDAxMDI0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwjYWUzYjlhMDNiMGE1NjY2M2E0MDgwMWM3MjU2NjgzNTc2Ij4wMTAyNDwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50ZW1wbGF0ZTwvc3Bhbj4mbHQ7IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50eXBlbmFtZTwvc3Bhbj4gVCAmZ3Q7IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBRdWVyeVZhbHVlQXR0cmlidXRlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgbmFtZSwgVCogb3V0VmFsdWUgKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3Q8L3NwYW4+Ci08YSBuYW1lPSJsMDEwMjUiPjwvYT4wMTAyNSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+ICAgIDwvc3Bhbj57Ci08YSBuYW1lPSJsMDEwMjYiPjwvYT4wMTAyNiAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiogbm9kZSA9IGF0dHJpYnV0ZVNldC5GaW5kKCBuYW1lICk7Ci08YSBuYW1lPSJsMDEwMjciPjwvYT4wMTAyNyAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+aWY8L3NwYW4+ICggIW5vZGUgKQotPGEgbmFtZT0ibDAxMDI4Ij48L2E+MDEwMjggICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IFRJWE1MX05PX0FUVFJJQlVURTsKLTxhIG5hbWU9ImwwMTAyOSI+PC9hPjAxMDI5IAotPGEgbmFtZT0ibDAxMDMwIj48L2E+MDEwMzAgICAgICAgICBzdGQ6OnN0cmluZ3N0cmVhbSBzc3RyZWFtKCBub2RlLSZndDs8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sI2E4NzcwNWMzY2NmOWVlOTQxN2JlYjRmN2NiYWNkNGQzMyIgdGl0bGU9IlJldHVybiB0aGUgdmFsdWUgb2YgdGhpcyBhdHRyaWJ1dGUuIj5WYWx1ZVN0cjwvYT4oKSApOwotPGEgbmFtZT0ibDAxMDMxIj48L2E+MDEwMzEgICAgICAgICBzc3RyZWFtICZndDsmZ3Q7ICpvdXRWYWx1ZTsKLTxhIG5hbWU9ImwwMTAzMiI+PC9hPjAxMDMyICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5pZjwvc3Bhbj4gKCAhc3N0cmVhbS5mYWlsKCkgKQotPGEgbmFtZT0ibDAxMDMzIj48L2E+MDEwMzMgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IFRJWE1MX1NVQ0NFU1M7Ci08YSBuYW1lPSJsMDEwMzQiPjwvYT4wMTAzNCAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBUSVhNTF9XUk9OR19UWVBFOwotPGEgbmFtZT0ibDAxMDM1Ij48L2E+MDEwMzUgICAgIH0KLTxhIG5hbWU9ImwwMTAzNiI+PC9hPjAxMDM2IAotPGEgbmFtZT0ibDAxMDM3Ij48L2E+MDEwMzcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBRdWVyeVZhbHVlQXR0cmlidXRlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgbmFtZSwgc3RkOjpzdHJpbmcqIG91dFZhbHVlICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0PC9zcGFuPgotPGEgbmFtZT0ibDAxMDM4Ij48L2E+MDEwMzggPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgICA8L3NwYW4+ewotPGEgbmFtZT0ibDAxMDM5Ij48L2E+MDEwMzkgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwiIHRpdGxlPSJBbiBhdHRyaWJ1dGUgaXMgYSBuYW1lLXZhbHVlIHBhaXIuIj5UaVhtbEF0dHJpYnV0ZTwvYT4qIG5vZGUgPSBhdHRyaWJ1dGVTZXQuRmluZCggbmFtZSApOwotPGEgbmFtZT0ibDAxMDQwIj48L2E+MDEwNDAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPmlmPC9zcGFuPiAoICFub2RlICkKLTxhIG5hbWU9ImwwMTA0MSI+PC9hPjAxMDQxICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBUSVhNTF9OT19BVFRSSUJVVEU7Ci08YSBuYW1lPSJsMDEwNDIiPjwvYT4wMTA0MiAgICAgICAgICpvdXRWYWx1ZSA9IG5vZGUtJmd0OzxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQXR0cmlidXRlLmh0bWwjYTg3NzA1YzNjY2Y5ZWU5NDE3YmViNGY3Y2JhY2Q0ZDMzIiB0aXRsZT0iUmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGlzIGF0dHJpYnV0ZS4iPlZhbHVlU3RyPC9hPigpOwotPGEgbmFtZT0ibDAxMDQzIj48L2E+MDEwNDMgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gVElYTUxfU1VDQ0VTUzsKLTxhIG5hbWU9ImwwMTA0NCI+PC9hPjAxMDQ0ICAgICB9Ci08YSBuYW1lPSJsMDEwNDUiPjwvYT4wMTA0NSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgotPGEgbmFtZT0ibDAxMDQ2Ij48L2E+MDEwNDYgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAxMDUwIj48L2E+MDEwNTAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gU2V0QXR0cmlidXRlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIG5hbWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIF92YWx1ZSApOwotPGEgbmFtZT0ibDAxMDUxIj48L2E+MDEwNTEgCi08YSBuYW1lPSJsMDEwNTIiPjwvYT4wMTA1MiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Ci08YSBuYW1lPSJsMDEwNTMiPjwvYT4wMTA1MyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcqIEF0dHJpYnV0ZSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IG5hbWUgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxMDU0Ij48L2E+MDEwNTQgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcqIEF0dHJpYnV0ZSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyZhbXA7IG5hbWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiogaSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDEwNTUiPjwvYT4wMTA1NSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiBzdGQ6OnN0cmluZyogQXR0cmlidXRlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5kb3VibGU8L3NwYW4+KiBkICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTA1NiI+PC9hPjAxMDU2ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gUXVlcnlJbnRBdHRyaWJ1dGUoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4qIF92YWx1ZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDEwNTciPjwvYT4wMTA1NyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IFF1ZXJ5RG91YmxlQXR0cmlidXRlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgbmFtZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5kb3VibGU8L3NwYW4+KiBfdmFsdWUgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxMDU4Ij48L2E+MDEwNTggCi08YSBuYW1lPSJsMDEwNjAiPjwvYT4wMTA2MCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTZXRBdHRyaWJ1dGUoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlICk7Ci08YSBuYW1lPSJsMDEwNjIiPjwvYT4wMTA2MiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTZXRBdHRyaWJ1dGUoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gX3ZhbHVlICk7Ci08YSBuYW1lPSJsMDEwNjQiPjwvYT4wMTA2NCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTZXREb3VibGVBdHRyaWJ1dGUoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBuYW1lLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmRvdWJsZTwvc3Bhbj4gdmFsdWUgKTsKLTxhIG5hbWU9ImwwMTA2NSI+PC9hPjAxMDY1IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDEwNjYiPjwvYT4wMTA2NiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDEwNzAiPjwvYT4wMTA3MCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTZXRBdHRyaWJ1dGUoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIG5hbWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiB2YWx1ZSApOwotPGEgbmFtZT0ibDAxMDcxIj48L2E+MDEwNzEgCi08YSBuYW1lPSJsMDEwNzUiPjwvYT4wMTA3NSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTZXREb3VibGVBdHRyaWJ1dGUoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIG5hbWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+ZG91YmxlPC9zcGFuPiB2YWx1ZSApOwotPGEgbmFtZT0ibDAxMDc2Ij48L2E+MDEwNzYgCi08YSBuYW1lPSJsMDEwNzkiPjwvYT4wMTA3OSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBSZW1vdmVBdHRyaWJ1dGUoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIG5hbWUgKTsKLTxhIG5hbWU9ImwwMTA4MCI+PC9hPjAxMDgwIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KLTxhIG5hbWU9ImwwMTA4MSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExYWZhNmFlYTcxNjUxMTMyNmE2MDhlNGMwNWRmNGYzYSI+MDEwODE8L2E+IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhMWFmYTZhZWE3MTY1MTEzMjZhNjA4ZTRjMDVkZjRmM2EiIHRpdGxlPSJTVEwgc3RkOjpzdHJpbmcgZm9ybS4iPlJlbW92ZUF0dHJpYnV0ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBuYW1lICkgeyAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2ExYWZhNmFlYTcxNjUxMTMyNmE2MDhlNGMwNWRmNGYzYSIgdGl0bGU9IlNUTCBzdGQ6OnN0cmluZyBmb3JtLiI+UmVtb3ZlQXR0cmlidXRlPC9hPiAobmFtZS5jX3N0ciAoKSk7ICAgIH0gICAKLTxhIG5hbWU9ImwwMTA4MiI+PC9hPjAxMDgyIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDEwODMiPjwvYT4wMTA4MyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDEwODQiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNTE2MDU0YzkwNzM2NDdkNmNiMjliNmFiZTlmYTA1OTIiPjAxMDg0PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhNTE2MDU0YzkwNzM2NDdkNmNiMjliNmFiZTlmYTA1OTIiIHRpdGxlPSJBY2Nlc3MgdGhlIGZpcnN0IGF0dHJpYnV0ZSBpbiB0aGlzIGVsZW1lbnQuIj5GaXJzdEF0dHJpYnV0ZTwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGF0dHJpYnV0ZVNldC5GaXJzdCgpOyB9ICAgICAgICAKLTxhIG5hbWU9ImwwMTA4NSI+PC9hPjAxMDg1ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+KiBGaXJzdEF0dHJpYnV0ZSgpICAgICAgICAgICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGF0dHJpYnV0ZVNldC5GaXJzdCgpOyB9Ci08YSBuYW1lPSJsMDEwODYiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhODYxOTFiNDlmOTE3N2JlMTMyYjg1YjE0NjU1ZjEzODEiPjAxMDg2PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhODYxOTFiNDlmOTE3N2JlMTMyYjg1YjE0NjU1ZjEzODEiIHRpdGxlPSJBY2Nlc3MgdGhlIGxhc3QgYXR0cmlidXRlIGluIHRoaXMgZWxlbWVudC4iPkxhc3RBdHRyaWJ1dGU8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+ICAgY29uc3QgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gYXR0cmlidXRlU2V0Lkxhc3QoKTsgfSAgICAgCi08YSBuYW1lPSJsMDEwODciPjwvYT4wMTA4NyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxBdHRyaWJ1dGUuaHRtbCIgdGl0bGU9IkFuIGF0dHJpYnV0ZSBpcyBhIG5hbWUtdmFsdWUgcGFpci4iPlRpWG1sQXR0cmlidXRlPC9hPiogTGFzdEF0dHJpYnV0ZSgpICAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBhdHRyaWJ1dGVTZXQuTGFzdCgpOyB9Ci08YSBuYW1lPSJsMDEwODgiPjwvYT4wMTA4OCAKLTxhIG5hbWU9ImwwMTEyMSI+PC9hPjAxMTIxICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIEdldFRleHQoKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxMTIyIj48L2E+MDExMjIgCi08YSBuYW1lPSJsMDExMjQiPjwvYT4wMTEyNCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogQ2xvbmUoKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxMTI1Ij48L2E+MDExMjUgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBQcmludCB0aGUgRWxlbWVudCB0byBhIEZJTEUgc3RyZWFtLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMTEyNiI+PC9hPjAxMTI2ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBQcmludCggRklMRSogY2ZpbGUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBkZXB0aCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDExMjciPjwvYT4wMTEyNyAKLTxhIG5hbWU9ImwwMTEyOCI+PC9hPjAxMTI4ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+LyogIEF0dHJpYnR1ZSBwYXJzaW5nIHN0YXJ0czogbmV4dCBjaGFyIHBhc3QgJiMzOTsmbHQ7JiMzOTs8L3NwYW4+Ci08YSBuYW1lPSJsMDExMjkiPjwvYT4wMTEyOSA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybnM6IG5leHQgY2hhciBwYXN0ICYjMzk7Jmd0OyYjMzk7PC9zcGFuPgotPGEgbmFtZT0ibDAxMTMwIj48L2E+MDExMzAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAqLzwvc3Bhbj4KLTxhIG5hbWU9ImwwMTEzMSI+PC9hPjAxMTMxICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBQYXJzZSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBwLCBUaVhtbFBhcnNpbmdEYXRhKiBkYXRhLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7Ci08YSBuYW1lPSJsMDExMzIiPjwvYT4wMTEzMiAKLTxhIG5hbWU9ImwwMTEzMyI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FjNWI4ZDBlMjVmYTIzZmQ5YWNiYjZkMTQ2MDgyOTAxYyI+MDExMzM8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiogICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2FjNWI4ZDBlMjVmYTIzZmQ5YWNiYjZkMTQ2MDgyOTAxYyIgdGl0bGU9IkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiI+VG9FbGVtZW50PC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiAgICAgY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPjsgfSAKLTxhIG5hbWU9ImwwMTEzNCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sI2E5ZGVmODYzMzdlYTdhNzU1ZWI0MWNhYzk4MGY2MGM3YSI+MDExMzQ8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4qICAgICAgICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCNhOWRlZjg2MzM3ZWE3YTc1NWViNDFjYWM5ODBmNjBjN2EiIHRpdGxlPSJDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4iPlRvRWxlbWVudDwvYT4oKSAgICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+OyB9IAotPGEgbmFtZT0ibDAxMTM1Ij48L2E+MDExMzUgCi08YSBuYW1lPSJsMDExMzgiPjwvYT4wMTEzOCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gQWNjZXB0KCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCIgdGl0bGU9IkltcGxlbWVudHMgdGhlIGludGVyZmFjZSB0byB0aGUgJmFtcDtxdW90O1Zpc2l0b3IgcGF0dGVybiZhbXA7cXVvdDsgKHNlZSB0aGUgQWNjZXB0KCkgbWV0aG9kLi4uIj5UaVhtbFZpc2l0b3I8L2E+KiB2aXNpdG9yICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTEzOSI+PC9hPjAxMTM5IAotPGEgbmFtZT0ibDAxMTQwIj48L2E+MDExNDAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByb3RlY3RlZDwvc3Bhbj46Ci08YSBuYW1lPSJsMDExNDEiPjwvYT4wMTE0MSAKLTxhIG5hbWU9ImwwMTE0MiI+PC9hPjAxMTQyICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IENvcHlUbyggPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4qIHRhcmdldCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDExNDMiPjwvYT4wMTE0MyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBDbGVhclRoaXMoKTsgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gbGlrZSBjbGVhciwgYnV0IGluaXRpYWxpemVzICYjMzk7dGhpcyYjMzk7IG9iamVjdCBhcyB3ZWxsPC9zcGFuPgotPGEgbmFtZT0ibDAxMTQ0Ij48L2E+MDExNDQgCi08YSBuYW1lPSJsMDExNDUiPjwvYT4wMTE0NSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFVzZWQgdG8gYmUgcHVibGljIFtpbnRlcm5hbCB1c2VdPC9zcGFuPgotPGEgbmFtZT0ibDAxMTQ2Ij48L2E+MDExNDYgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgotPGEgbmFtZT0ibDAxMTQ3Ij48L2E+MDExNDcgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPiAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBTdHJlYW1Jbiggc3RkOjppc3RyZWFtICogaW4sIFRJWE1MX1NUUklORyAqIHRhZyApOwotPGEgbmFtZT0ibDAxMTQ4Ij48L2E+MDExNDggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbmRpZjwvc3Bhbj4KLTxhIG5hbWU9ImwwMTE0OSI+PC9hPjAxMTQ5IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8qICBbaW50ZXJuYWwgdXNlXTwvc3Bhbj4KLTxhIG5hbWU9ImwwMTE1MCI+PC9hPjAxMTUwIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgICAgIFJlYWRzIHRoZSAmcXVvdDt2YWx1ZSZxdW90OyBvZiB0aGUgZWxlbWVudCAtLSBhbm90aGVyIGVsZW1lbnQsIG9yIHRleHQuPC9zcGFuPgotPGEgbmFtZT0ibDAxMTUxIj48L2E+MDExNTEgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAgICAgVGhpcyBzaG91bGQgdGVybWluYXRlIHdpdGggdGhlIGN1cnJlbnQgZW5kIHRhZy48L3NwYW4+Ci08YSBuYW1lPSJsMDExNTIiPjwvYT4wMTE1MiA8c3BhbiBjbGFzcz0iY29tbWVudCI+ICAgICovPC9zcGFuPgotPGEgbmFtZT0ibDAxMTUzIj48L2E+MDExNTMgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogUmVhZFZhbHVlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIGluLCBUaVhtbFBhcnNpbmdEYXRhKiBwcmV2RGF0YSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApOwotPGEgbmFtZT0ibDAxMTU0Ij48L2E+MDExNTQgCi08YSBuYW1lPSJsMDExNTUiPjwvYT4wMTE1NSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJpdmF0ZTwvc3Bhbj46Ci08YSBuYW1lPSJsMDExNTYiPjwvYT4wMTE1NiAgICAgVGlYbWxBdHRyaWJ1dGVTZXQgYXR0cmlidXRlU2V0OwotPGEgbmFtZT0ibDAxMTU3Ij48L2E+MDExNTcgfTsKLTxhIG5hbWU9ImwwMTE1OCI+PC9hPjAxMTU4IAotPGEgbmFtZT0ibDAxMTU5Ij48L2E+MDExNTkgCi08YSBuYW1lPSJsMDExNjIiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCI+MDExNjI8L2E+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiIHRpdGxlPSJBbiBYTUwgY29tbWVudC4iPlRpWG1sQ29tbWVudDwvYT4gOiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4KLTxhIG5hbWU9ImwwMTE2MyI+PC9hPjAxMTYzIHsKLTxhIG5hbWU9ImwwMTE2NCI+PC9hPjAxMTY0IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+OgotPGEgbmFtZT0ibDAxMTY2Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYWFhMzI1MjAzMWQzZThiZDNhMmJmNTFhMWM2MTIwMWI3Ij4wMTE2NjwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2FhYTMyNTIwMzFkM2U4YmQzYTJiZjUxYTFjNjEyMDFiNyIgdGl0bGU9IkNvbnN0cnVjdHMgYW4gZW1wdHkgY29tbWVudC4iPlRpWG1sQ29tbWVudDwvYT4oKSA6IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiggPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+OjpUSU5ZWE1MX0NPTU1FTlQgKSB7fQotPGEgbmFtZT0ibDAxMTY4Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYTM3ZTc4MDJlZjE3YmMwM2ViZTVhZTc5YmYwNzEzZDQ3Ij4wMTE2ODwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2EzN2U3ODAyZWYxN2JjMDNlYmU1YWU3OWJmMDcxM2Q0NyIgdGl0bGU9IkNvbnN0cnVjdCBhIGNvbW1lbnQgZnJvbSB0ZXh0LiI+VGlYbWxDb21tZW50PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBfdmFsdWUgKSA6IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiggPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+OjpUSU5ZWE1MX0NPTU1FTlQgKSB7Ci08YSBuYW1lPSJsMDExNjkiPjwvYT4wMTE2OSAgICAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2EyYTM4MzI5Y2E1ZDNmMjhmOThjZTkzMmI4Mjk5YWU5MCIgdGl0bGU9IkNoYW5nZXMgdGhlIHZhbHVlIG9mIHRoZSBub2RlLiI+U2V0VmFsdWU8L2E+KCBfdmFsdWUgKTsKLTxhIG5hbWU9ImwwMTE3MCI+PC9hPjAxMTcwICAgICB9Ci08YSBuYW1lPSJsMDExNzEiPjwvYT4wMTE3MSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYWFhMzI1MjAzMWQzZThiZDNhMmJmNTFhMWM2MTIwMWI3IiB0aXRsZT0iQ29uc3RydWN0cyBhbiBlbXB0eSBjb21tZW50LiI+VGlYbWxDb21tZW50PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCIgdGl0bGU9IkFuIFhNTCBjb21tZW50LiI+VGlYbWxDb21tZW50PC9hPiZhbXA7ICk7Ci08YSBuYW1lPSJsMDExNzIiPjwvYT4wMTE3MiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiIHRpdGxlPSJBbiBYTUwgY29tbWVudC4iPlRpWG1sQ29tbWVudDwvYT4mYW1wOyBvcGVyYXRvcj0oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiIHRpdGxlPSJBbiBYTUwgY29tbWVudC4iPlRpWG1sQ29tbWVudDwvYT4mYW1wOyBiYXNlICk7Ci08YSBuYW1lPSJsMDExNzMiPjwvYT4wMTE3MyAKLTxhIG5hbWU9ImwwMTE3NCI+PC9hPjAxMTc0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gfjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIiB0aXRsZT0iQW4gWE1MIGNvbW1lbnQuIj5UaVhtbENvbW1lbnQ8L2E+KCkge30KLTxhIG5hbWU9ImwwMTE3NSI+PC9hPjAxMTc1IAotPGEgbmFtZT0ibDAxMTc3Ij48L2E+MDExNzcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2EwZDY2NjJiZGM1MjQ4OGI5ZTEyYjNjN2EwNDUzZDAyOCIgdGl0bGU9IlJldHVybnMgYSBjb3B5IG9mIHRoaXMgQ29tbWVudC4iPkNsb25lPC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDExNzgiPjwvYT4wMTE3OCAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFdyaXRlIHRoaXMgQ29tbWVudCB0byBhIEZJTEUgc3RyZWFtLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMTE3OSI+PC9hPjAxMTc5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhNmIzMTY1MjdhYWE4ZGEwMzcwY2Q2OGMyMmE1YTBmNWYiIHRpdGxlPSJBbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbSBvciB0aGUgc3RyaW5nIGNsYXNzIChUaVhtbFN0cmluZy4uLiI+UHJpbnQ8L2E+KCBGSUxFKiBjZmlsZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGRlcHRoICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTE4MCI+PC9hPjAxMTgwIAotPGEgbmFtZT0ibDAxMTgxIj48L2E+MDExODEgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKiAgQXR0cmlidHVlIHBhcnNpbmcgc3RhcnRzOiBhdCB0aGUgISBvZiB0aGUgIS0tPC9zcGFuPgotPGEgbmFtZT0ibDAxMTgyIj48L2E+MDExODIgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm5zOiBuZXh0IGNoYXIgcGFzdCAmIzM5OyZndDsmIzM5Ozwvc3Bhbj4KLTxhIG5hbWU9ImwwMTE4MyI+PC9hPjAxMTgzIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgKi88L3NwYW4+Ci08YSBuYW1lPSJsMDExODQiPjwvYT4wMTE4NCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogUGFyc2UoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogcCwgVGlYbWxQYXJzaW5nRGF0YSogZGF0YSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApOwotPGEgbmFtZT0ibDAxMTg1Ij48L2E+MDExODUgCi08YSBuYW1lPSJsMDExODYiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhMDBmYjQyMTVjMjBhMjM5OWVhMDVhYzliOWU3ZTY4YTAiPjAxMTg2PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiIHRpdGxlPSJBbiBYTUwgY29tbWVudC4iPlRpWG1sQ29tbWVudDwvYT4qICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhMDBmYjQyMTVjMjBhMjM5OWVhMDVhYzliOWU3ZTY4YTAiIHRpdGxlPSJDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4iPlRvQ29tbWVudDwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj47IH0gCi08YSBuYW1lPSJsMDExODciPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCNhY2M3YzdlMDdlMTNjMjNmMTc3OTdkNjQyOTgxNTExZGYiPjAxMTg3PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+ICAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sIiB0aXRsZT0iQW4gWE1MIGNvbW1lbnQuIj5UaVhtbENvbW1lbnQ8L2E+KiAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwjYWNjN2M3ZTA3ZTEzYzIzZjE3Nzk3ZDY0Mjk4MTUxMWRmIiB0aXRsZT0iQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIj5Ub0NvbW1lbnQ8L2E+KCkgICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPjsgfSAKLTxhIG5hbWU9ImwwMTE4OCI+PC9hPjAxMTg4IAotPGEgbmFtZT0ibDAxMTkxIj48L2E+MDExOTEgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sQ29tbWVudC5odG1sI2FmM2FjMWI5OWZiYmU5ZWE0ZmI2ZTE0MTQ2MTU2ZTQzZSIgdGl0bGU9IldhbGsgdGhlIFhNTCB0cmVlIHZpc2l0aW5nIHRoaXMgbm9kZSBhbmQgYWxsIG9mIGl0cyBjaGlsZHJlbi4iPkFjY2VwdDwvYT4oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIiB0aXRsZT0iSW1wbGVtZW50cyB0aGUgaW50ZXJmYWNlIHRvIHRoZSAmYW1wO3F1b3Q7VmlzaXRvciBwYXR0ZXJuJmFtcDtxdW90OyAoc2VlIHRoZSBBY2NlcHQoKSBtZXRob2QuLi4iPlRpWG1sVmlzaXRvcjwvYT4qIHZpc2l0b3IgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxMTkyIj48L2E+MDExOTIgCi08YSBuYW1lPSJsMDExOTMiPjwvYT4wMTE5MyA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJvdGVjdGVkPC9zcGFuPjoKLTxhIG5hbWU9ImwwMTE5NCI+PC9hPjAxMTk0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IENvcHlUbyggPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxDb21tZW50Lmh0bWwiIHRpdGxlPSJBbiBYTUwgY29tbWVudC4iPlRpWG1sQ29tbWVudDwvYT4qIHRhcmdldCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDExOTUiPjwvYT4wMTE5NSAKLTxhIG5hbWU9ImwwMTE5NiI+PC9hPjAxMTk2ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gdXNlZCB0byBiZSBwdWJsaWM8L3NwYW4+Ci08YSBuYW1lPSJsMDExOTciPjwvYT4wMTE5NyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Ci08YSBuYW1lPSJsMDExOTgiPjwvYT4wMTE5OCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IFN0cmVhbUluKCBzdGQ6OmlzdHJlYW0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICk7Ci08YSBuYW1lPSJsMDExOTkiPjwvYT4wMTE5OSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgotPGEgbmFtZT0ibDAxMjAwIj48L2E+MDEyMDAgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyAgdmlydHVhbCB2b2lkIFN0cmVhbU91dCggVElYTUxfT1NUUkVBTSAqIG91dCApIGNvbnN0Ozwvc3Bhbj4KLTxhIG5hbWU9ImwwMTIwMSI+PC9hPjAxMjAxIAotPGEgbmFtZT0ibDAxMjAyIj48L2E+MDEyMDIgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByaXZhdGU8L3NwYW4+OgotPGEgbmFtZT0ibDAxMjAzIj48L2E+MDEyMDMgCi08YSBuYW1lPSJsMDEyMDQiPjwvYT4wMTIwNCB9OwotPGEgbmFtZT0ibDAxMjA1Ij48L2E+MDEyMDUgCi08YSBuYW1lPSJsMDEyMDYiPjwvYT4wMTIwNiAKLTxhIG5hbWU9ImwwMTIxMiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIj4wMTIxMjwvYT4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCIgdGl0bGU9IlhNTCB0ZXh0LiI+VGlYbWxUZXh0PC9hPiA6IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPgotPGEgbmFtZT0ibDAxMjEzIj48L2E+MDEyMTMgewotPGEgbmFtZT0ibDAxMjE0Ij48L2E+MDEyMTQgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5mcmllbmQ8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT47Ci08YSBuYW1lPSJsMDEyMTUiPjwvYT4wMTIxNSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPjoKLTxhIG5hbWU9ImwwMTIyMCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2FmNjU5ZTc3YzZiODdkNjg0ODI3ZjM1YThmNDg5NTk2MCI+MDEyMjA8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhZjY1OWU3N2M2Yjg3ZDY4NDgyN2YzNWE4ZjQ4OTU5NjAiIHRpdGxlPSJDb25zdHJ1Y3RvciBmb3IgdGV4dCBlbGVtZW50LiI+VGlYbWxUZXh0PC9hPiAoPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogaW5pdFZhbHVlICkgOiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4gKDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPjo6VElOWVhNTF9URVhUKQotPGEgbmFtZT0ibDAxMjIxIj48L2E+MDEyMjEgICAgIHsKLTxhIG5hbWU9ImwwMTIyMiI+PC9hPjAxMjIyICAgICAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTJhMzgzMjljYTVkM2YyOGY5OGNlOTMyYjgyOTlhZTkwIiB0aXRsZT0iQ2hhbmdlcyB0aGUgdmFsdWUgb2YgdGhlIG5vZGUuIj5TZXRWYWx1ZTwvYT4oIGluaXRWYWx1ZSApOwotPGEgbmFtZT0ibDAxMjIzIj48L2E+MDEyMjMgICAgICAgICBjZGF0YSA9IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5mYWxzZTwvc3Bhbj47Ci08YSBuYW1lPSJsMDEyMjQiPjwvYT4wMTIyNCAgICAgfQotPGEgbmFtZT0ibDAxMjI1Ij48L2E+MDEyMjUgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiB+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIHRpdGxlPSJYTUwgdGV4dC4iPlRpWG1sVGV4dDwvYT4oKSB7fQotPGEgbmFtZT0ibDAxMjI2Ij48L2E+MDEyMjYgCi08YSBuYW1lPSJsMDEyMjciPjwvYT4wMTIyNyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Ci08YSBuYW1lPSJsMDEyMjkiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhNDM5NzkyZjYxODNhM2QzZmI2ZjJiYzJiMTZmYTU2OTEiPjAxMjI5PC9hPiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgVGlYbWxUZXh0KCBjb25zdCBzdGQ6OnN0cmluZyZhbXA7IGluaXRWYWx1ZSApIDogVGlYbWxOb2RlIChUaVhtbE5vZGU6OlRJTllYTUxfVEVYVCk8L3NwYW4+Ci08YSBuYW1lPSJsMDEyMzAiPjwvYT4wMTIzMCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIHsKLTxhIG5hbWU9ImwwMTIzMSI+PC9hPjAxMjMxICAgICAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwjYTJhMzgzMjljYTVkM2YyOGY5OGNlOTMyYjgyOTlhZTkwIiB0aXRsZT0iQ2hhbmdlcyB0aGUgdmFsdWUgb2YgdGhlIG5vZGUuIj5TZXRWYWx1ZTwvYT4oIGluaXRWYWx1ZSApOwotPGEgbmFtZT0ibDAxMjMyIj48L2E+MDEyMzIgICAgICAgICBjZGF0YSA9IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5mYWxzZTwvc3Bhbj47Ci08YSBuYW1lPSJsMDEyMzMiPjwvYT4wMTIzMyAgICAgfQotPGEgbmFtZT0ibDAxMjM0Ij48L2E+MDEyMzQgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbmRpZjwvc3Bhbj4KLTxhIG5hbWU9ImwwMTIzNSI+PC9hPjAxMjM1IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KLTxhIG5hbWU9ImwwMTIzNiI+PC9hPjAxMjM2ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhZjY1OWU3N2M2Yjg3ZDY4NDgyN2YzNWE4ZjQ4OTU5NjAiIHRpdGxlPSJDb25zdHJ1Y3RvciBmb3IgdGV4dCBlbGVtZW50LiI+VGlYbWxUZXh0PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCIgdGl0bGU9IlhNTCB0ZXh0LiI+VGlYbWxUZXh0PC9hPiZhbXA7IGNvcHkgKSA6IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiggPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+OjpUSU5ZWE1MX1RFWFQgKSAgIHsgY29weS5Db3B5VG8oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPiApOyB9Ci08YSBuYW1lPSJsMDEyMzciPjwvYT4wMTIzNyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIHRpdGxlPSJYTUwgdGV4dC4iPlRpWG1sVGV4dDwvYT4mYW1wOyBvcGVyYXRvcj0oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIHRpdGxlPSJYTUwgdGV4dC4iPlRpWG1sVGV4dDwvYT4mYW1wOyBiYXNlICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBiYXNlLkNvcHlUbyggPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+ICk7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAqPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+OyB9Ci08YSBuYW1lPSJsMDEyMzgiPjwvYT4wMTIzOCAKLTxhIG5hbWU9ImwwMTIzOSI+PC9hPjAxMjM5ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gV3JpdGUgdGhpcyB0ZXh0IG9iamVjdCB0byBhIEZJTEUgc3RyZWFtLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMTI0MCI+PC9hPjAxMjQwICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhMGNhZmJmNmYyMzZjN2YwMmQxMmIyYmZmYzJiNzk3NmIiIHRpdGxlPSJBbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbSBvciB0aGUgc3RyaW5nIGNsYXNzIChUaVhtbFN0cmluZy4uLiI+UHJpbnQ8L2E+KCBGSUxFKiBjZmlsZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGRlcHRoICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTI0MSI+PC9hPjAxMjQxIAotPGEgbmFtZT0ibDAxMjQzIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYWQxYTZhNmI4M2ZhMjI3MTAyMmRkOTdjMDcyYTJiNTg2Ij4wMTI0MzwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYWQxYTZhNmI4M2ZhMjI3MTAyMmRkOTdjMDcyYTJiNTg2IiB0aXRsZT0iUXVlcmllcyB3aGV0aGVyIHRoaXMgcmVwcmVzZW50cyB0ZXh0IHVzaW5nIGEgQ0RBVEEgc2VjdGlvbi4iPkNEQVRBPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGNkYXRhOyB9Ci08YSBuYW1lPSJsMDEyNDUiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhY2IxN2ZmN2M1ZDA5YjJjODM5MzkzNDQ1YTNkZTVlYTkiPjAxMjQ1PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhY2IxN2ZmN2M1ZDA5YjJjODM5MzkzNDQ1YTNkZTVlYTkiIHRpdGxlPSJUdXJucyBvbiBvciBvZmYgYSBDREFUQSByZXByZXNlbnRhdGlvbiBvZiB0ZXh0LiI+U2V0Q0RBVEE8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IF9jZGF0YSApICAgIHsgY2RhdGEgPSBfY2RhdGE7IH0KLTxhIG5hbWU9ImwwMTI0NiI+PC9hPjAxMjQ2IAotPGEgbmFtZT0ibDAxMjQ3Ij48L2E+MDEyNDcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIFBhcnNlKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHAsIFRpWG1sUGFyc2luZ0RhdGEqIGRhdGEsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKLTxhIG5hbWU9ImwwMTI0OCI+PC9hPjAxMjQ4IAotPGEgbmFtZT0ibDAxMjQ5Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTg5NWJmMzRmZmFkMTdmNzQzOWFiMmE1MmI5NjUxNjQ4Ij4wMTI0OTwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIiB0aXRsZT0iWE1MIHRleHQuIj5UaVhtbFRleHQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFRleHQuaHRtbCNhODk1YmYzNGZmYWQxN2Y3NDM5YWIyYTUyYjk2NTE2NDgiIHRpdGxlPSJDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4iPlRvVGV4dDwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPjsgfSAKLTxhIG5hbWU9ImwwMTI1MCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2FlN2MzYThmZDNlNGRiZjZjMGM0MzYzYTk0M2Q3MmY1YiI+MDEyNTA8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIHRpdGxlPSJYTUwgdGV4dC4iPlRpWG1sVGV4dDwvYT4qICAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2FlN2MzYThmZDNlNGRiZjZjMGM0MzYzYTk0M2Q3MmY1YiIgdGl0bGU9IkNhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLiI+VG9UZXh0PC9hPigpICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPjsgfSAKLTxhIG5hbWU9ImwwMTI1MSI+PC9hPjAxMjUxIAotPGEgbmFtZT0ibDAxMjU0Ij48L2E+MDEyNTQgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sI2E4NDgzZDQ0MTVjZTlkZTZjNGZhOGY2M2QwNjdkNWRlNiIgdGl0bGU9IldhbGsgdGhlIFhNTCB0cmVlIHZpc2l0aW5nIHRoaXMgbm9kZSBhbmQgYWxsIG9mIGl0cyBjaGlsZHJlbi4iPkFjY2VwdDwvYT4oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIiB0aXRsZT0iSW1wbGVtZW50cyB0aGUgaW50ZXJmYWNlIHRvIHRoZSAmYW1wO3F1b3Q7VmlzaXRvciBwYXR0ZXJuJmFtcDtxdW90OyAoc2VlIHRoZSBBY2NlcHQoKSBtZXRob2QuLi4iPlRpWG1sVmlzaXRvcjwvYT4qIGNvbnRlbnQgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxMjU1Ij48L2E+MDEyNTUgCi08YSBuYW1lPSJsMDEyNTYiPjwvYT4wMTI1NiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJvdGVjdGVkPC9zcGFuPiA6Ci08YSBuYW1lPSJsMDEyNTgiPjwvYT4wMTI1OCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwjYTBjNDExZTkzYTI3NTM3MzY5NDc5ZDAzNGNjODJkYTNiIiB0aXRsZT0iW2ludGVybmFsIHVzZV0gQ3JlYXRlcyBhIG5ldyBFbGVtZW50IGFuZCByZXR1cm5zIGl0LiI+Q2xvbmU8L2E+KCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTI1OSI+PC9hPjAxMjU5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IENvcHlUbyggPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIHRpdGxlPSJYTUwgdGV4dC4iPlRpWG1sVGV4dDwvYT4qIHRhcmdldCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDEyNjAiPjwvYT4wMTI2MCAKLTxhIG5hbWU9ImwwMTI2MSI+PC9hPjAxMjYxICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IEJsYW5rKCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIHJldHVybnMgdHJ1ZSBpZiBhbGwgd2hpdGUgc3BhY2UgYW5kIG5ldyBsaW5lczwvc3Bhbj4KLTxhIG5hbWU9ImwwMTI2MiI+PC9hPjAxMjYyICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gW2ludGVybmFsIHVzZV08L3NwYW4+Ci08YSBuYW1lPSJsMDEyNjMiPjwvYT4wMTI2MyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Ci08YSBuYW1lPSJsMDEyNjQiPjwvYT4wMTI2NCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IFN0cmVhbUluKCBzdGQ6OmlzdHJlYW0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICk7Ci08YSBuYW1lPSJsMDEyNjUiPjwvYT4wMTI2NSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgotPGEgbmFtZT0ibDAxMjY2Ij48L2E+MDEyNjYgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAxMjY3Ij48L2E+MDEyNjcgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByaXZhdGU8L3NwYW4+OgotPGEgbmFtZT0ibDAxMjY4Ij48L2E+MDEyNjggICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gY2RhdGE7ICAgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIHRydWUgaWYgdGhpcyBzaG91bGQgYmUgaW5wdXQgYW5kIG91dHB1dCBhcyBhIENEQVRBIHN0eWxlIHRleHQgZWxlbWVudDwvc3Bhbj4KLTxhIG5hbWU9ImwwMTI2OSI+PC9hPjAxMjY5IH07Ci08YSBuYW1lPSJsMDEyNzAiPjwvYT4wMTI3MCAKLTxhIG5hbWU9ImwwMTI3MSI+PC9hPjAxMjcxIAotPGEgbmFtZT0ibDAxMjg1Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIj4wMTI4NTwvYT4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiIHRpdGxlPSJJbiBjb3JyZWN0IFhNTCB0aGUgZGVjbGFyYXRpb24gaXMgdGhlIGZpcnN0IGVudHJ5IGluIHRoZSBmaWxlLiI+VGlYbWxEZWNsYXJhdGlvbjwvYT4gOiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4KLTxhIG5hbWU9ImwwMTI4NiI+PC9hPjAxMjg2IHsKLTxhIG5hbWU9ImwwMTI4NyI+PC9hPjAxMjg3IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+OgotPGEgbmFtZT0ibDAxMjg5Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2FhMDQ4NGQwNTliZWEwZWExYWNiNDdjOTA5NDM4MmQ3OSI+MDEyODk8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYWEwNDg0ZDA1OWJlYTBlYTFhY2I0N2M5MDk0MzgyZDc5IiB0aXRsZT0iQ29uc3RydWN0IGFuIGVtcHR5IGRlY2xhcmF0aW9uLiI+VGlYbWxEZWNsYXJhdGlvbjwvYT4oKSAgIDogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT46OlRJTllYTUxfREVDTEFSQVRJT04gKSB7fQotPGEgbmFtZT0ibDAxMjkwIj48L2E+MDEyOTAgCi08YSBuYW1lPSJsMDEyOTEiPjwvYT4wMTI5MSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KLTxhIG5hbWU9ImwwMTI5MyI+PC9hPjAxMjkzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICBUaVhtbERlY2xhcmF0aW9uKCAgIGNvbnN0IHN0ZDo6c3RyaW5nJmFtcDsgX3ZlcnNpb24sPC9zcGFuPgotPGEgbmFtZT0ibDAxMjk0Ij48L2E+MDEyOTQgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfZW5jb2RpbmcsCi08YSBuYW1lPSJsMDEyOTUiPjwvYT4wMTI5NSAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3N0YW5kYWxvbmUgKTsKLTxhIG5hbWU9ImwwMTI5NiI+PC9hPjAxMjk2IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiNlbmRpZjwvc3Bhbj4KLTxhIG5hbWU9ImwwMTI5NyI+PC9hPjAxMjk3IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KLTxhIG5hbWU9ImwwMTI5OSI+PC9hPjAxMjk5ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYWEwNDg0ZDA1OWJlYTBlYTFhY2I0N2M5MDk0MzgyZDc5IiB0aXRsZT0iQ29uc3RydWN0IGFuIGVtcHR5IGRlY2xhcmF0aW9uLiI+VGlYbWxEZWNsYXJhdGlvbjwvYT4oICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBfdmVyc2lvbiwKLTxhIG5hbWU9ImwwMTMwMCI+PC9hPjAxMzAwICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogX2VuY29kaW5nLAotPGEgbmFtZT0ibDAxMzAxIj48L2E+MDEzMDEgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBfc3RhbmRhbG9uZSApOwotPGEgbmFtZT0ibDAxMzAyIj48L2E+MDEzMDIgCi08YSBuYW1lPSJsMDEzMDMiPjwvYT4wMTMwMyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2FhMDQ4NGQwNTliZWEwZWExYWNiNDdjOTA5NDM4MmQ3OSIgdGl0bGU9IkNvbnN0cnVjdCBhbiBlbXB0eSBkZWNsYXJhdGlvbi4iPlRpWG1sRGVjbGFyYXRpb248L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCIgdGl0bGU9IkluIGNvcnJlY3QgWE1MIHRoZSBkZWNsYXJhdGlvbiBpcyB0aGUgZmlyc3QgZW50cnkgaW4gdGhlIGZpbGUuIj5UaVhtbERlY2xhcmF0aW9uPC9hPiZhbXA7IGNvcHkgKTsKLTxhIG5hbWU9ImwwMTMwNCI+PC9hPjAxMzA0ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiIHRpdGxlPSJJbiBjb3JyZWN0IFhNTCB0aGUgZGVjbGFyYXRpb24gaXMgdGhlIGZpcnN0IGVudHJ5IGluIHRoZSBmaWxlLiI+VGlYbWxEZWNsYXJhdGlvbjwvYT4mYW1wOyBvcGVyYXRvcj0oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIiB0aXRsZT0iSW4gY29ycmVjdCBYTUwgdGhlIGRlY2xhcmF0aW9uIGlzIHRoZSBmaXJzdCBlbnRyeSBpbiB0aGUgZmlsZS4iPlRpWG1sRGVjbGFyYXRpb248L2E+JmFtcDsgY29weSApOwotPGEgbmFtZT0ibDAxMzA1Ij48L2E+MDEzMDUgCi08YSBuYW1lPSJsMDEzMDYiPjwvYT4wMTMwNiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IH48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiIHRpdGxlPSJJbiBjb3JyZWN0IFhNTCB0aGUgZGVjbGFyYXRpb24gaXMgdGhlIGZpcnN0IGVudHJ5IGluIHRoZSBmaWxlLiI+VGlYbWxEZWNsYXJhdGlvbjwvYT4oKSB7fQotPGEgbmFtZT0ibDAxMzA3Ij48L2E+MDEzMDcgCi08YSBuYW1lPSJsMDEzMDkiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTAyZWU1NTdiMWE0NTQ1YzMyMTllZDM3N2MxMDNlYzc2Ij4wMTMwOTwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2EwMmVlNTU3YjFhNDU0NWMzMjE5ZWQzNzdjMTAzZWM3NiIgdGl0bGU9IlZlcnNpb24uIFdpbGwgcmV0dXJuIGFuIGVtcHR5IHN0cmluZyBpZiBub25lIHdhcyBmb3VuZC4iPlZlcnNpb248L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHZlcnNpb24uY19zdHIgKCk7IH0KLTxhIG5hbWU9ImwwMTMxMSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhNWQ5NzQyMzFmOWU5YTJmMDU0MmYxNWYzYTQ2Y2RiNzYiPjAxMzExPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICo8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTVkOTc0MjMxZjllOWEyZjA1NDJmMTVmM2E0NmNkYjc2IiB0aXRsZT0iRW5jb2RpbmcuIFdpbGwgcmV0dXJuIGFuIGVtcHR5IHN0cmluZyBpZiBub25lIHdhcyBmb3VuZC4iPkVuY29kaW5nPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGVuY29kaW5nLmNfc3RyICgpOyB9Ci08YSBuYW1lPSJsMDEzMTMiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTlmZjA2YWZjMDMzZDdlZjczMGVjN2M2ODI1Yjk3YWQ5Ij4wMTMxMzwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E5ZmYwNmFmYzAzM2Q3ZWY3MzBlYzdjNjgyNWI5N2FkOSIgdGl0bGU9IklzIHRoaXMgYSBzdGFuZGFsb25lIGRvY3VtZW50PyI+U3RhbmRhbG9uZTwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gc3RhbmRhbG9uZS5jX3N0ciAoKTsgfQotPGEgbmFtZT0ibDAxMzE0Ij48L2E+MDEzMTQgCi08YSBuYW1lPSJsMDEzMTYiPjwvYT4wMTMxNiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E3Y2Y0NTkxODYwNDAxNDFjZGE3YTE4MGE2NTg1Y2UyZSIgdGl0bGU9IkNyZWF0ZXMgYSBjb3B5IG9mIHRoaXMgRGVjbGFyYXRpb24gYW5kIHJldHVybnMgaXQuIj5DbG9uZTwvYT4oKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxMzE3Ij48L2E+MDEzMTcgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBQcmludCB0aGlzIGRlY2xhcmF0aW9uIHRvIGEgRklMRSBzdHJlYW0uPC9zcGFuPgotPGEgbmFtZT0ibDAxMzE4Ij48L2E+MDEzMTggICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IFByaW50KCBGSUxFKiBjZmlsZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGRlcHRoLCBUSVhNTF9TVFJJTkcqIHN0ciApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDEzMTkiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYWJmNjMwM2RiNGJkMDViNWJlNTU0MDM2ODE3ZmYxY2I0Ij4wMTMxOTwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhYmY2MzAzZGI0YmQwNWI1YmU1NTQwMzY4MTdmZjFjYjQiIHRpdGxlPSJBbGwgVGlueVhtbCBjbGFzc2VzIGNhbiBwcmludCB0aGVtc2VsdmVzIHRvIGEgZmlsZXN0cmVhbSBvciB0aGUgc3RyaW5nIGNsYXNzIChUaVhtbFN0cmluZy4uLiI+UHJpbnQ8L2E+KCBGSUxFKiBjZmlsZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGRlcHRoICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0IDwvc3Bhbj57Ci08YSBuYW1lPSJsMDEzMjAiPjwvYT4wMTMyMCAgICAgICAgIFByaW50KCBjZmlsZSwgZGVwdGgsIDAgKTsKLTxhIG5hbWU9ImwwMTMyMSI+PC9hPjAxMzIxICAgICB9Ci08YSBuYW1lPSJsMDEzMjIiPjwvYT4wMTMyMiAKLTxhIG5hbWU9ImwwMTMyMyI+PC9hPjAxMzIzICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBQYXJzZSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBwLCBUaVhtbFBhcnNpbmdEYXRhKiBkYXRhLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7Ci08YSBuYW1lPSJsMDEzMjQiPjwvYT4wMTMyNCAKLTxhIG5hbWU9ImwwMTMyNSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMWUwODVkM2ZlZmQxZGJmNWNjZGJmZjcyOTkzMWE5NjciPjAxMzI1PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIiB0aXRsZT0iSW4gY29ycmVjdCBYTUwgdGhlIGRlY2xhcmF0aW9uIGlzIHRoZSBmaXJzdCBlbnRyeSBpbiB0aGUgZmlsZS4iPlRpWG1sRGVjbGFyYXRpb248L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTFlMDg1ZDNmZWZkMWRiZjVjY2RiZmY3Mjk5MzFhOTY3IiB0aXRsZT0iQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIj5Ub0RlY2xhcmF0aW9uPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+OyB9IAotPGEgbmFtZT0ibDAxMzI2Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sI2E2YmQzZDFkYWRkY2FlYjk1NDNjMjRiZmQwOTA5NjljZSI+MDEzMjY8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEZWNsYXJhdGlvbi5odG1sIiB0aXRsZT0iSW4gY29ycmVjdCBYTUwgdGhlIGRlY2xhcmF0aW9uIGlzIHRoZSBmaXJzdCBlbnRyeSBpbiB0aGUgZmlsZS4iPlRpWG1sRGVjbGFyYXRpb248L2E+KiAgICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwjYTZiZDNkMWRhZGRjYWViOTU0M2MyNGJmZDA5MDk2OWNlIiB0aXRsZT0iQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIj5Ub0RlY2xhcmF0aW9uPC9hPigpICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPjsgfSAKLTxhIG5hbWU9ImwwMTMyNyI+PC9hPjAxMzI3IAotPGEgbmFtZT0ibDAxMzMwIj48L2E+MDEzMzAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCNhMjIzMTVhNTM1OTgzYjg2NTM1Y2RiYTM0NTg2NjllM2UiIHRpdGxlPSJXYWxrIHRoZSBYTUwgdHJlZSB2aXNpdGluZyB0aGlzIG5vZGUgYW5kIGFsbCBvZiBpdHMgY2hpbGRyZW4uIj5BY2NlcHQ8L2E+KCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFZpc2l0b3IuaHRtbCIgdGl0bGU9IkltcGxlbWVudHMgdGhlIGludGVyZmFjZSB0byB0aGUgJmFtcDtxdW90O1Zpc2l0b3IgcGF0dGVybiZhbXA7cXVvdDsgKHNlZSB0aGUgQWNjZXB0KCkgbWV0aG9kLi4uIj5UaVhtbFZpc2l0b3I8L2E+KiB2aXNpdG9yICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTMzMSI+PC9hPjAxMzMxIAotPGEgbmFtZT0ibDAxMzMyIj48L2E+MDEzMzIgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByb3RlY3RlZDwvc3Bhbj46Ci08YSBuYW1lPSJsMDEzMzMiPjwvYT4wMTMzMyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBDb3B5VG8oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRGVjbGFyYXRpb24uaHRtbCIgdGl0bGU9IkluIGNvcnJlY3QgWE1MIHRoZSBkZWNsYXJhdGlvbiBpcyB0aGUgZmlyc3QgZW50cnkgaW4gdGhlIGZpbGUuIj5UaVhtbERlY2xhcmF0aW9uPC9hPiogdGFyZ2V0ICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTMzNCI+PC9hPjAxMzM0ICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly8gdXNlZCB0byBiZSBwdWJsaWM8L3NwYW4+Ci08YSBuYW1lPSJsMDEzMzUiPjwvYT4wMTMzNSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Ci08YSBuYW1lPSJsMDEzMzYiPjwvYT4wMTMzNiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IFN0cmVhbUluKCBzdGQ6OmlzdHJlYW0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICk7Ci08YSBuYW1lPSJsMDEzMzciPjwvYT4wMTMzNyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgotPGEgbmFtZT0ibDAxMzM4Ij48L2E+MDEzMzggPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAxMzM5Ij48L2E+MDEzMzkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByaXZhdGU8L3NwYW4+OgotPGEgbmFtZT0ibDAxMzQwIj48L2E+MDEzNDAgCi08YSBuYW1lPSJsMDEzNDEiPjwvYT4wMTM0MSAgICAgVElYTUxfU1RSSU5HIHZlcnNpb247Ci08YSBuYW1lPSJsMDEzNDIiPjwvYT4wMTM0MiAgICAgVElYTUxfU1RSSU5HIGVuY29kaW5nOwotPGEgbmFtZT0ibDAxMzQzIj48L2E+MDEzNDMgICAgIFRJWE1MX1NUUklORyBzdGFuZGFsb25lOwotPGEgbmFtZT0ibDAxMzQ0Ij48L2E+MDEzNDQgfTsKLTxhIG5hbWU9ImwwMTM0NSI+PC9hPjAxMzQ1IAotPGEgbmFtZT0ibDAxMzQ2Ij48L2E+MDEzNDYgCi08YSBuYW1lPSJsMDEzNTQiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCI+MDEzNTQ8L2E+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jbGFzcyA8L3NwYW4+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiIHRpdGxlPSJBbnkgdGFnIHRoYXQgdGlueVhtbCBkb2VzbiZhbXA7IzM5O3QgcmVjb2duaXplIGlzIHNhdmVkIGFzIGFuIHVua25vd24uIj5UaVhtbFVua25vd248L2E+IDogPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+Ci08YSBuYW1lPSJsMDEzNTUiPjwvYT4wMTM1NSB7Ci08YSBuYW1lPSJsMDEzNTYiPjwvYT4wMTM1NiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPjoKLTxhIG5hbWU9ImwwMTM1NyI+PC9hPjAxMzU3ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCIgdGl0bGU9IkFueSB0YWcgdGhhdCB0aW55WG1sIGRvZXNuJmFtcDsjMzk7dCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4iPlRpWG1sVW5rbm93bjwvYT4oKSA6IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiggVGlYbWxOb2RlOjpUSU5ZWE1MX1VOS05PV04gKSAgICB7fQotPGEgbmFtZT0ibDAxMzU4Ij48L2E+MDEzNTggICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiB+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiIHRpdGxlPSJBbnkgdGFnIHRoYXQgdGlueVhtbCBkb2VzbiZhbXA7IzM5O3QgcmVjb2duaXplIGlzIHNhdmVkIGFzIGFuIHVua25vd24uIj5UaVhtbFVua25vd248L2E+KCkge30KLTxhIG5hbWU9ImwwMTM1OSI+PC9hPjAxMzU5IAotPGEgbmFtZT0ibDAxMzYwIj48L2E+MDEzNjAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIiB0aXRsZT0iQW55IHRhZyB0aGF0IHRpbnlYbWwgZG9lc24mYW1wOyMzOTt0IHJlY29nbml6ZSBpcyBzYXZlZCBhcyBhbiB1bmtub3duLiI+VGlYbWxVbmtub3duPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCIgdGl0bGU9IkFueSB0YWcgdGhhdCB0aW55WG1sIGRvZXNuJmFtcDsjMzk7dCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4iPlRpWG1sVW5rbm93bjwvYT4mYW1wOyBjb3B5ICkgOiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4oIFRpWG1sTm9kZTo6VElOWVhNTF9VTktOT1dOICkgICAgICB7IGNvcHkuQ29weVRvKCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj4gKTsgfQotPGEgbmFtZT0ibDAxMzYxIj48L2E+MDEzNjEgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIiB0aXRsZT0iQW55IHRhZyB0aGF0IHRpbnlYbWwgZG9lc24mYW1wOyMzOTt0IHJlY29nbml6ZSBpcyBzYXZlZCBhcyBhbiB1bmtub3duLiI+VGlYbWxVbmtub3duPC9hPiZhbXA7IG9wZXJhdG9yPSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCIgdGl0bGU9IkFueSB0YWcgdGhhdCB0aW55WG1sIGRvZXNuJmFtcDsjMzk7dCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4iPlRpWG1sVW5rbm93bjwvYT4mYW1wOyBjb3B5ICkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyBjb3B5LkNvcHlUbyggPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+ICk7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiAqPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+OyB9Ci08YSBuYW1lPSJsMDEzNjIiPjwvYT4wMTM2MiAKLTxhIG5hbWU9ImwwMTM2NCI+PC9hPjAxMzY0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCNhMDk2MGJiNzQyOGIzZjM0MWRhNDYyNDQyMjk2MDRkNzMiIHRpdGxlPSJDcmVhdGVzIGEgY29weSBvZiB0aGlzIFVua25vd24gYW5kIHJldHVybnMgaXQuIj5DbG9uZTwvYT4oKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxMzY1Ij48L2E+MDEzNjUgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vLyBQcmludCB0aGlzIFVua25vd24gdG8gYSBGSUxFIHN0cmVhbS48L3NwYW4+Ci08YSBuYW1lPSJsMDEzNjYiPjwvYT4wMTM2NiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYTMxYmEwODlhNDBmYjVhMTg2OTc1MGZjZTA5YjBiYWNiIiB0aXRsZT0iQWxsIFRpbnlYbWwgY2xhc3NlcyBjYW4gcHJpbnQgdGhlbXNlbHZlcyB0byBhIGZpbGVzdHJlYW0gb3IgdGhlIHN0cmluZyBjbGFzcyAoVGlYbWxTdHJpbmcuLi4iPlByaW50PC9hPiggRklMRSogY2ZpbGUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBkZXB0aCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDEzNjciPjwvYT4wMTM2NyAKLTxhIG5hbWU9ImwwMTM2OCI+PC9hPjAxMzY4ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBQYXJzZSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiBwLCBUaVhtbFBhcnNpbmdEYXRhKiBkYXRhLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7Ci08YSBuYW1lPSJsMDEzNjkiPjwvYT4wMTM2OSAKLTxhIG5hbWU9ImwwMTM3MCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2FiMDMxM2U1ZmU3Nzk4N2Q3NDZhYzFhOTdhMjU0NDE5ZCI+MDEzNzA8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCIgdGl0bGU9IkFueSB0YWcgdGhhdCB0aW55WG1sIGRvZXNuJmFtcDsjMzk7dCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4iPlRpWG1sVW5rbm93bjwvYT4qICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCNhYjAzMTNlNWZlNzc5ODdkNzQ2YWMxYTk3YTI1NDQxOWQiIHRpdGxlPSJDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4iPlRvVW5rbm93bjwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gICAgIGNvbnN0ICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPjsgfSAKLTxhIG5hbWU9ImwwMTM3MSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sI2E2N2M5ZmQyMjk0MGU4YzQ3ZjcwNmE3MmNkZDJlMzMyYyI+MDEzNzE8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwiIHRpdGxlPSJBbnkgdGFnIHRoYXQgdGlueVhtbCBkb2VzbiZhbXA7IzM5O3QgcmVjb2duaXplIGlzIHNhdmVkIGFzIGFuIHVua25vd24uIj5UaVhtbFVua25vd248L2E+KiAgICAgICAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYTY3YzlmZDIyOTQwZThjNDdmNzA2YTcyY2RkMmUzMzJjIiB0aXRsZT0iQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuIj5Ub1Vua25vd248L2E+KCkgICAgICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+OyB9IAotPGEgbmFtZT0ibDAxMzcyIj48L2E+MDEzNzIgCi08YSBuYW1lPSJsMDEzNzUiPjwvYT4wMTM3NSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxVbmtub3duLmh0bWwjYWQ3MTIyZTUxMzU1ODFiM2M4MzJhMWEzMjE3NzYwYTkzIiB0aXRsZT0iV2FsayB0aGUgWE1MIHRyZWUgdmlzaXRpbmcgdGhpcyBub2RlIGFuZCBhbGwgb2YgaXRzIGNoaWxkcmVuLiI+QWNjZXB0PC9hPiggPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxWaXNpdG9yLmh0bWwiIHRpdGxlPSJJbXBsZW1lbnRzIHRoZSBpbnRlcmZhY2UgdG8gdGhlICZhbXA7cXVvdDtWaXNpdG9yIHBhdHRlcm4mYW1wO3F1b3Q7IChzZWUgdGhlIEFjY2VwdCgpIG1ldGhvZC4uLiI+VGlYbWxWaXNpdG9yPC9hPiogY29udGVudCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDEzNzYiPjwvYT4wMTM3NiAKLTxhIG5hbWU9ImwwMTM3NyI+PC9hPjAxMzc3IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wcm90ZWN0ZWQ8L3NwYW4+OgotPGEgbmFtZT0ibDAxMzc4Ij48L2E+MDEzNzggICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gQ29weVRvKCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCIgdGl0bGU9IkFueSB0YWcgdGhhdCB0aW55WG1sIGRvZXNuJmFtcDsjMzk7dCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4iPlRpWG1sVW5rbm93bjwvYT4qIHRhcmdldCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDEzNzkiPjwvYT4wMTM3OSAKLTxhIG5hbWU9ImwwMTM4MCI+PC9hPjAxMzgwIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KLTxhIG5hbWU9ImwwMTM4MSI+PC9hPjAxMzgxIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gU3RyZWFtSW4oIHN0ZDo6aXN0cmVhbSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKTsKLTxhIG5hbWU9ImwwMTM4MiI+PC9hPjAxMzgyIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDEzODMiPjwvYT4wMTM4MyA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDEzODQiPjwvYT4wMTM4NCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJpdmF0ZTwvc3Bhbj46Ci08YSBuYW1lPSJsMDEzODUiPjwvYT4wMTM4NSAKLTxhIG5hbWU9ImwwMTM4NiI+PC9hPjAxMzg2IH07Ci08YSBuYW1lPSJsMDEzODciPjwvYT4wMTM4NyAKLTxhIG5hbWU9ImwwMTM4OCI+PC9hPjAxMzg4IAotPGEgbmFtZT0ibDAxMzkzIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIj4wMTM5MzwvYT4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiIHRpdGxlPSJBbHdheXMgdGhlIHRvcCBsZXZlbCBub2RlLiI+VGlYbWxEb2N1bWVudDwvYT4gOiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHVibGljPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4KLTxhIG5hbWU9ImwwMTM5NCI+PC9hPjAxMzk0IHsKLTxhIG5hbWU9ImwwMTM5NSI+PC9hPjAxMzk1IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+OgotPGEgbmFtZT0ibDAxMzk3Ij48L2E+MDEzOTcgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhOWY1ZTg0MzM1NzA4ZmRlOTg0MDAyMzBmOWYxMjY1OWMiIHRpdGxlPSJDcmVhdGUgYW4gZW1wdHkgZG9jdW1lbnQsIHRoYXQgaGFzIG5vIG5hbWUuIj5UaVhtbERvY3VtZW50PC9hPigpOwotPGEgbmFtZT0ibDAxMzk5Ij48L2E+MDEzOTkgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhOWY1ZTg0MzM1NzA4ZmRlOTg0MDAyMzBmOWYxMjY1OWMiIHRpdGxlPSJDcmVhdGUgYW4gZW1wdHkgZG9jdW1lbnQsIHRoYXQgaGFzIG5vIG5hbWUuIj5UaVhtbERvY3VtZW50PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogZG9jdW1lbnROYW1lICk7Ci08YSBuYW1lPSJsMDE0MDAiPjwvYT4wMTQwMCAKLTxhIG5hbWU9ImwwMTQwMSI+PC9hPjAxNDAxIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KLTxhIG5hbWU9ImwwMTQwMyI+PC9hPjAxNDAzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICBUaVhtbERvY3VtZW50KCBjb25zdCBzdGQ6OnN0cmluZyZhbXA7IGRvY3VtZW50TmFtZSApOzwvc3Bhbj4KLTxhIG5hbWU9ImwwMTQwNCI+PC9hPjAxNDA0IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgotPGEgbmFtZT0ibDAxNDA1Ij48L2E+MDE0MDUgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAxNDA2Ij48L2E+MDE0MDYgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhOWY1ZTg0MzM1NzA4ZmRlOTg0MDAyMzBmOWYxMjY1OWMiIHRpdGxlPSJDcmVhdGUgYW4gZW1wdHkgZG9jdW1lbnQsIHRoYXQgaGFzIG5vIG5hbWUuIj5UaVhtbERvY3VtZW50PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiIHRpdGxlPSJBbHdheXMgdGhlIHRvcCBsZXZlbCBub2RlLiI+VGlYbWxEb2N1bWVudDwvYT4mYW1wOyBjb3B5ICk7Ci08YSBuYW1lPSJsMDE0MDciPjwvYT4wMTQwNyAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIiB0aXRsZT0iQWx3YXlzIHRoZSB0b3AgbGV2ZWwgbm9kZS4iPlRpWG1sRG9jdW1lbnQ8L2E+JmFtcDsgb3BlcmF0b3I9KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgdGl0bGU9IkFsd2F5cyB0aGUgdG9wIGxldmVsIG5vZGUuIj5UaVhtbERvY3VtZW50PC9hPiZhbXA7IGNvcHkgKTsKLTxhIG5hbWU9ImwwMTQwOCI+PC9hPjAxNDA4IAotPGEgbmFtZT0ibDAxNDA5Ij48L2E+MDE0MDkgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiB+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sIiB0aXRsZT0iQWx3YXlzIHRoZSB0b3AgbGV2ZWwgbm9kZS4iPlRpWG1sRG9jdW1lbnQ8L2E+KCkge30KLTxhIG5hbWU9ImwwMTQxMCI+PC9hPjAxNDEwIAotPGEgbmFtZT0ibDAxNDE1Ij48L2E+MDE0MTUgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E0Yzg1MmE4ODljMDJjZjI1MTExN2ZkMWQ5ZmUxODQ1ZiIgdGl0bGU9IkxvYWQgYSBmaWxlIHVzaW5nIHRoZSBjdXJyZW50IGRvY3VtZW50IHZhbHVlLiI+TG9hZEZpbGU8L2E+KCBUaVhtbEVuY29kaW5nIGVuY29kaW5nID0gVElYTUxfREVGQVVMVF9FTkNPRElORyApOwotPGEgbmFtZT0ibDAxNDE3Ij48L2E+MDE0MTcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMWMwYWViMGQwYTcyMDE2OWFkNGFjODk1MjNlYmU5MyIgdGl0bGU9IlNhdmUgYSBmaWxlIHVzaW5nIHRoZSBjdXJyZW50IGRvY3VtZW50IHZhbHVlLiBSZXR1cm5zIHRydWUgaWYgc3VjY2Vzc2Z1bC4iPlNhdmVGaWxlPC9hPigpIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDE0MTkiPjwvYT4wMTQxOSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTRjODUyYTg4OWMwMmNmMjUxMTE3ZmQxZDlmZTE4NDVmIiB0aXRsZT0iTG9hZCBhIGZpbGUgdXNpbmcgdGhlIGN1cnJlbnQgZG9jdW1lbnQgdmFsdWUuIj5Mb2FkRmlsZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIGZpbGVuYW1lLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nID0gVElYTUxfREVGQVVMVF9FTkNPRElORyApOwotPGEgbmFtZT0ibDAxNDIxIj48L2E+MDE0MjEgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMWMwYWViMGQwYTcyMDE2OWFkNGFjODk1MjNlYmU5MyIgdGl0bGU9IlNhdmUgYSBmaWxlIHVzaW5nIHRoZSBjdXJyZW50IGRvY3VtZW50IHZhbHVlLiBSZXR1cm5zIHRydWUgaWYgc3VjY2Vzc2Z1bC4iPlNhdmVGaWxlPC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+ICogZmlsZW5hbWUgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxNDI3Ij48L2E+MDE0MjcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E0Yzg1MmE4ODljMDJjZjI1MTExN2ZkMWQ5ZmUxODQ1ZiIgdGl0bGU9IkxvYWQgYSBmaWxlIHVzaW5nIHRoZSBjdXJyZW50IGRvY3VtZW50IHZhbHVlLiI+TG9hZEZpbGU8L2E+KCBGSUxFKiwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyA9IFRJWE1MX0RFRkFVTFRfRU5DT0RJTkcgKTsKLTxhIG5hbWU9ImwwMTQyOSI+PC9hPjAxNDI5ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMjFjMGFlYjBkMGE3MjAxNjlhZDRhYzg5NTIzZWJlOTMiIHRpdGxlPSJTYXZlIGEgZmlsZSB1c2luZyB0aGUgY3VycmVudCBkb2N1bWVudCB2YWx1ZS4gUmV0dXJucyB0cnVlIGlmIHN1Y2Nlc3NmdWwuIj5TYXZlRmlsZTwvYT4oIEZJTEUqICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTQzMCI+PC9hPjAxNDMwIAotPGEgbmFtZT0ibDAxNDMxIj48L2E+MDE0MzEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMPC9zcGFuPgotPGEgbmFtZT0ibDAxNDMyIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExOGFlNmVkMzRmZWQ3OTkxZWJjMjIwODYyZGZhYzg4NCI+MDE0MzI8L2E+IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTRjODUyYTg4OWMwMmNmMjUxMTE3ZmQxZDlmZTE4NDVmIiB0aXRsZT0iTG9hZCBhIGZpbGUgdXNpbmcgdGhlIGN1cnJlbnQgZG9jdW1lbnQgdmFsdWUuIj5Mb2FkRmlsZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBmaWxlbmFtZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyA9IFRJWE1MX0RFRkFVTFRfRU5DT0RJTkcgKSAgICAgICAgICAgCi08YSBuYW1lPSJsMDE0MzMiPjwvYT4wMTQzMyAgICAgewotPGEgbmFtZT0ibDAxNDM0Ij48L2E+MDE0MzQgICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E0Yzg1MmE4ODljMDJjZjI1MTExN2ZkMWQ5ZmUxODQ1ZiIgdGl0bGU9IkxvYWQgYSBmaWxlIHVzaW5nIHRoZSBjdXJyZW50IGRvY3VtZW50IHZhbHVlLiI+TG9hZEZpbGU8L2E+KCBmaWxlbmFtZS5jX3N0cigpLCBlbmNvZGluZyApOwotPGEgbmFtZT0ibDAxNDM1Ij48L2E+MDE0MzUgICAgIH0KLTxhIG5hbWU9ImwwMTQzNiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhM2Q0ZmFlMDQ2M2YzZjAzNjc5YmEwYjdjZjZmMmRmNTIiPjAxNDM2PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTIxYzBhZWIwZDBhNzIwMTY5YWQ0YWM4OTUyM2ViZTkzIiB0aXRsZT0iU2F2ZSBhIGZpbGUgdXNpbmcgdGhlIGN1cnJlbnQgZG9jdW1lbnQgdmFsdWUuIFJldHVybnMgdHJ1ZSBpZiBzdWNjZXNzZnVsLiI+U2F2ZUZpbGU8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgZmlsZW5hbWUgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+ICAgICAgCi08YSBuYW1lPSJsMDE0MzciPjwvYT4wMTQzNyAgICAgewotPGEgbmFtZT0ibDAxNDM4Ij48L2E+MDE0MzggICAgICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2EyMWMwYWViMGQwYTcyMDE2OWFkNGFjODk1MjNlYmU5MyIgdGl0bGU9IlNhdmUgYSBmaWxlIHVzaW5nIHRoZSBjdXJyZW50IGRvY3VtZW50IHZhbHVlLiBSZXR1cm5zIHRydWUgaWYgc3VjY2Vzc2Z1bC4iPlNhdmVGaWxlPC9hPiggZmlsZW5hbWUuY19zdHIoKSApOwotPGEgbmFtZT0ibDAxNDM5Ij48L2E+MDE0MzkgICAgIH0KLTxhIG5hbWU9ImwwMTQ0MCI+PC9hPjAxNDQwIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDE0NDEiPjwvYT4wMTQ0MSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDE0NDYiPjwvYT4wMTQ0NiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExN2ViYWJlMzY5MjZlZjM5OGU3OGRlYzBkMGFkMDM3OCIgdGl0bGU9IlBhcnNlIHRoZSBnaXZlbiBudWxsIHRlcm1pbmF0ZWQgYmxvY2sgb2YgeG1sIGRhdGEuIj5QYXJzZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogcCwgVGlYbWxQYXJzaW5nRGF0YSogZGF0YSA9IDAsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgPSBUSVhNTF9ERUZBVUxUX0VOQ09ESU5HICk7Ci08YSBuYW1lPSJsMDE0NDciPjwvYT4wMTQ0NyAKLTxhIG5hbWU9ImwwMTQ1MiI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhZDA5ZDE3OTI3ZjkwOGY0MGVmYjQwNmFmMmZiODczYmUiPjAxNDUyPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FkMDlkMTc5MjdmOTA4ZjQwZWZiNDA2YWYyZmI4NzNiZSIgdGl0bGU9IkdldCB0aGUgcm9vdCBlbGVtZW50IC0tIHRoZSBvbmx5IHRvcCBsZXZlbCBlbGVtZW50IC0tIG9mIHRoZSBkb2N1bWVudC4iPlJvb3RFbGVtZW50PC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sI2FmNGZiNjUyZjZiZDc5YWUwZDVjZTdkMGY3ZDNjMGZiYSIgdGl0bGU9IkNvbnZlbmllbmNlIGZ1bmN0aW9uIHRvIGdldCB0aHJvdWdoIGVsZW1lbnRzLiI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCk7IH0KLTxhIG5hbWU9ImwwMTQ1MyI+PC9hPjAxNDUzICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEVsZW1lbnQuaHRtbCIgdGl0bGU9IlRoZSBlbGVtZW50IGlzIGEgY29udGFpbmVyIGNsYXNzLiI+VGlYbWxFbGVtZW50PC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FkMDlkMTc5MjdmOTA4ZjQwZWZiNDA2YWYyZmI4NzNiZSIgdGl0bGU9IkdldCB0aGUgcm9vdCBlbGVtZW50IC0tIHRoZSBvbmx5IHRvcCBsZXZlbCBlbGVtZW50IC0tIG9mIHRoZSBkb2N1bWVudC4iPlJvb3RFbGVtZW50PC9hPigpICAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCNhZjRmYjY1MmY2YmQ3OWFlMGQ1Y2U3ZDBmN2QzYzBmYmEiIHRpdGxlPSJDb252ZW5pZW5jZSBmdW5jdGlvbiB0byBnZXQgdGhyb3VnaCBlbGVtZW50cy4iPkZpcnN0Q2hpbGRFbGVtZW50PC9hPigpOyB9Ci08YSBuYW1lPSJsMDE0NTQiPjwvYT4wMTQ1NCAKLTxhIG5hbWU9ImwwMTQ2MCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNmRmYzAxYTZlNWQ1OGU1NmFjZDUzN2RmZDNiZGViMjkiPjAxNDYwPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTZkZmMwMWE2ZTVkNThlNTZhY2Q1MzdkZmQzYmRlYjI5IiB0aXRsZT0iSWYgYW4gZXJyb3Igb2NjdXJzLCBFcnJvciB3aWxsIGJlIHNldCB0byB0cnVlLiI+RXJyb3I8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBlcnJvcjsgfQotPGEgbmFtZT0ibDAxNDYxIj48L2E+MDE0NjEgCi08YSBuYW1lPSJsMDE0NjMiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTlkMGY2ODlmNmUwOWVhNDk0ZWE1NDdiZThkNzljMjVlIj4wMTQ2MzwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhOWQwZjY4OWY2ZTA5ZWE0OTRlYTU0N2JlOGQ3OWMyNWUiIHRpdGxlPSJDb250YWlucyBhIHRleHR1YWwgKGVuZ2xpc2gpIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciBpZiBvbmUgb2NjdXJzLiI+RXJyb3JEZXNjPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGVycm9yRGVzYy5jX3N0ciAoKTsgfQotPGEgbmFtZT0ibDAxNDY0Ij48L2E+MDE0NjQgCi08YSBuYW1lPSJsMDE0NjgiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWY5NmZjMmYzZjllYzY0MjI3ODJiZmU5MTZjOWU3NzhmIj4wMTQ2ODwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWY5NmZjMmYzZjllYzY0MjI3ODJiZmU5MTZjOWU3NzhmIiB0aXRsZT0iR2VuZXJhbGx5LCB5b3UgcHJvYmFibHkgd2FudCB0aGUgZXJyb3Igc3RyaW5nICggRXJyb3JEZXNjKCkgKS4iPkVycm9ySWQ8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+ICAgY29uc3QgICAgICAgICAgICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gZXJyb3JJZDsgfQotPGEgbmFtZT0ibDAxNDY5Ij48L2E+MDE0NjkgCi08YSBuYW1lPSJsMDE0NzciPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWYzMGVmYzc1ZTgwNGFhMmU5MmZiOGJlM2E4Y2I2NzZlIj4wMTQ3NzwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWYzMGVmYzc1ZTgwNGFhMmU5MmZiOGJlM2E4Y2I2NzZlIiB0aXRsZT0iUmV0dXJucyB0aGUgbG9jYXRpb24gKGlmIGtub3duKSBvZiB0aGUgZXJyb3IuIj5FcnJvclJvdzwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGVycm9yTG9jYXRpb24ucm93KzE7IH0KLTxhIG5hbWU9ImwwMTQ3OCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhYTkwYmM2MzBlZTUyMDNjNjEwOWNhNWZhZDMzMjM2NDkiPjAxNDc4PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhYTkwYmM2MzBlZTUyMDNjNjEwOWNhNWZhZDMzMjM2NDkiIHRpdGxlPSJUaGUgY29sdW1uIHdoZXJlIHRoZSBlcnJvciBvY2N1cmVkLiBTZWUgRXJyb3JSb3coKS4iPkVycm9yQ29sPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gZXJyb3JMb2NhdGlvbi5jb2wrMTsgfSAKLTxhIG5hbWU9ImwwMTQ3OSI+PC9hPjAxNDc5IAotPGEgbmFtZT0ibDAxNTA0Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2E1MWRhYzU2MzE2Zjg5YjM1YmRiN2QwZDQzM2JhOTg4ZSI+MDE1MDQ8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNTFkYWM1NjMxNmY4OWIzNWJkYjdkMGQ0MzNiYTk4OGUiIHRpdGxlPSJTZXRUYWJTaXplKCkgYWxsb3dzIHRoZSBlcnJvciByZXBvcnRpbmcgZnVuY3Rpb25zIChFcnJvclJvdygpIGFuZCBFcnJvckNvbCgpKSB0by4uLiI+U2V0VGFiU2l6ZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBfdGFic2l6ZSApICAgICB7IHRhYnNpemUgPSBfdGFic2l6ZTsgfQotPGEgbmFtZT0ibDAxNTA1Ij48L2E+MDE1MDUgCi08YSBuYW1lPSJsMDE1MDYiPjwvYT4wMTUwNiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IFRhYlNpemUoKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IHRhYnNpemU7IH0KLTxhIG5hbWU9ImwwMTUwNyI+PC9hPjAxNTA3IAotPGEgbmFtZT0ibDAxNTExIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FjNjZiOGMyOGRiODYzNjMzMTU3MTJhMzU3NGU4N2MzNSI+MDE1MTE8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhYzY2YjhjMjhkYjg2MzYzMzE1NzEyYTM1NzRlODdjMzUiIHRpdGxlPSJJZiB5b3UgaGF2ZSBoYW5kbGVkIHRoZSBlcnJvciwgaXQgY2FuIGJlIHJlc2V0IHdpdGggdGhpcyBjYWxsLiI+Q2xlYXJFcnJvcjwvYT4oKSAgICAgICAgICAgICAgICAgICAgICAgeyAgIGVycm9yID0gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmZhbHNlPC9zcGFuPjsgCi08YSBuYW1lPSJsMDE1MTIiPjwvYT4wMTUxMiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcklkID0gMDsgCi08YSBuYW1lPSJsMDE1MTMiPjwvYT4wMTUxMyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvckRlc2MgPSA8c3BhbiBjbGFzcz0ic3RyaW5nbGl0ZXJhbCI+JnF1b3Q7JnF1b3Q7PC9zcGFuPjsgCi08YSBuYW1lPSJsMDE1MTQiPjwvYT4wMTUxNCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvckxvY2F0aW9uLnJvdyA9IGVycm9yTG9jYXRpb24uY29sID0gMDsgCi08YSBuYW1lPSJsMDE1MTUiPjwvYT4wMTUxNSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0iY29tbWVudCI+Ly9lcnJvckxvY2F0aW9uLmxhc3QgPSAwOyA8L3NwYW4+Ci08YSBuYW1lPSJsMDE1MTYiPjwvYT4wMTUxNiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KLTxhIG5hbWU9ImwwMTUxNyI+PC9hPjAxNTE3IAotPGEgbmFtZT0ibDAxNTE5Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FmMDgzODllYzcwZWU5YjJkZTdmODAwZTIwNmExODUxMCI+MDE1MTk8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhZjA4Mzg5ZWM3MGVlOWIyZGU3ZjgwMGUyMDZhMTg1MTAiIHRpdGxlPSJXcml0ZSB0aGUgZG9jdW1lbnQgdG8gc3RhbmRhcmQgb3V0IHVzaW5nIGZvcm1hdHRlZCBwcmludGluZyAoJmFtcDtxdW90O3ByZXR0eSBwcmludCZhbXA7cXVvdDspLi4uIj5QcmludDwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPnsgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FmMDgzODllYzcwZWU5YjJkZTdmODAwZTIwNmExODUxMCIgdGl0bGU9IldyaXRlIHRoZSBkb2N1bWVudCB0byBzdGFuZGFyZCBvdXQgdXNpbmcgZm9ybWF0dGVkIHByaW50aW5nICgmYW1wO3F1b3Q7cHJldHR5IHByaW50JmFtcDtxdW90OykuLi4iPlByaW50PC9hPiggc3Rkb3V0LCAwICk7IH0KLTxhIG5hbWU9ImwwMTUyMCI+PC9hPjAxNTIwIAotPGEgbmFtZT0ibDAxNTIxIj48L2E+MDE1MjEgICAgIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4vKiBXcml0ZSB0aGUgZG9jdW1lbnQgdG8gYSBzdHJpbmcgdXNpbmcgZm9ybWF0dGVkIHByaW50aW5nICgmcXVvdDtwcmV0dHkgcHJpbnQmcXVvdDspLiBUaGlzPC9zcGFuPgotPGEgbmFtZT0ibDAxNTIyIj48L2E+MDE1MjIgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPiAgICAgICAgd2lsbCBhbGxvY2F0ZSBhIGNoYXJhY3RlciBhcnJheSAobmV3IGNoYXJbXSkgYW5kIHJldHVybiBpdCBhcyBhIHBvaW50ZXIuIFRoZTwvc3Bhbj4KLTxhIG5hbWU9ImwwMTUyMyI+PC9hPjAxNTIzIDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgICAgIGNhbGxpbmcgY29kZSBwdXN0IGNhbGwgZGVsZXRlW10gb24gdGhlIHJldHVybiBjaGFyKiB0byBhdm9pZCBhIG1lbW9yeSBsZWFrLjwvc3Bhbj4KLTxhIG5hbWU9ImwwMTUyNCI+PC9hPjAxNTI0IDxzcGFuIGNsYXNzPSJjb21tZW50Ij4gICAgKi88L3NwYW4+Ci08YSBuYW1lPSJsMDE1MjUiPjwvYT4wMTUyNSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vY2hhciogUHJpbnRUb01lbW9yeSgpIGNvbnN0OyA8L3NwYW4+Ci08YSBuYW1lPSJsMDE1MjYiPjwvYT4wMTUyNiAKLTxhIG5hbWU9ImwwMTUyOCI+PC9hPjAxNTI4ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYWYwODM4OWVjNzBlZTliMmRlN2Y4MDBlMjA2YTE4NTEwIiB0aXRsZT0iV3JpdGUgdGhlIGRvY3VtZW50IHRvIHN0YW5kYXJkIG91dCB1c2luZyBmb3JtYXR0ZWQgcHJpbnRpbmcgKCZhbXA7cXVvdDtwcmV0dHkgcHJpbnQmYW1wO3F1b3Q7KS4uLiI+UHJpbnQ8L2E+KCBGSUxFKiBjZmlsZSwgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGRlcHRoID0gMCApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDE1MjkiPjwvYT4wMTUyOSAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFtpbnRlcm5hbCB1c2VdPC9zcGFuPgotPGEgbmFtZT0ibDAxNTMwIj48L2E+MDE1MzAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gU2V0RXJyb3IoIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBlcnIsIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogZXJyb3JMb2NhdGlvbiwgVGlYbWxQYXJzaW5nRGF0YSogcHJldkRhdGEsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKLTxhIG5hbWU9ImwwMTUzMSI+PC9hPjAxNTMxIAotPGEgbmFtZT0ibDAxNTMyIj48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2ExZGM5NzdiZGUzZTRmZTg1YThlYjlkODhhMzVlZjVhNCI+MDE1MzI8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiIHRpdGxlPSJBbHdheXMgdGhlIHRvcCBsZXZlbCBub2RlLiI+VGlYbWxEb2N1bWVudDwvYT4qICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMWRjOTc3YmRlM2U0ZmU4NWE4ZWI5ZDg4YTM1ZWY1YTQiIHRpdGxlPSJDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4iPlRvRG9jdW1lbnQ8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+ICAgIGNvbnN0IDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dGhpczwvc3Bhbj47IH0gCi08YSBuYW1lPSJsMDE1MzMiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwjYTEwMjVkOTQyYTFmMzI4ZmQ3NDJkNTQ1ZTM3ZWZkZDQyIj4wMTUzMzwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERvY3VtZW50Lmh0bWwiIHRpdGxlPSJBbHdheXMgdGhlIHRvcCBsZXZlbCBub2RlLiI+VGlYbWxEb2N1bWVudDwvYT4qICAgICAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhMTAyNWQ5NDJhMWYzMjhmZDc0MmQ1NDVlMzdlZmRkNDIiIHRpdGxlPSJDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4iPlRvRG9jdW1lbnQ8L2E+KCkgICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+OyB9IAotPGEgbmFtZT0ibDAxNTM0Ij48L2E+MDE1MzQgCi08YSBuYW1lPSJsMDE1MzciPjwvYT4wMTUzNyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxEb2N1bWVudC5odG1sI2FhNTQ1YWFlMzI1ZDk3NTJhZDY0MTIwYmM0ZWNmOTM5YSIgdGl0bGU9IldhbGsgdGhlIFhNTCB0cmVlIHZpc2l0aW5nIHRoaXMgbm9kZSBhbmQgYWxsIG9mIGl0cyBjaGlsZHJlbi4iPkFjY2VwdDwvYT4oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIiB0aXRsZT0iSW1wbGVtZW50cyB0aGUgaW50ZXJmYWNlIHRvIHRoZSAmYW1wO3F1b3Q7VmlzaXRvciBwYXR0ZXJuJmFtcDtxdW90OyAoc2VlIHRoZSBBY2NlcHQoKSBtZXRob2QuLi4iPlRpWG1sVmlzaXRvcjwvYT4qIGNvbnRlbnQgKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxNTM4Ij48L2E+MDE1MzggCi08YSBuYW1lPSJsMDE1MzkiPjwvYT4wMTUzOSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJvdGVjdGVkPC9zcGFuPiA6Ci08YSBuYW1lPSJsMDE1NDAiPjwvYT4wMTU0MCAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIFtpbnRlcm5hbCB1c2VdPC9zcGFuPgotPGEgbmFtZT0ibDAxNTQxIj48L2E+MDE1NDEgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCNhNDk2ODY2MWNhYjRhMWY0NGEyMzMyOWM2ZjhkYjE5MDciIHRpdGxlPSJDcmVhdGUgYW4gZXhhY3QgZHVwbGljYXRlIG9mIHRoaXMgbm9kZSBhbmQgcmV0dXJuIGl0LiI+Q2xvbmU8L2E+KCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTU0MiI+PC9hPjAxNTQyIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjaWZkZWYgVElYTUxfVVNFX1NUTDwvc3Bhbj4KLTxhIG5hbWU9ImwwMTU0MyI+PC9hPjAxNTQzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4gICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gU3RyZWFtSW4oIHN0ZDo6aXN0cmVhbSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKTsKLTxhIG5hbWU9ImwwMTU0NCI+PC9hPjAxNTQ0IDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPiAgICAjZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDE1NDUiPjwvYT4wMTU0NSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDE1NDYiPjwvYT4wMTU0NiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+cHJpdmF0ZTwvc3Bhbj46Ci08YSBuYW1lPSJsMDE1NDciPjwvYT4wMTU0NyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiBDb3B5VG8oIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgdGl0bGU9IkFsd2F5cyB0aGUgdG9wIGxldmVsIG5vZGUuIj5UaVhtbERvY3VtZW50PC9hPiogdGFyZ2V0ICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTU0OCI+PC9hPjAxNTQ4IAotPGEgbmFtZT0ibDAxNTQ5Ij48L2E+MDE1NDkgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gZXJyb3I7Ci08YSBuYW1lPSJsMDE1NTAiPjwvYT4wMTU1MCAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+ICBlcnJvcklkOwotPGEgbmFtZT0ibDAxNTUxIj48L2E+MDE1NTEgICAgIFRJWE1MX1NUUklORyBlcnJvckRlc2M7Ci08YSBuYW1lPSJsMDE1NTIiPjwvYT4wMTU1MiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IHRhYnNpemU7Ci08YSBuYW1lPSJsMDE1NTMiPjwvYT4wMTU1MyAgICAgVGlYbWxDdXJzb3IgZXJyb3JMb2NhdGlvbjsKLTxhIG5hbWU9ImwwMTU1NCI+PC9hPjAxNTU0ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IHVzZU1pY3Jvc29mdEJPTTsgICAgICAgPHNwYW4gY2xhc3M9ImNvbW1lbnQiPi8vIHRoZSBVVEYtOCBCT00gd2VyZSBmb3VuZCB3aGVuIHJlYWQuIE5vdGUgdGhpcywgYW5kIHRyeSB0byB3cml0ZS48L3NwYW4+Ci08YSBuYW1lPSJsMDE1NTUiPjwvYT4wMTU1NSB9OwotPGEgbmFtZT0ibDAxNTU2Ij48L2E+MDE1NTYgCi08YSBuYW1lPSJsMDE1NTciPjwvYT4wMTU1NyAKLTxhIG5hbWU9ImwwMTYzOCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiPjAxNjM4PC9hPiA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y2xhc3MgPC9zcGFuPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiIHRpdGxlPSJBIFRpWG1sSGFuZGxlIGlzIGEgY2xhc3MgdGhhdCB3cmFwcyBhIG5vZGUgcG9pbnRlciB3aXRoIG51bGwgY2hlY2tzOyB0aGlzIGlzIGFuIGluY3JlZGlibHkuLi4iPlRpWG1sSGFuZGxlPC9hPgotPGEgbmFtZT0ibDAxNjM5Ij48L2E+MDE2MzkgewotPGEgbmFtZT0ibDAxNjQwIj48L2E+MDE2NDAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnB1YmxpYzwvc3Bhbj46Ci08YSBuYW1lPSJsMDE2NDIiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2FiYTE4ZmQ3YmRlZmI5NDJlY2RlYTRiZjRiOGUyOWVjOCI+MDE2NDI8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2FiYTE4ZmQ3YmRlZmI5NDJlY2RlYTRiZjRiOGUyOWVjOCIgdGl0bGU9IkNyZWF0ZSBhIGhhbmRsZSBmcm9tIGFueSBub2RlIChhdCBhbnkgZGVwdGggb2YgdGhlIHRyZWUuKSBUaGlzIGNhbiBiZSBhIG51bGwgcG9pbnRlci4uLiI+VGlYbWxIYW5kbGU8L2E+KCA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIF9ub2RlICkgICAgICAgICAgICAgICAgIHsgdGhpcy0mZ3Q7bm9kZSA9IF9ub2RlOyB9Ci08YSBuYW1lPSJsMDE2NDQiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2EyMzZkNzg1NWUxZTU2Y2NjN2I5ODA2MzBjNDhjN2ZkNyI+MDE2NDQ8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2EyMzZkNzg1NWUxZTU2Y2NjN2I5ODA2MzBjNDhjN2ZkNyIgdGl0bGU9IkNvcHkgY29uc3RydWN0b3IuIj5UaVhtbEhhbmRsZTwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCIgdGl0bGU9IkEgVGlYbWxIYW5kbGUgaXMgYSBjbGFzcyB0aGF0IHdyYXBzIGEgbm9kZSBwb2ludGVyIHdpdGggbnVsbCBjaGVja3M7IHRoaXMgaXMgYW4gaW5jcmVkaWJseS4uLiI+VGlYbWxIYW5kbGU8L2E+JmFtcDsgcmVmICkgICAgICAgICAgIHsgdGhpcy0mZ3Q7bm9kZSA9IHJlZi5ub2RlOyB9Ci08YSBuYW1lPSJsMDE2NDUiPjwvYT4wMTY0NSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCIgdGl0bGU9IkEgVGlYbWxIYW5kbGUgaXMgYSBjbGFzcyB0aGF0IHdyYXBzIGEgbm9kZSBwb2ludGVyIHdpdGggbnVsbCBjaGVja3M7IHRoaXMgaXMgYW4gaW5jcmVkaWJseS4uLiI+VGlYbWxIYW5kbGU8L2E+IG9wZXJhdG9yPSggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIiB0aXRsZT0iQSBUaVhtbEhhbmRsZSBpcyBhIGNsYXNzIHRoYXQgd3JhcHMgYSBub2RlIHBvaW50ZXIgd2l0aCBudWxsIGNoZWNrczsgdGhpcyBpcyBhbiBpbmNyZWRpYmx5Li4uIj5UaVhtbEhhbmRsZTwvYT4mYW1wOyByZWYgKSB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+aWY8L3NwYW4+ICggJmFtcDtyZWYgIT0gPHNwYW4gY2xhc3M9ImtleXdvcmQiPnRoaXM8L3NwYW4+ICkgdGhpcy0mZ3Q7bm9kZSA9IHJlZi5ub2RlOyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKjxzcGFuIGNsYXNzPSJrZXl3b3JkIj50aGlzPC9zcGFuPjsgfQotPGEgbmFtZT0ibDAxNjQ2Ij48L2E+MDE2NDYgCi08YSBuYW1lPSJsMDE2NDgiPjwvYT4wMTY0OCAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCIgdGl0bGU9IkEgVGlYbWxIYW5kbGUgaXMgYSBjbGFzcyB0aGF0IHdyYXBzIGEgbm9kZSBwb2ludGVyIHdpdGggbnVsbCBjaGVja3M7IHRoaXMgaXMgYW4gaW5jcmVkaWJseS4uLiI+VGlYbWxIYW5kbGU8L2E+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWNkYjFmYWFmODhhNzAwYjQwY2EyYzhkOWFlZTIxMTM5IiB0aXRsZT0iUmV0dXJuIGEgaGFuZGxlIHRvIHRoZSBmaXJzdCBjaGlsZCBub2RlLiI+Rmlyc3RDaGlsZDwvYT4oKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxNjUwIj48L2E+MDE2NTAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiIHRpdGxlPSJBIFRpWG1sSGFuZGxlIGlzIGEgY2xhc3MgdGhhdCB3cmFwcyBhIG5vZGUgcG9pbnRlciB3aXRoIG51bGwgY2hlY2tzOyB0aGlzIGlzIGFuIGluY3JlZGlibHkuLi4iPlRpWG1sSGFuZGxlPC9hPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2FjZGIxZmFhZjg4YTcwMGI0MGNhMmM4ZDlhZWUyMTEzOSIgdGl0bGU9IlJldHVybiBhIGhhbmRsZSB0byB0aGUgZmlyc3QgY2hpbGQgbm9kZS4iPkZpcnN0Q2hpbGQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4gKiB2YWx1ZSApIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj47Ci08YSBuYW1lPSJsMDE2NTIiPjwvYT4wMTY1MiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCIgdGl0bGU9IkEgVGlYbWxIYW5kbGUgaXMgYSBjbGFzcyB0aGF0IHdyYXBzIGEgbm9kZSBwb2ludGVyIHdpdGggbnVsbCBjaGVja3M7IHRoaXMgaXMgYW4gaW5jcmVkaWJseS4uLiI+VGlYbWxIYW5kbGU8L2E+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTI0ZDExMTJlOTk1ZTkzN2U0ZGRkYjIwMmQ0MTEzZDRhIiB0aXRsZT0iUmV0dXJuIGEgaGFuZGxlIHRvIHRoZSBmaXJzdCBjaGlsZCBlbGVtZW50LiI+Rmlyc3RDaGlsZEVsZW1lbnQ8L2E+KCkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTY1NCI+PC9hPjAxNjU0ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIiB0aXRsZT0iQSBUaVhtbEhhbmRsZSBpcyBhIGNsYXNzIHRoYXQgd3JhcHMgYSBub2RlIHBvaW50ZXIgd2l0aCBudWxsIGNoZWNrczsgdGhpcyBpcyBhbiBpbmNyZWRpYmx5Li4uIj5UaVhtbEhhbmRsZTwvYT4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMjRkMTExMmU5OTVlOTM3ZTRkZGRiMjAyZDQxMTNkNGEiIHRpdGxlPSJSZXR1cm4gYSBoYW5kbGUgdG8gdGhlIGZpcnN0IGNoaWxkIGVsZW1lbnQuIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiAqIHZhbHVlICkgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTY1NSI+PC9hPjAxNjU1IAotPGEgbmFtZT0ibDAxNjU5Ij48L2E+MDE2NTkgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiIHRpdGxlPSJBIFRpWG1sSGFuZGxlIGlzIGEgY2xhc3MgdGhhdCB3cmFwcyBhIG5vZGUgcG9pbnRlciB3aXRoIG51bGwgY2hlY2tzOyB0aGlzIGlzIGFuIGluY3JlZGlibHkuLi4iPlRpWG1sSGFuZGxlPC9hPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2EwNzI0OTJiNGJlMWFjZGIwZGIyZDAzY2Q4ZjcxY2NjNCIgdGl0bGU9IlJldHVybiBhIGhhbmRsZSB0byB0aGUgJmFtcDtxdW90O2luZGV4JmFtcDtxdW90OyBjaGlsZCB3aXRoIHRoZSBnaXZlbiBuYW1lLiI+Q2hpbGQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHZhbHVlLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gaW5kZXggKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxNjYzIj48L2E+MDE2NjMgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiIHRpdGxlPSJBIFRpWG1sSGFuZGxlIGlzIGEgY2xhc3MgdGhhdCB3cmFwcyBhIG5vZGUgcG9pbnRlciB3aXRoIG51bGwgY2hlY2tzOyB0aGlzIGlzIGFuIGluY3JlZGlibHkuLi4iPlRpWG1sSGFuZGxlPC9hPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2EwNzI0OTJiNGJlMWFjZGIwZGIyZDAzY2Q4ZjcxY2NjNCIgdGl0bGU9IlJldHVybiBhIGhhbmRsZSB0byB0aGUgJmFtcDtxdW90O2luZGV4JmFtcDtxdW90OyBjaGlsZCB3aXRoIHRoZSBnaXZlbiBuYW1lLiI+Q2hpbGQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gaW5kZXggKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxNjY4Ij48L2E+MDE2NjggICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiIHRpdGxlPSJBIFRpWG1sSGFuZGxlIGlzIGEgY2xhc3MgdGhhdCB3cmFwcyBhIG5vZGUgcG9pbnRlciB3aXRoIG51bGwgY2hlY2tzOyB0aGlzIGlzIGFuIGluY3JlZGlibHkuLi4iPlRpWG1sSGFuZGxlPC9hPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E5NzlhM2Y4NTA5ODRhMTc2ZWU4ODRlMzk0YzdlZWQyZCIgdGl0bGU9IlJldHVybiBhIGhhbmRsZSB0byB0aGUgJmFtcDtxdW90O2luZGV4JmFtcDtxdW90OyBjaGlsZCBlbGVtZW50IHdpdGggdGhlIGdpdmVuIG5hbWUuIj5DaGlsZEVsZW1lbnQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIHZhbHVlLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gaW5kZXggKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxNjczIj48L2E+MDE2NzMgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiIHRpdGxlPSJBIFRpWG1sSGFuZGxlIGlzIGEgY2xhc3MgdGhhdCB3cmFwcyBhIG5vZGUgcG9pbnRlciB3aXRoIG51bGwgY2hlY2tzOyB0aGlzIGlzIGFuIGluY3JlZGlibHkuLi4iPlRpWG1sSGFuZGxlPC9hPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E5NzlhM2Y4NTA5ODRhMTc2ZWU4ODRlMzk0YzdlZWQyZCIgdGl0bGU9IlJldHVybiBhIGhhbmRsZSB0byB0aGUgJmFtcDtxdW90O2luZGV4JmFtcDtxdW90OyBjaGlsZCBlbGVtZW50IHdpdGggdGhlIGdpdmVuIG5hbWUuIj5DaGlsZEVsZW1lbnQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gaW5kZXggKSA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+OwotPGEgbmFtZT0ibDAxNjc0Ij48L2E+MDE2NzQgCi08YSBuYW1lPSJsMDE2NzUiPjwvYT4wMTY3NSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Ci08YSBuYW1lPSJsMDE2NzYiPjwvYT4wMTY3NiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+ICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiIHRpdGxlPSJBIFRpWG1sSGFuZGxlIGlzIGEgY2xhc3MgdGhhdCB3cmFwcyBhIG5vZGUgcG9pbnRlciB3aXRoIG51bGwgY2hlY2tzOyB0aGlzIGlzIGFuIGluY3JlZGlibHkuLi4iPlRpWG1sSGFuZGxlPC9hPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2FjZGIxZmFhZjg4YTcwMGI0MGNhMmM4ZDlhZWUyMTEzOSIgdGl0bGU9IlJldHVybiBhIGhhbmRsZSB0byB0aGUgZmlyc3QgY2hpbGQgbm9kZS4iPkZpcnN0Q2hpbGQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlICk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICAgICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWNkYjFmYWFmODhhNzAwYjQwY2EyYzhkOWFlZTIxMTM5IiB0aXRsZT0iUmV0dXJuIGEgaGFuZGxlIHRvIHRoZSBmaXJzdCBjaGlsZCBub2RlLiI+Rmlyc3RDaGlsZDwvYT4oIF92YWx1ZS5jX3N0cigpICk7IH0KLTxhIG5hbWU9ImwwMTY3NyI+PC9hPjAxNjc3ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sIiB0aXRsZT0iQSBUaVhtbEhhbmRsZSBpcyBhIGNsYXNzIHRoYXQgd3JhcHMgYSBub2RlIHBvaW50ZXIgd2l0aCBudWxsIGNoZWNrczsgdGhpcyBpcyBhbiBpbmNyZWRpYmx5Li4uIj5UaVhtbEhhbmRsZTwvYT4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhMjRkMTExMmU5OTVlOTM3ZTRkZGRiMjAyZDQxMTNkNGEiIHRpdGxlPSJSZXR1cm4gYSBoYW5kbGUgdG8gdGhlIGZpcnN0IGNoaWxkIGVsZW1lbnQuIj5GaXJzdENoaWxkRWxlbWVudDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUgKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2EyNGQxMTEyZTk5NWU5MzdlNGRkZGIyMDJkNDExM2Q0YSIgdGl0bGU9IlJldHVybiBhIGhhbmRsZSB0byB0aGUgZmlyc3QgY2hpbGQgZWxlbWVudC4iPkZpcnN0Q2hpbGRFbGVtZW50PC9hPiggX3ZhbHVlLmNfc3RyKCkgKTsgfQotPGEgbmFtZT0ibDAxNjc4Ij48L2E+MDE2NzggCi08YSBuYW1lPSJsMDE2NzkiPjwvYT4wMTY3OSAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCIgdGl0bGU9IkEgVGlYbWxIYW5kbGUgaXMgYSBjbGFzcyB0aGF0IHdyYXBzIGEgbm9kZSBwb2ludGVyIHdpdGggbnVsbCBjaGVja3M7IHRoaXMgaXMgYW4gaW5jcmVkaWJseS4uLiI+VGlYbWxIYW5kbGU8L2E+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTA3MjQ5MmI0YmUxYWNkYjBkYjJkMDNjZDhmNzFjY2M0IiB0aXRsZT0iUmV0dXJuIGEgaGFuZGxlIHRvIHRoZSAmYW1wO3F1b3Q7aW5kZXgmYW1wO3F1b3Q7IGNoaWxkIHdpdGggdGhlIGdpdmVuIG5hbWUuIj5DaGlsZDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gc3RkOjpzdHJpbmcmYW1wOyBfdmFsdWUsIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+aW50PC9zcGFuPiBpbmRleCApPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2EwNzI0OTJiNGJlMWFjZGIwZGIyZDAzY2Q4ZjcxY2NjNCIgdGl0bGU9IlJldHVybiBhIGhhbmRsZSB0byB0aGUgJmFtcDtxdW90O2luZGV4JmFtcDtxdW90OyBjaGlsZCB3aXRoIHRoZSBnaXZlbiBuYW1lLiI+Q2hpbGQ8L2E+KCBfdmFsdWUuY19zdHIoKSwgaW5kZXggKTsgfQotPGEgbmFtZT0ibDAxNjgwIj48L2E+MDE2ODAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwiIHRpdGxlPSJBIFRpWG1sSGFuZGxlIGlzIGEgY2xhc3MgdGhhdCB3cmFwcyBhIG5vZGUgcG9pbnRlciB3aXRoIG51bGwgY2hlY2tzOyB0aGlzIGlzIGFuIGluY3JlZGlibHkuLi4iPlRpWG1sSGFuZGxlPC9hPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E5NzlhM2Y4NTA5ODRhMTc2ZWU4ODRlMzk0YzdlZWQyZCIgdGl0bGU9IlJldHVybiBhIGhhbmRsZSB0byB0aGUgJmFtcDtxdW90O2luZGV4JmFtcDtxdW90OyBjaGlsZCBlbGVtZW50IHdpdGggdGhlIGdpdmVuIG5hbWUuIj5DaGlsZEVsZW1lbnQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IHN0ZDo6c3RyaW5nJmFtcDsgX3ZhbHVlLCA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmludDwvc3Bhbj4gaW5kZXggKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E5NzlhM2Y4NTA5ODRhMTc2ZWU4ODRlMzk0YzdlZWQyZCIgdGl0bGU9IlJldHVybiBhIGhhbmRsZSB0byB0aGUgJmFtcDtxdW90O2luZGV4JmFtcDtxdW90OyBjaGlsZCBlbGVtZW50IHdpdGggdGhlIGdpdmVuIG5hbWUuIj5DaGlsZEVsZW1lbnQ8L2E+KCBfdmFsdWUuY19zdHIoKSwgaW5kZXggKTsgfQotPGEgbmFtZT0ibDAxNjgxIj48L2E+MDE2ODEgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+ICAgICNlbmRpZjwvc3Bhbj4KLTxhIG5hbWU9ImwwMTY4MiI+PC9hPjAxNjgyIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj4KLTxhIG5hbWU9ImwwMTY4NSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWY2NzhlNTA4OGU4M2JlNjdiYWY3NmY2OTk3NTZmMmMzIj4wMTY4NTwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sTm9kZS5odG1sIiB0aXRsZT0iVGhlIHBhcmVudCBjbGFzcyBmb3IgZXZlcnl0aGluZyBpbiB0aGUgRG9jdW1lbnQgT2JqZWN0IE1vZGVsLiI+VGlYbWxOb2RlPC9hPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhZjY3OGU1MDg4ZTgzYmU2N2JhZjc2ZjY5OTc1NmYyYzMiIHRpdGxlPSJSZXR1cm4gdGhlIGhhbmRsZSBhcyBhIFRpWG1sTm9kZS4iPlRvTm9kZTwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBub2RlOyB9IAotPGEgbmFtZT0ibDAxNjg4Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhYmM2ZTdlZDM4M2E1ZmUxZTUyYjBjMDAwNGI0NTdiOWUiPjAxNjg4PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxFbGVtZW50Lmh0bWwiIHRpdGxlPSJUaGUgZWxlbWVudCBpcyBhIGNvbnRhaW5lciBjbGFzcy4iPlRpWG1sRWxlbWVudDwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWJjNmU3ZWQzODNhNWZlMWU1MmIwYzAwMDRiNDU3YjllIiB0aXRsZT0iUmV0dXJuIHRoZSBoYW5kbGUgYXMgYSBUaVhtbEVsZW1lbnQuIj5Ub0VsZW1lbnQ8L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCAoIG5vZGUgJmFtcDsmYW1wOyBub2RlLSZndDtUb0VsZW1lbnQoKSApID8gbm9kZS0mZ3Q7VG9FbGVtZW50KCkgOiAwICk7IH0KLTxhIG5hbWU9ImwwMTY5MSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTRhYzUzYTY1MjI5NjIwM2E1YjVlMTM4NTRkOTIzNTg2Ij4wMTY5MTwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVGV4dC5odG1sIiB0aXRsZT0iWE1MIHRleHQuIj5UaVhtbFRleHQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E0YWM1M2E2NTIyOTYyMDNhNWI1ZTEzODU0ZDkyMzU4NiIgdGl0bGU9IlJldHVybiB0aGUgaGFuZGxlIGFzIGEgVGlYbWxUZXh0LiI+VG9UZXh0PC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgICAgICAgPC9zcGFuPnsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+ICggKCBub2RlICZhbXA7JmFtcDsgbm9kZS0mZ3Q7VG9UZXh0KCkgKSA/IG5vZGUtJmd0O1RvVGV4dCgpIDogMCApOyB9Ci08YSBuYW1lPSJsMDE2OTQiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExMzgxYzE3NTA3YTEzMDc2N2IxZTIzYWZjOTNiMzY3NCI+MDE2OTQ8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCIgdGl0bGU9IkFueSB0YWcgdGhhdCB0aW55WG1sIGRvZXNuJmFtcDsjMzk7dCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4iPlRpWG1sVW5rbm93bjwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTEzODFjMTc1MDdhMTMwNzY3YjFlMjNhZmM5M2IzNjc0IiB0aXRsZT0iUmV0dXJuIHRoZSBoYW5kbGUgYXMgYSBUaVhtbFVua25vd24uIj5Ub1Vua25vd248L2E+KCk8c3BhbiBjbGFzcz0ia2V5d29yZCI+IGNvbnN0ICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gKCAoIG5vZGUgJmFtcDsmYW1wOyBub2RlLSZndDtUb1Vua25vd24oKSApID8gbm9kZS0mZ3Q7VG9Vbmtub3duKCkgOiAwICk7IH0KLTxhIG5hbWU9ImwwMTY5NSI+PC9hPjAxNjk1IAotPGEgbmFtZT0ibDAxNjk5Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhYjQ0YjcyM2E4ZGM5YWY3MjgzOGEzMDNjMDc5ZDAzNzYiPjAxNjk5PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxOb2RlLmh0bWwiIHRpdGxlPSJUaGUgcGFyZW50IGNsYXNzIGZvciBldmVyeXRoaW5nIGluIHRoZSBEb2N1bWVudCBPYmplY3QgTW9kZWwuIj5UaVhtbE5vZGU8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2FiNDRiNzIzYThkYzlhZjcyODM4YTMwM2MwNzlkMDM3NiI+Tm9kZTwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICAgICAgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhZjY3OGU1MDg4ZTgzYmU2N2JhZjc2ZjY5OTc1NmYyYzMiIHRpdGxlPSJSZXR1cm4gdGhlIGhhbmRsZSBhcyBhIFRpWG1sTm9kZS4iPlRvTm9kZTwvYT4oKTsgfSAKLTxhIG5hbWU9ImwwMTcwMyI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYWNiNWZlODM4OGE1MjYyODllYTY1ZTgxN2E1MWUwNWU3Ij4wMTcwMzwvYT4gICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIiB0aXRsZT0iVGhlIGVsZW1lbnQgaXMgYSBjb250YWluZXIgY2xhc3MuIj5UaVhtbEVsZW1lbnQ8L2E+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2FjYjVmZTgzODhhNTI2Mjg5ZWE2NWU4MTdhNTFlMDVlNyI+RWxlbWVudDwvYT4oKTxzcGFuIGNsYXNzPSJrZXl3b3JkIj4gY29uc3QgICA8L3NwYW4+eyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhYmM2ZTdlZDM4M2E1ZmUxZTUyYjBjMDAwNGI0NTdiOWUiIHRpdGxlPSJSZXR1cm4gdGhlIGhhbmRsZSBhcyBhIFRpWG1sRWxlbWVudC4iPlRvRWxlbWVudDwvYT4oKTsgfQotPGEgbmFtZT0ibDAxNzA3Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxIYW5kbGUuaHRtbCNhOWZjNzM5YzhhMThkMTYwMDA2ZjgyNTcyZmMxNDNkMTMiPjAxNzA3PC9hPiAgICAgPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIHRpdGxlPSJYTUwgdGV4dC4iPlRpWG1sVGV4dDwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTlmYzczOWM4YTE4ZDE2MDAwNmY4MjU3MmZjMTQzZDEzIj5UZXh0PC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgICAgICAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E0YWM1M2E2NTIyOTYyMDNhNWI1ZTEzODU0ZDkyMzU4NiIgdGl0bGU9IlJldHVybiB0aGUgaGFuZGxlIGFzIGEgVGlYbWxUZXh0LiI+VG9UZXh0PC9hPigpOyB9Ci08YSBuYW1lPSJsMDE3MTEiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2E0OTY3NWI3NDM1N2JhMmFhZTEyNDY1N2E5YTFlZjQ2NSI+MDE3MTE8L2E+ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFVua25vd24uaHRtbCIgdGl0bGU9IkFueSB0YWcgdGhhdCB0aW55WG1sIGRvZXNuJmFtcDsjMzk7dCByZWNvZ25pemUgaXMgc2F2ZWQgYXMgYW4gdW5rbm93bi4iPlRpWG1sVW5rbm93bjwvYT4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sSGFuZGxlLmh0bWwjYTQ5Njc1Yjc0MzU3YmEyYWFlMTI0NjU3YTlhMWVmNDY1Ij5Vbmtub3duPC9hPigpPHNwYW4gY2xhc3M9ImtleXdvcmQiPiBjb25zdCAgIDwvc3Bhbj57IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEhhbmRsZS5odG1sI2ExMzgxYzE3NTA3YTEzMDc2N2IxZTIzYWZjOTNiMzY3NCIgdGl0bGU9IlJldHVybiB0aGUgaGFuZGxlIGFzIGEgVGlYbWxVbmtub3duLiI+VG9Vbmtub3duPC9hPigpOyB9Ci08YSBuYW1lPSJsMDE3MTIiPjwvYT4wMTcxMiAKLTxhIG5hbWU9ImwwMTcxMyI+PC9hPjAxNzEzIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wcml2YXRlPC9zcGFuPjoKLTxhIG5hbWU9ImwwMTcxNCI+PC9hPjAxNzE0ICAgICA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbE5vZGUuaHRtbCIgdGl0bGU9IlRoZSBwYXJlbnQgY2xhc3MgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIERvY3VtZW50IE9iamVjdCBNb2RlbC4iPlRpWG1sTm9kZTwvYT4qIG5vZGU7Ci08YSBuYW1lPSJsMDE3MTUiPjwvYT4wMTcxNSB9OwotPGEgbmFtZT0ibDAxNzE2Ij48L2E+MDE3MTYgCi08YSBuYW1lPSJsMDE3MTciPjwvYT4wMTcxNyAKLTxhIG5hbWU9ImwwMTczNyI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sIj4wMTczNzwvYT4gPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNsYXNzIDwvc3Bhbj48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCIgdGl0bGU9IlByaW50IHRvIG1lbW9yeSBmdW5jdGlvbmFsaXR5LiI+VGlYbWxQcmludGVyPC9hPiA6IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVmlzaXRvci5odG1sIiB0aXRsZT0iSW1wbGVtZW50cyB0aGUgaW50ZXJmYWNlIHRvIHRoZSAmYW1wO3F1b3Q7VmlzaXRvciBwYXR0ZXJuJmFtcDtxdW90OyAoc2VlIHRoZSBBY2NlcHQoKSBtZXRob2QuLi4iPlRpWG1sVmlzaXRvcjwvYT4KLTxhIG5hbWU9ImwwMTczOCI+PC9hPjAxNzM4IHsKLTxhIG5hbWU9ImwwMTczOSI+PC9hPjAxNzM5IDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5wdWJsaWM8L3NwYW4+OgotPGEgbmFtZT0ibDAxNzQwIj48L2E+MDE3NDAgICAgIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sIiB0aXRsZT0iUHJpbnQgdG8gbWVtb3J5IGZ1bmN0aW9uYWxpdHkuIj5UaVhtbFByaW50ZXI8L2E+KCkgOiBkZXB0aCggMCApLCBzaW1wbGVUZXh0UHJpbnQoIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5mYWxzZTwvc3Bhbj4gKSwKLTxhIG5hbWU9ImwwMTc0MSI+PC9hPjAxNzQxICAgICAgICAgICAgICAgICAgICAgIGJ1ZmZlcigpLCBpbmRlbnQoIDxzcGFuIGNsYXNzPSJzdHJpbmdsaXRlcmFsIj4mcXVvdDsgICAgJnF1b3Q7PC9zcGFuPiApLCBsaW5lQnJlYWsoIDxzcGFuIGNsYXNzPSJzdHJpbmdsaXRlcmFsIj4mcXVvdDtcbiZxdW90Ozwvc3Bhbj4gKSB7fQotPGEgbmFtZT0ibDAxNzQyIj48L2E+MDE3NDIgCi08YSBuYW1lPSJsMDE3NDMiPjwvYT4wMTc0MyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTc5OWY0ZjAzODg1NzBjYmI1NGMwZDNjMzQ1ZmVmN2MxIiB0aXRsZT0iVmlzaXQgYSBkb2N1bWVudC4iPlZpc2l0RW50ZXI8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgdGl0bGU9IkFsd2F5cyB0aGUgdG9wIGxldmVsIG5vZGUuIj5UaVhtbERvY3VtZW50PC9hPiZhbXA7IGRvYyApOwotPGEgbmFtZT0ibDAxNzQ0Ij48L2E+MDE3NDQgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2E2NmIzM2VkZDc2YzUzOGI0NjJmNzg5Yjc5N2E0ZmRmMiIgdGl0bGU9IlZpc2l0IGEgZG9jdW1lbnQuIj5WaXNpdEV4aXQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRG9jdW1lbnQuaHRtbCIgdGl0bGU9IkFsd2F5cyB0aGUgdG9wIGxldmVsIG5vZGUuIj5UaVhtbERvY3VtZW50PC9hPiZhbXA7IGRvYyApOwotPGEgbmFtZT0ibDAxNzQ1Ij48L2E+MDE3NDUgCi08YSBuYW1lPSJsMDE3NDYiPjwvYT4wMTc0NiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTc5OWY0ZjAzODg1NzBjYmI1NGMwZDNjMzQ1ZmVmN2MxIiB0aXRsZT0iVmlzaXQgYSBkb2N1bWVudC4iPlZpc2l0RW50ZXI8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIiB0aXRsZT0iVGhlIGVsZW1lbnQgaXMgYSBjb250YWluZXIgY2xhc3MuIj5UaVhtbEVsZW1lbnQ8L2E+JmFtcDsgZWxlbWVudCwgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+KiBmaXJzdEF0dHJpYnV0ZSApOwotPGEgbmFtZT0ibDAxNzQ3Ij48L2E+MDE3NDcgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2E2NmIzM2VkZDc2YzUzOGI0NjJmNzg5Yjc5N2E0ZmRmMiIgdGl0bGU9IlZpc2l0IGEgZG9jdW1lbnQuIj5WaXNpdEV4aXQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sRWxlbWVudC5odG1sIiB0aXRsZT0iVGhlIGVsZW1lbnQgaXMgYSBjb250YWluZXIgY2xhc3MuIj5UaVhtbEVsZW1lbnQ8L2E+JmFtcDsgZWxlbWVudCApOwotPGEgbmFtZT0ibDAxNzQ4Ij48L2E+MDE3NDggCi08YSBuYW1lPSJsMDE3NDkiPjwvYT4wMTc0OSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYWNlMWIxNGQzM2VlZGUyNTc1YzA3NDNlMjM1MGY2YTM4IiB0aXRsZT0iVmlzaXQgYSBkZWNsYXJhdGlvbi4iPlZpc2l0PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbERlY2xhcmF0aW9uLmh0bWwiIHRpdGxlPSJJbiBjb3JyZWN0IFhNTCB0aGUgZGVjbGFyYXRpb24gaXMgdGhlIGZpcnN0IGVudHJ5IGluIHRoZSBmaWxlLiI+VGlYbWxEZWNsYXJhdGlvbjwvYT4mYW1wOyBkZWNsYXJhdGlvbiApOwotPGEgbmFtZT0ibDAxNzUwIj48L2E+MDE3NTAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj52aXJ0dWFsPC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmJvb2w8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2FjZTFiMTRkMzNlZWRlMjU3NWMwNzQzZTIzNTBmNmEzOCIgdGl0bGU9IlZpc2l0IGEgZGVjbGFyYXRpb24uIj5WaXNpdDwvYT4oIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxUZXh0Lmh0bWwiIHRpdGxlPSJYTUwgdGV4dC4iPlRpWG1sVGV4dDwvYT4mYW1wOyB0ZXh0ICk7Ci08YSBuYW1lPSJsMDE3NTEiPjwvYT4wMTc1MSAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnZpcnR1YWw8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYWNlMWIxNGQzM2VlZGUyNTc1YzA3NDNlMjM1MGY2YTM4IiB0aXRsZT0iVmlzaXQgYSBkZWNsYXJhdGlvbi4iPlZpc2l0PC9hPiggPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbENvbW1lbnQuaHRtbCIgdGl0bGU9IkFuIFhNTCBjb21tZW50LiI+VGlYbWxDb21tZW50PC9hPiZhbXA7IGNvbW1lbnQgKTsKLTxhIG5hbWU9ImwwMTc1MiI+PC9hPjAxNzUyICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+dmlydHVhbDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5ib29sPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhY2UxYjE0ZDMzZWVkZTI1NzVjMDc0M2UyMzUwZjZhMzgiIHRpdGxlPSJWaXNpdCBhIGRlY2xhcmF0aW9uLiI+VmlzaXQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sVW5rbm93bi5odG1sIiB0aXRsZT0iQW55IHRhZyB0aGF0IHRpbnlYbWwgZG9lc24mYW1wOyMzOTt0IHJlY29nbml6ZSBpcyBzYXZlZCBhcyBhbiB1bmtub3duLiI+VGlYbWxVbmtub3duPC9hPiZhbXA7IHVua25vd24gKTsKLTxhIG5hbWU9ImwwMTc1MyI+PC9hPjAxNzUzIAotPGEgbmFtZT0ibDAxNzU3Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTIxMzM3N2E0MDcwYzdlNjI1YmFlNTk3MTZiMDg5ZTVlIj4wMTc1NzwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYTIxMzM3N2E0MDcwYzdlNjI1YmFlNTk3MTZiMDg5ZTVlIiB0aXRsZT0iU2V0IHRoZSBpbmRlbnQgY2hhcmFjdGVycyBmb3IgcHJpbnRpbmcuIj5TZXRJbmRlbnQ8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIF9pbmRlbnQgKSAgICAgICAgICAgeyBpbmRlbnQgPSBfaW5kZW50ID8gX2luZGVudCA6IDxzcGFuIGNsYXNzPSJzdHJpbmdsaXRlcmFsIj4mcXVvdDsmcXVvdDs8L3NwYW4+IDsgfQotPGEgbmFtZT0ibDAxNzU5Ij48L2E+PGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYWJiMzNlYzdkNGJhZDZhYWViNTdmNDMwNDM5NGIxMzNkIj4wMTc1OTwvYT4gICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkIj5jb25zdDwvc3Bhbj4gPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5jaGFyPC9zcGFuPiogPGEgY2xhc3M9ImNvZGUiIGhyZWY9ImNsYXNzVGlYbWxQcmludGVyLmh0bWwjYWJiMzNlYzdkNGJhZDZhYWViNTdmNDMwNDM5NGIxMzNkIiB0aXRsZT0iUXVlcnkgdGhlIGluZGVudGlvbiBzdHJpbmcuIj5JbmRlbnQ8L2E+KCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gaW5kZW50LmNfc3RyKCk7IH0KLTxhIG5hbWU9ImwwMTc2NCI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2E0YmUxZTM3ZTY5ZTM4NThjNTk2MzVhYTk0NzE3NGZlNiI+MDE3NjQ8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPnZvaWQ8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2E0YmUxZTM3ZTY5ZTM4NThjNTk2MzVhYTk0NzE3NGZlNiIgdGl0bGU9IlNldCB0aGUgbGluZSBicmVha2luZyBzdHJpbmcuIj5TZXRMaW5lQnJlYWs8L2E+KCA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIF9saW5lQnJlYWsgKSAgICAgeyBsaW5lQnJlYWsgPSBfbGluZUJyZWFrID8gX2xpbmVCcmVhayA6IDxzcGFuIGNsYXNzPSJzdHJpbmdsaXRlcmFsIj4mcXVvdDsmcXVvdDs8L3NwYW4+OyB9Ci08YSBuYW1lPSJsMDE3NjYiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhMTFmMWI0ODA0YTQ2MGIxNzVlYzI0NGViNTcyNGQ5NmQiPjAxNzY2PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmQiPmNvbnN0PC9zcGFuPiA8c3BhbiBjbGFzcz0ia2V5d29yZHR5cGUiPmNoYXI8L3NwYW4+KiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhMTFmMWI0ODA0YTQ2MGIxNzVlYzI0NGViNTcyNGQ5NmQiIHRpdGxlPSJRdWVyeSB0aGUgY3VycmVudCBsaW5lIGJyZWFraW5nIHN0cmluZy4iPkxpbmVCcmVhazwvYT4oKSAgICAgICAgICAgICAgICAgICAgICAgICB7IDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+cmV0dXJuPC9zcGFuPiBsaW5lQnJlYWsuY19zdHIoKTsgfQotPGEgbmFtZT0ibDAxNzY3Ij48L2E+MDE3NjcgCi08YSBuYW1lPSJsMDE3NzEiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhYjIzYTkwNjI5ZTM3NGNiMWNhZGNhMDkwNDY4YmJkMTkiPjAxNzcxPC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj52b2lkPC9zcGFuPiA8YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhYjIzYTkwNjI5ZTM3NGNiMWNhZGNhMDkwNDY4YmJkMTkiIHRpdGxlPSJTd2l0Y2ggb3ZlciB0byAmYW1wO3F1b3Q7c3RyZWFtIHByaW50aW5nJmFtcDtxdW90OyB3aGljaCBpcyB0aGUgbW9zdCBkZW5zZSBmb3JtYXR0aW5nIHdpdGhvdXQuLi4iPlNldFN0cmVhbVByaW50aW5nPC9hPigpICAgICAgICAgICAgICAgICAgICAgICAgeyBpbmRlbnQgPSA8c3BhbiBjbGFzcz0ic3RyaW5nbGl0ZXJhbCI+JnF1b3Q7JnF1b3Q7PC9zcGFuPjsKLTxhIG5hbWU9ImwwMTc3MiI+PC9hPjAxNzcyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVCcmVhayA9IDxzcGFuIGNsYXNzPSJzdHJpbmdsaXRlcmFsIj4mcXVvdDsmcXVvdDs8L3NwYW4+OwotPGEgbmFtZT0ibDAxNzczIj48L2E+MDE3NzMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gICAKLTxhIG5hbWU9ImwwMTc3NSI+PC9hPjxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2E4NTllZWRlOTU5N2QzZTAzNTViNzc3NTdiZTQ4NzM1ZSI+MDE3NzU8L2E+ICAgICA8c3BhbiBjbGFzcz0ia2V5d29yZCI+Y29uc3Q8L3NwYW4+IDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Y2hhcjwvc3Bhbj4qIDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2E4NTllZWRlOTU5N2QzZTAzNTViNzc3NTdiZTQ4NzM1ZSIgdGl0bGU9IlJldHVybiB0aGUgcmVzdWx0LiI+Q1N0cjwvYT4oKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgPHNwYW4gY2xhc3M9ImtleXdvcmRmbG93Ij5yZXR1cm48L3NwYW4+IGJ1ZmZlci5jX3N0cigpOyB9Ci08YSBuYW1lPSJsMDE3NzciPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhZDAxMzc1YWU5MTk5YmQyZjQ4MjUyZWFkZGNlMzAzOWQiPjAxNzc3PC9hPiAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5zaXplX3Q8L3NwYW4+IDxhIGNsYXNzPSJjb2RlIiBocmVmPSJjbGFzc1RpWG1sUHJpbnRlci5odG1sI2FkMDEzNzVhZTkxOTliZDJmNDgyNTJlYWRkY2UzMDM5ZCIgdGl0bGU9IlJldHVybiB0aGUgbGVuZ3RoIG9mIHRoZSByZXN1bHQgc3RyaW5nLiI+U2l6ZTwvYT4oKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeyA8c3BhbiBjbGFzcz0ia2V5d29yZGZsb3ciPnJldHVybjwvc3Bhbj4gYnVmZmVyLnNpemUoKTsgfQotPGEgbmFtZT0ibDAxNzc4Ij48L2E+MDE3NzggCi08YSBuYW1lPSJsMDE3NzkiPjwvYT4wMTc3OSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEw8L3NwYW4+Ci08YSBuYW1lPSJsMDE3ODEiPjwvYT48YSBjbGFzcz0iY29kZSIgaHJlZj0iY2xhc3NUaVhtbFByaW50ZXIuaHRtbCNhM2JkNGRhZjQ0MzA5YjQxZjU4MTNhODMzY2FhMGQxYzkiPjAxNzgxPC9hPiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgY29uc3Qgc3RkOjpzdHJpbmcmYW1wOyBTdHIoKSAgICAgICAgICAgICAgICAgICAgICAgIHsgcmV0dXJuIGJ1ZmZlcjsgfTwvc3Bhbj4KLTxhIG5hbWU9ImwwMTc4MiI+PC9hPjAxNzgyIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4gICAgI2VuZGlmPC9zcGFuPgotPGEgbmFtZT0ibDAxNzgzIj48L2E+MDE3ODMgPHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+PC9zcGFuPgotPGEgbmFtZT0ibDAxNzg0Ij48L2E+MDE3ODQgPHNwYW4gY2xhc3M9ImtleXdvcmQiPnByaXZhdGU8L3NwYW4+OgotPGEgbmFtZT0ibDAxNzg1Ij48L2E+MDE3ODUgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gRG9JbmRlbnQoKSB7Ci08YSBuYW1lPSJsMDE3ODYiPjwvYT4wMTc4NiAgICAgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkZmxvdyI+Zm9yPC9zcGFuPiggPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGk9MDsgaSZsdDtkZXB0aDsgKytpICkKLTxhIG5hbWU9ImwwMTc4NyI+PC9hPjAxNzg3ICAgICAgICAgICAgIGJ1ZmZlciArPSBpbmRlbnQ7Ci08YSBuYW1lPSJsMDE3ODgiPjwvYT4wMTc4OCAgICAgfQotPGEgbmFtZT0ibDAxNzg5Ij48L2E+MDE3ODkgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+dm9pZDwvc3Bhbj4gRG9MaW5lQnJlYWsoKSB7Ci08YSBuYW1lPSJsMDE3OTAiPjwvYT4wMTc5MCAgICAgICAgIGJ1ZmZlciArPSBsaW5lQnJlYWs7Ci08YSBuYW1lPSJsMDE3OTEiPjwvYT4wMTc5MSAgICAgfQotPGEgbmFtZT0ibDAxNzkyIj48L2E+MDE3OTIgCi08YSBuYW1lPSJsMDE3OTMiPjwvYT4wMTc5MyAgICAgPHNwYW4gY2xhc3M9ImtleXdvcmR0eXBlIj5pbnQ8L3NwYW4+IGRlcHRoOwotPGEgbmFtZT0ibDAxNzk0Ij48L2E+MDE3OTQgICAgIDxzcGFuIGNsYXNzPSJrZXl3b3JkdHlwZSI+Ym9vbDwvc3Bhbj4gc2ltcGxlVGV4dFByaW50OwotPGEgbmFtZT0ibDAxNzk1Ij48L2E+MDE3OTUgICAgIFRJWE1MX1NUUklORyBidWZmZXI7Ci08YSBuYW1lPSJsMDE3OTYiPjwvYT4wMTc5NiAgICAgVElYTUxfU1RSSU5HIGluZGVudDsKLTxhIG5hbWU9ImwwMTc5NyI+PC9hPjAxNzk3ICAgICBUSVhNTF9TVFJJTkcgbGluZUJyZWFrOwotPGEgbmFtZT0ibDAxNzk4Ij48L2E+MDE3OTggfTsKLTxhIG5hbWU9ImwwMTc5OSI+PC9hPjAxNzk5IAotPGEgbmFtZT0ibDAxODAwIj48L2E+MDE4MDAgCi08YSBuYW1lPSJsMDE4MDEiPjwvYT4wMTgwMSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jaWZkZWYgX01TQ19WRVI8L3NwYW4+Ci08YSBuYW1lPSJsMDE4MDIiPjwvYT4wMTgwMiA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+PHNwYW4gY2xhc3M9InByZXByb2Nlc3NvciI+I3ByYWdtYSB3YXJuaW5nKCBwb3AgKTwvc3Bhbj4KLTxhIG5hbWU9ImwwMTgwMyI+PC9hPjAxODAzIDxzcGFuIGNsYXNzPSJwcmVwcm9jZXNzb3IiPjwvc3Bhbj48c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jZW5kaWY8L3NwYW4+Ci08YSBuYW1lPSJsMDE4MDQiPjwvYT4wMTgwNCA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj48L3NwYW4+Ci08YSBuYW1lPSJsMDE4MDUiPjwvYT4wMTgwNSA8c3BhbiBjbGFzcz0icHJlcHJvY2Vzc29yIj4jZW5kaWY8L3NwYW4+Ci08L3ByZT48L2Rpdj48L2Rpdj4KLTxociBzaXplPSIxIi8+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBieSZuYnNwOwotPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KLTwvYm9keT4KLTwvaHRtbD4KZGlmZiAtLWdpdCBhL2RvY3MvdHV0b3JpYWwwLmh0bWwgYi9kb2NzL3R1dG9yaWFsMC5odG1sCmluZGV4IGY5NzRmODUuLjk2MjVkMzcgMTAwNjQ0Ci0tLSBhL2RvY3MvdHV0b3JpYWwwLmh0bWwKKysrIGIvZG9jcy90dXRvcmlhbDAuaHRtbApAQCAtMSw3MjAgKzEsMzIzIEBACi08IURPQ1RZUEUgaHRtbCBQVUJMSUMgIi0vL1czQy8vRFREIFhIVE1MIDEuMCBUcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvVFIveGh0bWwxL0RURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+Ci08aHRtbCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94aHRtbCI+Ci08aGVhZD4KLTxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC94aHRtbDtjaGFyc2V0PVVURi04Ii8+Cis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL1czQy8vRFREIEhUTUwgNC4wMSBUcmFuc2l0aW9uYWwvL0VOIj4KKzxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9aXNvLTg4NTktMSI+CiA8dGl0bGU+VGlueVhtbDogVGlueVhNTCBUdXRvcmlhbDwvdGl0bGU+Ci08bGluayBocmVmPSJ0YWJzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgotPGxpbmsgaHJlZj0iZG94eWdlbi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KLTwvaGVhZD4KLTxib2R5PgotPCEtLSBHZW5lcmF0ZWQgYnkgRG94eWdlbiAxLjYuMiAtLT4KLTxkaXYgY2xhc3M9Im5hdmlnYXRpb24iIGlkPSJ0b3AiPgotICA8ZGl2IGNsYXNzPSJ0YWJzIj4KLSAgICA8dWw+Ci0gICAgICA8bGk+PGEgaHJlZj0iaW5kZXguaHRtbCI+PHNwYW4+TWFpbiZuYnNwO1BhZ2U8L3NwYW4+PC9hPjwvbGk+Ci0gICAgICA8bGkgY2xhc3M9ImN1cnJlbnQiPjxhIGhyZWY9InBhZ2VzLmh0bWwiPjxzcGFuPlJlbGF0ZWQmbmJzcDtQYWdlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+PHNwYW4+Q2xhc3Nlczwvc3Bhbj48L2E+PC9saT4KLSAgICAgIDxsaT48YSBocmVmPSJmaWxlcy5odG1sIj48c3Bhbj5GaWxlczwvc3Bhbj48L2E+PC9saT4KLSAgICA8L3VsPgotICA8L2Rpdj4KLSAgPGRpdiBjbGFzcz0ibmF2cGF0aCI+PGEgY2xhc3M9ImVsIiBocmVmPSJpbmRleC5odG1sIj5pbmRleDwvYT4KLSAgPC9kaXY+Ci08L2Rpdj4KLTxkaXYgY2xhc3M9ImNvbnRlbnRzIj4KKzxsaW5rIGhyZWY9ImRveHlnZW4uY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIj4KKzwvaGVhZD48Ym9keT4KKzwhLS0gR2VuZXJhdGVkIGJ5IERveHlnZW4gMS40LjQgLS0+Cis8ZGl2IGNsYXNzPSJxaW5kZXgiPjxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImluZGV4Lmh0bWwiPk1haW4mbmJzcDtQYWdlPC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImhpZXJhcmNoeS5odG1sIj5DbGFzcyZuYnNwO0hpZXJhcmNoeTwvYT4gfCA8YSBjbGFzcz0icWluZGV4IiBocmVmPSJhbm5vdGF0ZWQuaHRtbCI+Q2xhc3MmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZpbGVzLmh0bWwiPkZpbGUmbmJzcDtMaXN0PC9hPiB8IDxhIGNsYXNzPSJxaW5kZXgiIGhyZWY9ImZ1bmN0aW9ucy5odG1sIj5DbGFzcyZuYnNwO01lbWJlcnM8L2E+PC9kaXY+Cis8ZGl2IGNsYXNzPSJuYXYiPgorPGEgY2xhc3M9ImVsIiBocmVmPSJpbmRleC5odG1sIj5pbmRleDwvYT48L2Rpdj4KKzxoMT48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJ0dXRvcmlhbDAiPlRpbnlYTUwgVHV0b3JpYWw8L2E+PC9oMT48aDE+VHV0b3JpYWwgUHJlbGltaW5hcnkgPC9oMT4KKzxwPgorVGhlc2UgcGFnZXMgY29udGFpbnMgYSBidW5jaCBvZiBleGFtcGxlcyBvZiB1c2luZyBUaW55WG1sLjxwPgorRWFjaCBkZW1vIGlzIHdyaXR0ZW4gaW4gYSBzdGFuZGFsb25lIGZ1bmN0aW9uLiBJZiB5b3Ugd2FudCB0byB0cnkgdGhlIGNvZGUsIGFsbCB5b3UgbmVlZCB0byBkbyBpcyBjb3B5L3Bhc3RlIHRoZSBjb2RlIGludG8gYSBmaWxlLCB0aGVuIGhhdmUgYSBtYWluIHRvIGNhbGwgaXQuPHA+CitTbyBpZiB0aGUgZXhhbXBsZSBoYXMgYSBmdW5jdGlvbjo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CXZvaWQgd3JpdGVfc2ltcGxlX2RvYygpCisJeworCQkuLi4KKwl9CisJPC9wcmU+PC9kaXY+PHA+Cit0aGVuIHRoZSAqY29tcGxldGUqIHByb2dyYW0geW91IG5lZWQgdG8gdHJ5IGl0IGlzOjxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JI2luY2x1ZGUgInN0ZGFmeC5oIiAvLyAmbHQ7LS0geW91IE1JR0hUIG5lZWQgdGhpcworCSNpbmNsdWRlICJ0aW55eG1sLmgiIC8vICZsdDstLSB5b3UgZGVmaW5pdGVseSBuZWVkIHRoaXMgOykKIAorCXZvaWQgd3JpdGVfc2ltcGxlX2RvYygpCisJeworCQkuLi4KKwl9CiAKLTxoMT48YSBjbGFzcz0iYW5jaG9yIiBpZD0idHV0b3JpYWwwIj5UaW55WE1MIFR1dG9yaWFsIDwvYT48L2gxPjxoMT5XaGF0IGlzIHRoaXM/IDwvaDE+Ci08cD5UaGlzIHR1dG9yaWFsIGhhcyBhIGZldyB0aXBzIGFuZCBzdWdnZXN0aW9ucyBvbiBob3cgdG8gdXNlIFRpbnlYTUwgZWZmZWN0aXZlbHkuPC9wPgotPHA+SSd2ZSBhbHNvIHRyaWVkIHRvIGluY2x1ZGUgc29tZSBDKysgdGlwcyBsaWtlIGhvdyB0byBjb252ZXJ0IHN0cmluZ3MgdG8gaW50ZWdlcnMgYW5kIHZpY2UgdmVyc2EuIFRoaXMgaXNuJ3QgYW55dGhpbmcgdG8gZG8gd2l0aCBUaW55WE1MIGl0c2VsZiwgYnV0IGl0IG1heSBoZWxwZnVsIGZvciB5b3VyIHByb2plY3Qgc28gSSd2ZSBwdXQgaXQgaW4gYW55d2F5LjwvcD4KLTxwPklmIHlvdSBkb24ndCBrbm93IGJhc2ljIEMrKyBjb25jZXB0cyB0aGlzIHR1dG9yaWFsIHdvbid0IGJlIHVzZWZ1bC4gTGlrZXdpc2UgaWYgeW91IGRvbid0IGtub3cgd2hhdCBhIERPTSBpcywgbG9vayBlbHNld2hlcmUgZmlyc3QuPC9wPgotPGgxPkJlZm9yZSB3ZSBzdGFydCA8L2gxPgotPHA+U29tZSBleGFtcGxlIFhNTCBkYXRhc2V0cy9maWxlcyB3aWxsIGJlIHVzZWQuPC9wPgotPHA+ZXhhbXBsZTEueG1sOjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci0mbHQ7P3htbCB2ZXJzaW9uPSIxLjAiID8mZ3Q7Ci0mbHQ7SGVsbG8mZ3Q7V29ybGQmbHQ7L0hlbGxvJmd0OwotPC9wcmU+PC9kaXY+PHA+ZXhhbXBsZTIueG1sOjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci0mbHQ7P3htbCB2ZXJzaW9uPSIxLjAiID8mZ3Q7Ci0mbHQ7cG9ldHJ5Jmd0OwotCSZsdDt2ZXJzZSZndDsKLQkJQWxhcwotCQkgIEdyZWF0IFdvcmxkCi0JCQlBbGFzIChhZ2FpbikKLQkmbHQ7L3ZlcnNlJmd0OwotJmx0Oy9wb2V0cnkmZ3Q7Ci08L3ByZT48L2Rpdj48cD5leGFtcGxlMy54bWw6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLSZsdDs/eG1sIHZlcnNpb249IjEuMCIgPyZndDsKLSZsdDtzaGFwZXMmZ3Q7Ci0JJmx0O2NpcmNsZSBuYW1lPSJpbnQtYmFzZWQiIHg9IjIwIiB5PSIzMCIgcj0iNTAiIC8mZ3Q7Ci0JJmx0O3BvaW50IG5hbWU9ImZsb2F0LWJhc2VkIiB4PSIzLjUiIHk9IjUyLjEiIC8mZ3Q7Ci0mbHQ7L3NoYXBlcyZndDsKLTwvcHJlPjwvZGl2PjxwPmV4YW1wbGU0LnhtbDwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci0mbHQ7P3htbCB2ZXJzaW9uPSIxLjAiID8mZ3Q7Ci0mbHQ7TXlBcHAmZ3Q7Ci0gICAgJmx0OyEtLSBTZXR0aW5ncyBmb3IgTXlBcHAgLS0mZ3Q7Ci0gICAgJmx0O01lc3NhZ2VzJmd0OwotICAgICAgICAmbHQ7V2VsY29tZSZndDtXZWxjb21lIHRvIE15QXBwJmx0Oy9XZWxjb21lJmd0OwotICAgICAgICAmbHQ7RmFyZXdlbGwmZ3Q7VGhhbmsgeW91IGZvciB1c2luZyBNeUFwcCZsdDsvRmFyZXdlbGwmZ3Q7Ci0gICAgJmx0Oy9NZXNzYWdlcyZndDsKLSAgICAmbHQ7V2luZG93cyZndDsKLSAgICAgICAgJmx0O1dpbmRvdyBuYW1lPSJNYWluRnJhbWUiIHg9IjUiIHk9IjE1IiB3PSI0MDAiIGg9IjI1MCIgLyZndDsKLSAgICAmbHQ7L1dpbmRvd3MmZ3Q7Ci0gICAgJmx0O0Nvbm5lY3Rpb24gaXA9IjE5Mi4xNjguMC4xIiB0aW1lb3V0PSIxMjMuNDU2MDAwIiAvJmd0OwotJmx0Oy9NeUFwcCZndDsKLTwvcHJlPjwvZGl2PjxoMT5HZXR0aW5nIFN0YXJ0ZWQgPC9oMT4KKwl2b2lkIG1haW4oIHZvaWQgKQorCXsKKwkJd3JpdGVfc2ltcGxlX2RvYygpOworCX0KKwk8L3ByZT48L2Rpdj48cD4KK1R3byBleGFtcGxlIFhNTCBkYXRhc2V0cy9maWxlcyB3aWxsIGJlIHVzZWQuIFRoZSBmaXJzdCBsb29rcyBsaWtlIHRoaXM6PHA+Cis8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgkmbHQ7P3htbCB2ZXJzaW9uPSIxLjAiID8mZ3Q7CisJJmx0O0hlbGxvJmd0O1dvcmxkJmx0Oy9IZWxsbyZndDsKKwk8L3ByZT48L2Rpdj48cD4KK1RoZSBvdGhlcjo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CSZsdDs/eG1sIHZlcnNpb249IjEuMCIgPyZndDsKKwkmbHQ7cG9ldHJ5Jmd0OworCQkmbHQ7dmVyc2UmZ3Q7CisJCQlBbGFzCisJCQkgIEdyZWF0IFdoYXRldmVyCisJCQkJQWxhcyAoYWdhaW4pCisJCSZsdDsvdmVyc2UmZ3Q7CisJJmx0Oy9wb2V0cnkmZ3Q7CisJPC9wcmU+PC9kaXY+PHA+Cis8aDE+R2V0dGluZyBTdGFydGVkIDwvaDE+Cis8cD4KIDxoMj5Mb2FkIFhNTCBmcm9tIGEgZmlsZSA8L2gyPgotPHA+VGhlIHNpbXBsZXN0IHdheSB0byBsb2FkIGEgZmlsZSBpbnRvIGEgVGlueVhNTCBET00gaXM6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLVRpWG1sRG9jdW1lbnQgZG9jKCAiZGVtby54bWwiICk7Ci1kb2MuTG9hZEZpbGUoKTsKLTwvcHJlPjwvZGl2PjxwPkEgbW9yZSByZWFsLXdvcmxkIHVzYWdlIGlzIHNob3duIGJlbG93LiBUaGlzIHdpbGwgbG9hZCB0aGUgZmlsZSBhbmQgZGlzcGxheSB0aGUgY29udGVudHMgdG8gU1RET1VUOjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci0vLyBsb2FkIHRoZSBuYW1lZCBmaWxlIGFuZCBkdW1wIGl0cyBzdHJ1Y3R1cmUgdG8gU1RET1VUCi12b2lkIGR1bXBfdG9fc3Rkb3V0KGNvbnN0IGNoYXIqIHBGaWxlbmFtZSkKLXsKLQlUaVhtbERvY3VtZW50IGRvYyhwRmlsZW5hbWUpOwotCWJvb2wgbG9hZE9rYXkgPSBkb2MuTG9hZEZpbGUoKTsKLQlpZiAobG9hZE9rYXkpCis8cD4KK0xvYWRpbmcgYSBmaWxlIGlzIGFzIHNpbXBsZSBhczo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CXZvaWQgbG9hZF9maWxlKCApCiAJewotCQlwcmludGYoIlxuJXM6XG4iLCBwRmlsZW5hbWUpOwotCQlkdW1wX3RvX3N0ZG91dCggJmFtcDtkb2MgKTsgLy8gZGVmaW5lZCBsYXRlciBpbiB0aGUgdHV0b3JpYWwKKwkJVGlYbWxEb2N1bWVudCBkb2MoICJkZW1vLnhtbCIgKTsKKwkJYm9vbCBsb2FkT2theSA9IGRvYy5Mb2FkRmlsZSgpOworCisJCWlmICggbG9hZE9rYXkgKQorCQl7CisJCQkvLyBZb3VyIGRvY3VtZW50IGlzIGxvYWRlZCAtIGRvIHdoYXQgeW91IGxpa2UKKwkJCS8vIHdpdGggaXQuCisJCQkvLworCQkJLy8gSGVyZSB3ZSdsbCBkdW1wIHRoZSBzdHJ1Y3R1cmUgdG8gU1RET1VULAorCQkJLy8ganVzdCBmb3IgZXhhbXBsZQorCQkJZHVtcF90b19zdGRvdXQoICZhbXA7ZG9jICk7CisJCX0KKwkJZWxzZQorCQl7CisJCQkvLyBsb2FkIGZhaWxlZAorCQl9CiAJfQotCWVsc2UKLQl7Ci0JCXByaW50ZigiRmFpbGVkIHRvIGxvYWQgZmlsZSBcIiVzXCJcbiIsIHBGaWxlbmFtZSk7Ci0JfQotfQotPC9wcmU+PC9kaXY+PHA+QSBzaW1wbGUgZGVtb25zdHJhdGlvbiBvZiB0aGlzIGZ1bmN0aW9uIGlzIHRvIHVzZSBhIG1haW4gbGlrZSB0aGlzOjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci1pbnQgbWFpbih2b2lkKQotewotCWR1bXBfdG9fc3Rkb3V0KCJleGFtcGxlMS54bWwiKTsKLQlyZXR1cm4gMDsKLX0KLTwvcHJlPjwvZGl2PjxwPlJlY2FsbCB0aGF0IEV4YW1wbGUgMSBYTUwgaXM6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLSZsdDs/eG1sIHZlcnNpb249IjEuMCIgPyZndDsKLSZsdDtIZWxsbyZndDtXb3JsZCZsdDsvSGVsbG8mZ3Q7Ci08L3ByZT48L2Rpdj48cD5SdW5uaW5nIHRoZSBwcm9ncmFtIHdpdGggdGhpcyBYTUwgd2lsbCBkaXNwbGF5IHRoaXMgaW4gdGhlIGNvbnNvbGUvRE9TIHdpbmRvdzo8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotRE9DVU1FTlQKLSsgREVDTEFSQVRJT04KLSsgRUxFTUVOVCBIZWxsbwotICArIFRFWFRbV29ybGRdCi08L3ByZT48L2Rpdj48cD5UaGUgYGBkdW1wX3RvX3N0ZG91dGBgIGZ1bmN0aW9uIGlzIGRlZmluZWQgbGF0ZXIgaW4gdGhpcyB0dXRvcmlhbCBhbmQgaXMgdXNlZnVsIGlmIHlvdSB3YW50IHRvIHVuZGVyc3RhbmQgcmVjdXJzaXZlIHRyYXZlcnNhbCBvZiBhIERPTS48L3A+CisJPC9wcmU+PC9kaXY+PHA+CitUaGUgYGBkdW1wX3RvX3N0ZG91dGBgIGZ1bmN0aW9uIGlzIGRlZmluZWQgaW4gdGhlIHNlY3Rpb24gYER1bXAgc3RydWN0dXJlIG9mIGEgRG9jdW1lbnQgdG8gU1RET1VUYCBiZWxvdy4gSWYgeW91IHJ1biB0aGlzIHByb2dyYW0gd2l0aCB0aGlzIFhNTDo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CSZsdDs/eG1sIHZlcnNpb249IjEuMCIgPyZndDsKKwkmbHQ7SGVsbG8mZ3Q7V29ybGQmbHQ7L0hlbGxvJmd0OworCTwvcHJlPjwvZGl2PjxwPgorWW91J2xsIHNlZSB0aGlzOjxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JRE9DVU1FTlQKKwkrIERFQ0xBUkFUSU9OCisJKyBFTEVNRU5UIEhlbGxvCisJICArIFRFWFRbV29ybGRdCisJPC9wcmU+PC9kaXY+PHA+CiA8aDI+QnVpbGRpbmcgRG9jdW1lbnRzIFByb2dyYW1hdGljYWxseSA8L2gyPgotPHA+VGhpcyBpcyBob3cgdG8gYnVpbGQgRXhhbXBsZSAxIHByYWdtYXRpY2FsbHk6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLXZvaWQgYnVpbGRfc2ltcGxlX2RvYyggKQotewotCS8vIE1ha2UgeG1sOiAmbHQ7P3htbCAuLiZndDsmbHQ7SGVsbG8mZ3Q7V29ybGQmbHQ7L0hlbGxvJmd0OwotCVRpWG1sRG9jdW1lbnQgZG9jOwotCVRpWG1sRGVjbGFyYXRpb24gKiBkZWNsID0gbmV3IFRpWG1sRGVjbGFyYXRpb24oICIxLjAiLCAiIiwgIiIgKTsKLQlUaVhtbEVsZW1lbnQgKiBlbGVtZW50ID0gbmV3IFRpWG1sRWxlbWVudCggIkhlbGxvIiApOwotCVRpWG1sVGV4dCAqIHRleHQgPSBuZXcgVGlYbWxUZXh0KCAiV29ybGQiICk7Ci0JZWxlbWVudC0mZ3Q7TGlua0VuZENoaWxkKCB0ZXh0ICk7Ci0JZG9jLkxpbmtFbmRDaGlsZCggZGVjbCApOwotCWRvYy5MaW5rRW5kQ2hpbGQoIGVsZW1lbnQgKTsKLQlkb2MuU2F2ZUZpbGUoICJtYWRlQnlIYW5kLnhtbCIgKTsKLX0KLTwvcHJlPjwvZGl2PjxwPlRoaXMgY2FuIGJlIGxvYWRlZCBhbmQgZGlzcGxheWVkIG9uIHRoZSBjb25zb2xlIHdpdGg6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLWR1bXBfdG9fc3Rkb3V0KCJtYWRlQnlIYW5kLnhtbCIpOyAvLyB0aGlzIGZ1bmMgZGVmaW5lZCBsYXRlciBpbiB0aGUgdHV0b3JpYWwKLTwvcHJlPjwvZGl2PjxwPmFuZCB5b3UnbGwgc2VlIGl0IGlzIGlkZW50aWNhbCB0byBFeGFtcGxlIDE6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLW1hZGVCeUhhbmQueG1sOgotRG9jdW1lbnQKLSsgRGVjbGFyYXRpb24KLSsgRWxlbWVudCBbSGVsbG9dCi0gICsgVGV4dDogW1dvcmxkXQotPC9wcmU+PC9kaXY+PHA+VGhpcyBjb2RlIHByb2R1Y2VzIGV4YWN0bHkgdGhlIHNhbWUgWE1MIERPTSBidXQgaXQgc2hvd3MgYSBkaWZmZXJlbnQgb3JkZXJpbmcgdG8gbm9kZSBjcmVhdGlvbiBhbmQgbGlua2luZzo8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotdm9pZCB3cml0ZV9zaW1wbGVfZG9jMiggKQotewotCS8vIHNhbWUgYXMgd3JpdGVfc2ltcGxlX2RvYzEgYnV0IGFkZCBlYWNoIG5vZGUKLQkvLyBhcyBlYXJseSBhcyBwb3NzaWJsZSBpbnRvIHRoZSB0cmVlLgotCi0JVGlYbWxEb2N1bWVudCBkb2M7Ci0JVGlYbWxEZWNsYXJhdGlvbiAqIGRlY2wgPSBuZXcgVGlYbWxEZWNsYXJhdGlvbiggIjEuMCIsICIiLCAiIiApOwotCWRvYy5MaW5rRW5kQ2hpbGQoIGRlY2wgKTsKLQkKLQlUaVhtbEVsZW1lbnQgKiBlbGVtZW50ID0gbmV3IFRpWG1sRWxlbWVudCggIkhlbGxvIiApOwotCWRvYy5MaW5rRW5kQ2hpbGQoIGVsZW1lbnQgKTsKLQkKLQlUaVhtbFRleHQgKiB0ZXh0ID0gbmV3IFRpWG1sVGV4dCggIldvcmxkIiApOwotCWVsZW1lbnQtJmd0O0xpbmtFbmRDaGlsZCggdGV4dCApOwotCQotCWRvYy5TYXZlRmlsZSggIm1hZGVCeUhhbmQyLnhtbCIgKTsKLX0KLTwvcHJlPjwvZGl2PjxwPkJvdGggb2YgdGhlc2UgcHJvZHVjZSB0aGUgc2FtZSBYTUwsIG5hbWVseTo8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotJmx0Oz94bWwgdmVyc2lvbj0iMS4wIiA/Jmd0OwotJmx0O0hlbGxvJmd0O1dvcmxkJmx0Oy9IZWxsbyZndDsKLTwvcHJlPjwvZGl2PjxwPk9yIGluIHN0cnVjdHVyZSBmb3JtOjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci1ET0NVTUVOVAotKyBERUNMQVJBVElPTgotKyBFTEVNRU5UIEhlbGxvCi0gICsgVEVYVFtXb3JsZF0KLTwvcHJlPjwvZGl2PjxoMj5BdHRyaWJ1dGVzIDwvaDI+Ci08cD5HaXZlbiBhbiBleGlzdGluZyBub2RlLCBzZXR0aW5ncyBhdHRyaWJ1dGVzIGlzIGVhc3k6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLXdpbmRvdyA9IG5ldyBUaVhtbEVsZW1lbnQoICJEZW1vIiApOyAgCi13aW5kb3ctJmd0O1NldEF0dHJpYnV0ZSgibmFtZSIsICJDaXJjbGUiKTsKLXdpbmRvdy0mZ3Q7U2V0QXR0cmlidXRlKCJ4IiwgNSk7Ci13aW5kb3ctJmd0O1NldEF0dHJpYnV0ZSgieSIsIDE1KTsKLXdpbmRvdy0mZ3Q7U2V0RG91YmxlQXR0cmlidXRlKCJyYWRpdXMiLCAzLjE0MTU5KTsKLTwvcHJlPjwvZGl2PjxwPllvdSBjYW4gaXQgYWxzbyB3b3JrIHdpdGggdGhlIDxhIGNsYXNzPSJlbCIgaHJlZj0iY2xhc3NUaVhtbEF0dHJpYnV0ZS5odG1sIiB0aXRsZT0iQW4gYXR0cmlidXRlIGlzIGEgbmFtZS12YWx1ZSBwYWlyLiI+VGlYbWxBdHRyaWJ1dGU8L2E+IG9iamVjdHMgaWYgeW91IHdhbnQuPC9wPgotPHA+VGhlIGZvbGxvd2luZyBjb2RlIHNob3dzIG9uZSB3YXkgKG5vdCB0aGUgb25seSB3YXkpIHRvIGdldCBhbGwgYXR0cmlidXRlcyBvZiBhbiBlbGVtZW50LCBwcmludCB0aGUgbmFtZSBhbmQgc3RyaW5nIHZhbHVlLCBhbmQgaWYgdGhlIHZhbHVlIGNhbiBiZSBjb252ZXJ0ZWQgdG8gYW4gaW50ZWdlciBvciBkb3VibGUsIHByaW50IHRoYXQgdmFsdWUgdG9vOjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci0vLyBwcmludCBhbGwgYXR0cmlidXRlcyBvZiBwRWxlbWVudC4KLS8vIHJldHVybnMgdGhlIG51bWJlciBvZiBhdHRyaWJ1dGVzIHByaW50ZWQKLWludCBkdW1wX2F0dHJpYnNfdG9fc3Rkb3V0KFRpWG1sRWxlbWVudCogcEVsZW1lbnQsIHVuc2lnbmVkIGludCBpbmRlbnQpCi17Ci0JaWYgKCAhcEVsZW1lbnQgKSByZXR1cm4gMDsKLQotCVRpWG1sQXR0cmlidXRlKiBwQXR0cmliPXBFbGVtZW50LSZndDtGaXJzdEF0dHJpYnV0ZSgpOwotCWludCBpPTA7Ci0JaW50IGl2YWw7Ci0JZG91YmxlIGR2YWw7Ci0JY29uc3QgY2hhciogcEluZGVudD1nZXRJbmRlbnQoaW5kZW50KTsKLQlwcmludGYoIlxuIik7Ci0Jd2hpbGUgKHBBdHRyaWIpCis8cD4KK0V4YW1wbGU6PHA+Cis8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgl2b2lkIHdyaXRlX3NpbXBsZV9kb2MoICkKIAl7Ci0JCXByaW50ZiggIiVzJXM6IHZhbHVlPVslc10iLCBwSW5kZW50LCBwQXR0cmliLSZndDtOYW1lKCksIHBBdHRyaWItJmd0O1ZhbHVlKCkpOwotCi0JCWlmIChwQXR0cmliLSZndDtRdWVyeUludFZhbHVlKCZhbXA7aXZhbCk9PVRJWE1MX1NVQ0NFU1MpICAgIHByaW50ZiggIiBpbnQ9JWQiLCBpdmFsKTsKLQkJaWYgKHBBdHRyaWItJmd0O1F1ZXJ5RG91YmxlVmFsdWUoJmFtcDtkdmFsKT09VElYTUxfU1VDQ0VTUykgcHJpbnRmKCAiIGQ9JTEuMWYiLCBkdmFsKTsKKwkJLy8gTWFrZSB4bWw6ICZsdDs/eG1sIC4uJmd0OyZsdDtIZWxsbyZndDtXb3JsZCZsdDsvSGVsbG8mZ3Q7CisJCVRpWG1sRG9jdW1lbnQgZG9jOworCQlUaVhtbERlY2xhcmF0aW9uICogZGVjbCA9IG5ldyBUaVhtbERlY2xhcmF0aW9uKCAiMS4wIiwgIiIsICIiICk7CisJCVRpWG1sRWxlbWVudCAqIGVsZW1lbnQgPSBuZXcgVGlYbWxFbGVtZW50KCAiSGVsbG8iICk7CisJCVRpWG1sVGV4dCAqIHRleHQgPSBuZXcgVGlYbWxUZXh0KCAiV29ybGQiICk7CisJCWVsZW1lbnQtJmd0O0xpbmtFbmRDaGlsZCggdGV4dCApOworCQlkb2MuTGlua0VuZENoaWxkKCBkZWNsICk7CisJCWRvYy5MaW5rRW5kQ2hpbGQoIGVsZW1lbnQgKTsKKwkJCisJCWR1bXBfdG9fc3Rkb3V0KCAmYW1wO2RvYyApOworCQlkb2MuU2F2ZUZpbGUoICJtYWRlQnlIYW5kLnhtbCIgKTsKKwl9CisJPC9wcmU+PC9kaXY+PHA+CitBbHRlcm5hdGl2ZWx5OjxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4Jdm9pZCB3cml0ZV9zaW1wbGVfZG9jMiggKQorCXsKKwkJLy8gc2FtZSBhcyB3cml0ZV9zaW1wbGVfZG9jMSBidXQgYWRkIGVhY2ggbm9kZQorCQkvLyBhcyBlYXJseSBhcyBwb3NzaWJsZSBpbnRvIHRoZSB0cmVlLgorCQorCQlUaVhtbERvY3VtZW50IGRvYzsKKwkJVGlYbWxEZWNsYXJhdGlvbiAqIGRlY2wgPSBuZXcgVGlYbWxEZWNsYXJhdGlvbiggIjEuMCIsICIiLCAiIiApOworCQlkb2MuTGlua0VuZENoaWxkKCBkZWNsICk7CisJCQorCQlUaVhtbEVsZW1lbnQgKiBlbGVtZW50ID0gbmV3IFRpWG1sRWxlbWVudCggIkhlbGxvIiApOworCQlkb2MuTGlua0VuZENoaWxkKCBlbGVtZW50ICk7CisJCQorCQlUaVhtbFRleHQgKiB0ZXh0ID0gbmV3IFRpWG1sVGV4dCggIldvcmxkIiApOworCQllbGVtZW50LSZndDtMaW5rRW5kQ2hpbGQoIHRleHQgKTsKKwkJCisJCWR1bXBfdG9fc3Rkb3V0KCAmYW1wO2RvYyApOworCQlkb2MuU2F2ZUZpbGUoICJtYWRlQnlIYW5kMi54bWwiICk7CisJfQorCTwvcHJlPjwvZGl2PjxwPgorQm90aCBvZiB0aGVzZSBwcm9kdWNlIHRoZSBzYW1lIFhNTCwgbmFtZWx5OjxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JJmx0Oz94bWwgdmVyc2lvbj0iMS4wIiA/Jmd0OworCSZsdDtIZWxsbyZndDtXb3JsZCZsdDsvSGVsbG8mZ3Q7CisJPC9wcmU+PC9kaXY+PHA+CitPciBpbiBzdHJ1Y3R1cmUgZm9ybTo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CURPQ1VNRU5UCisJKyBERUNMQVJBVElPTgorCSsgRUxFTUVOVCBIZWxsbworCSAgKyBURVhUW1dvcmxkXQorCTwvcHJlPjwvZGl2PjxwPgorPGgyPlNhdmluZyBEb2N1bWVudHMgdG8gRmlsZSA8L2gyPgorPHA+CitUaGlzIGZ1bmN0aW9uOjxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4Jdm9pZCB3cml0ZV9zaW1wbGVfZG9jMyggKSAgCisJeyAgCisJCS8vIFRoaXMgZXhhbXBsZSBjb3VydGVzeSBvZiBwb2xvY29sZWdlCisJIAorCQlUaVhtbERvY3VtZW50IGRvYzsgIAorCQlUaVhtbERlY2xhcmF0aW9uICogZGVjbCA9IG5ldyBUaVhtbERlY2xhcmF0aW9uKCAiMS4wIiwgIiIsICIiICk7ICAKKwkJZG9jLkxpbmtFbmRDaGlsZCggZGVjbCApOyAgCisJIAorCQlUaVhtbEVsZW1lbnQgKiBlbGVtZW50ID0gbmV3IFRpWG1sRWxlbWVudCggIkhlbGxvIiApOyAgCisJCWRvYy5MaW5rRW5kQ2hpbGQoIGVsZW1lbnQgKTsgIAorCSAKKwkJVGlYbWxUZXh0ICogdGV4dCA9IG5ldyBUaVhtbFRleHQoICJPcGVuaW5nIGEgbmV3IHNhbHV0YXRpb24iICk7ICAKKwkJZWxlbWVudC0mZ3Q7TGlua0VuZENoaWxkKCB0ZXh0ICk7ICAKKwkgCisJCVRpWG1sRWxlbWVudCAqIGVsZW1lbnQyID0gbmV3IFRpWG1sRWxlbWVudCggIkdyZWV0aW5nIiApOyAgCisJCWVsZW1lbnQtJmd0O0xpbmtFbmRDaGlsZCggZWxlbWVudDIgKTsgIAorCSAKKwkJVGlYbWxUZXh0ICogdGV4dDIgPSBuZXcgVGlYbWxUZXh0KCAiSG93IGFyZSB5b3U/IiApOyAgCisJCWVsZW1lbnQyLSZndDtMaW5rRW5kQ2hpbGQoIHRleHQyICk7ICAKKwkgCisJCVRpWG1sRWxlbWVudCAqIGVsZW1lbnQzID0gbmV3IFRpWG1sRWxlbWVudCggIkxhbmd1YWdlIiApOyAgCisJCWVsZW1lbnQyLSZndDtMaW5rRW5kQ2hpbGQoIGVsZW1lbnQzICk7ICAKKwkgCisJCVRpWG1sVGV4dCAqIHRleHQzID0gbmV3IFRpWG1sVGV4dCggIkVuZ2xpc2giICk7ICAKKwkJZWxlbWVudDMtJmd0O0xpbmtFbmRDaGlsZCggdGV4dDMgKTsgIAorCSAKKwkJVGlYbWxFbGVtZW50ICogZWxlbWVudDQgPSBuZXcgVGlYbWxFbGVtZW50KCAiRXhjbGFtYXRpb24iICk7ICAKKwkJZWxlbWVudC0mZ3Q7TGlua0VuZENoaWxkKCBlbGVtZW50NCApOyAgCisJIAorCQlUaVhtbFRleHQgKiB0ZXh0NCA9IG5ldyBUaVhtbFRleHQoICJZb3UgaGF2ZSBjaGlsZHJlbiEiICk7ICAKKwkJZWxlbWVudDQtJmd0O0xpbmtFbmRDaGlsZCggdGV4dDQgKTsgIAorCSAKKwkJZHVtcF90b19zdGRvdXQoICZhbXA7ZG9jICk7CisJCWRvYy5TYXZlRmlsZSggIm1hZGVCeUhhbmQzLnhtbCIgKTsgIAorCX0gIAorCTwvcHJlPjwvZGl2PjxwPgorUHJvZHVjZXMgdGhpcyBzdHJ1Y3R1cmU6PHA+Cis8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPglEb2N1bWVudAorCSsgRGVjbGFyYXRpb24KKwkrIEVsZW1lbnQgIkhlbGxvIgorCSAgKyBUZXh0OiBbT3BlbmluZyBhIG5ldyBzYWx1dGF0aW9uXQorCSAgKyBFbGVtZW50ICJHcmVldGluZyIKKwkJKyBUZXh0OiBbSG93IGFyZSB5b3U/XQorCQkrIEVsZW1lbnQgIkxhbmd1YWdlIgorCQkgICsgVGV4dDogW0VuZ2xpc2hdCisJICArIEVsZW1lbnQgIkV4Y2xhbWF0aW9uIgorCQkrIFRleHQ6IFtZb3UgaGF2ZSBjaGlsZHJlbiFdCisJPC9wcmU+PC9kaXY+PHA+CitUaGUgZmlsZSBgYG1hZGVCeUhhbmQzLnhtbGBgIGxvb2tzIGV4YWN0bHkgbGlrZSB0aGlzIChpbmNsdWRpbmcgaW5kZW50cyk6PHA+Cis8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgkmbHQ7P3htbCB2ZXJzaW9uPSIxLjAiID8mZ3Q7CisJJmx0O0hlbGxvJmd0O09wZW5pbmcgYSBuZXcgc2FsdXRhdGlvbgorCSAgICAmbHQ7R3JlZXRpbmcmZ3Q7SG93IGFyZSB5b3U/CisJICAgICAgICAmbHQ7TGFuZ3VhZ2UmZ3Q7RW5nbGlzaCZsdDsvTGFuZ3VhZ2UmZ3Q7CisJICAgICZsdDsvR3JlZXRpbmcmZ3Q7CisJICAgICZsdDtFeGNsYW1hdGlvbiZndDtZb3UgaGF2ZSBjaGlsZHJlbiEmbHQ7L0V4Y2xhbWF0aW9uJmd0OworCSZsdDsvSGVsbG8mZ3Q7CisJPC9wcmU+PC9kaXY+PHA+CitJIHdhcyBzdXJwcmlzZWQgdGhhdCBUaW55WG1sLCBieSBkZWZhdWx0LCB3cml0ZXMgdGhlIFhNTCBpbiB3aGF0IG90aGVyIEFQSXMgY2FsbCBhICJwcmV0dHkiIGZvcm1hdCAtIGl0IG1vZGlmaWVzIHRoZSB3aGl0ZXNwYWNlIG9mIHRleHQgb2YgZWxlbWVudHMgdGhhdCBjb250YWluIG90aGVyIG5vZGVzIHNvIHRoYXQgd3JpdGluZyB0aGUgdHJlZSBpbmNsdWRlcyBhbiBpbmRpY2F0aW9uIG9mIG5lc3RpbmcgbGV2ZWwuPHA+CitJIGhhdmVuJ3QgbG9va2VkIHlldCB0byBzZWUgaWYgdGhlcmUgaXMgYSB3YXkgdG8gdHVybiBvZmYgaW5kZW50aW5nIHdoZW4gd3JpdGluZyBhIGZpbGUgLSBpdHMgYm91bmQgdG8gYmUgZWFzeS48cD4KK1tMZWU6IEl0J3MgZWFzeSBpbiBTVEwgbW9kZSwganVzdCB1c2UgY291dCAmbHQ7Jmx0OyBteURvYy4gTm9uLVNUTCBtb2RlIGlzIGFsd2F5cyBpbiAicHJldHR5IiBmb3JtYXQuIEFkZGluZyBhIHN3aXRjaCB3b3VsZCBiZSBhIG5pY2UgZmVhdHVyZSBhbmQgaGFzIGJlZW4gcmVxdWVzdGVkLl08cD4KKzxoMT5JdGVyYXRpbmcgT3ZlciBEb2N1bWVudHMgPC9oMT4KKzxwPgorPGgyPkR1bXAgc3RydWN0dXJlIG9mIGEgRG9jdW1lbnQgdG8gU1RET1VUIDwvaDI+Cis8cD4KK09mdGVuIHdoZW4geW91J3JlIHN0YXJ0aW5nIGl0cyBoZWxwZnVsIGFuZCByZWFzc3VyaW5nIHRvIGtub3cgdGhhdCB5b3UncmUgZG9jdW1lbnQgZ290IGxvYWRlZCBhcyB5b3UgZXhwZWN0IGl0IHRvLjxwPgorQmVsb3cgSSd2ZSBkZWZpbmVkIGEgZnVuY3Rpb24gdG8gd2FsayBhIGRvY3VtZW50IGFuZCB3cml0ZSBjb250ZW50cyB0byBTVERPVVQ6PHA+Cis8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgkvLyBhIHV0aWxpdHkgZnVuY3Rpb24gZGVmaW5pbmcgYSB2ZXJ5IHNpbXBsZSBtZXRob2QgdG8gaW5kZW50IGEgbGluZSBvZiB0ZXh0CisJY29uc3QgY2hhciAqIGdldEluZGVudCggdW5zaWduZWQgaW50IG51bUluZGVudHMgKQorCXsKKwkJc3RhdGljIGNvbnN0IGNoYXIgKiBwSU5ERU5UID0gIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyAiOworCQlzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50IExFTkdUSCA9IHN0cmxlbiggcElOREVOVCApOworCQorCQlpZiAoIG51bUluZGVudHMgJmd0OyBMRU5HVEggKSBudW1JbmRlbnRzID0gTEVOR1RIOworCQorCQlyZXR1cm4gJmFtcDtwSU5ERU5UWyBMRU5HVEgtbnVtSW5kZW50cyBdOworCX0KKwkKKwl2b2lkIGR1bXBfdG9fc3Rkb3V0KCBUaVhtbE5vZGUgKiBwUGFyZW50LCB1bnNpZ25lZCBpbnQgaW5kZW50ID0gMCApCisJeworCQlpZiAoICFwUGFyZW50ICkgcmV0dXJuOworCQorCQlUaVhtbFRleHQgKnBUZXh0OworCQlpbnQgdCA9IHBQYXJlbnQtJmd0O1R5cGUoKTsKKwkJcHJpbnRmKCAiJXMiLCBnZXRJbmRlbnQoIGluZGVudCkpOworCQorCQlzd2l0Y2ggKCB0ICkKKwkJeworCQljYXNlIFRpWG1sTm9kZTo6RE9DVU1FTlQ6CisJCQlwcmludGYoICJEb2N1bWVudCIgKTsKKwkJCWJyZWFrOworCQorCQljYXNlIFRpWG1sTm9kZTo6RUxFTUVOVDoKKwkJCXByaW50ZiggIkVsZW1lbnQgXCIlc1wiIiwgcFBhcmVudC0mZ3Q7VmFsdWUoKSApOworCQkJYnJlYWs7CisJCisJCWNhc2UgVGlYbWxOb2RlOjpDT01NRU5UOgorCQkJcHJpbnRmKCAiQ29tbWVudDogXCIlc1wiIiwgcFBhcmVudC0mZ3Q7VmFsdWUoKSk7CisJCQlicmVhazsKKwkKKwkJY2FzZSBUaVhtbE5vZGU6OlVOS05PV046CisJCQlwcmludGYoICJVbmtub3duIiApOworCQkJYnJlYWs7CisJCisJCWNhc2UgVGlYbWxOb2RlOjpURVhUOgorCQkJcFRleHQgPSBwUGFyZW50LSZndDtUb1RleHQoKTsKKwkJCXByaW50ZiggIlRleHQ6IFslc10iLCBwVGV4dC0mZ3Q7VmFsdWUoKSApOworCQkJYnJlYWs7CisJCisJCWNhc2UgVGlYbWxOb2RlOjpERUNMQVJBVElPTjoKKwkJCXByaW50ZiggIkRlY2xhcmF0aW9uIiApOworCQkJYnJlYWs7CisJCWRlZmF1bHQ6CisJCQlicmVhazsKKwkJfQogCQlwcmludGYoICJcbiIgKTsKLQkJaSsrOwotCQlwQXR0cmliPXBBdHRyaWItJmd0O05leHQoKTsKLQl9Ci0JcmV0dXJuIGk7Ci19Ci08L3ByZT48L2Rpdj48aDI+V3JpdGluZyBhIGRvY3VtZW50IHRvIGEgZmlsZSA8L2gyPgotPHA+V3JpdGluZyBhIHByZS1idWlsdCBET00gdG8gYSBmaWxlIGlzIHRyaXZpYWw6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLWRvYy5TYXZlRmlsZSggc2F2ZUZpbGVuYW1lICk7ICAKLTwvcHJlPjwvZGl2PjxwPlJlY2FsbCwgZm9yIGV4YW1wbGUsIGV4YW1wbGUgNDo8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotJmx0Oz94bWwgdmVyc2lvbj0iMS4wIiA/Jmd0OwotJmx0O015QXBwJmd0OwotICAgICZsdDshLS0gU2V0dGluZ3MgZm9yIE15QXBwIC0tJmd0OwotICAgICZsdDtNZXNzYWdlcyZndDsKLSAgICAgICAgJmx0O1dlbGNvbWUmZ3Q7V2VsY29tZSB0byBNeUFwcCZsdDsvV2VsY29tZSZndDsKLSAgICAgICAgJmx0O0ZhcmV3ZWxsJmd0O1RoYW5rIHlvdSBmb3IgdXNpbmcgTXlBcHAmbHQ7L0ZhcmV3ZWxsJmd0OwotICAgICZsdDsvTWVzc2FnZXMmZ3Q7Ci0gICAgJmx0O1dpbmRvd3MmZ3Q7Ci0gICAgICAgICZsdDtXaW5kb3cgbmFtZT0iTWFpbkZyYW1lIiB4PSI1IiB5PSIxNSIgdz0iNDAwIiBoPSIyNTAiIC8mZ3Q7Ci0gICAgJmx0Oy9XaW5kb3dzJmd0OwotICAgICZsdDtDb25uZWN0aW9uIGlwPSIxOTIuMTY4LjAuMSIgdGltZW91dD0iMTIzLjQ1NjAwMCIgLyZndDsKLSZsdDsvTXlBcHAmZ3Q7Ci08L3ByZT48L2Rpdj48cD5UaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGJ1aWxkcyB0aGlzIERPTSBhbmQgd3JpdGVzIHRoZSBmaWxlICJhcHBzZXR0aW5ncy54bWwiOjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci12b2lkIHdyaXRlX2FwcF9zZXR0aW5nc19kb2MoICkgIAoteyAgCi0JVGlYbWxEb2N1bWVudCBkb2M7ICAKLQlUaVhtbEVsZW1lbnQqIG1zZzsKLSAJVGlYbWxEZWNsYXJhdGlvbiogZGVjbCA9IG5ldyBUaVhtbERlY2xhcmF0aW9uKCAiMS4wIiwgIiIsICIiICk7ICAKLQlkb2MuTGlua0VuZENoaWxkKCBkZWNsICk7ICAKLSAKLQlUaVhtbEVsZW1lbnQgKiByb290ID0gbmV3IFRpWG1sRWxlbWVudCggIk15QXBwIiApOyAgCi0JZG9jLkxpbmtFbmRDaGlsZCggcm9vdCApOyAgCi0KLQlUaVhtbENvbW1lbnQgKiBjb21tZW50ID0gbmV3IFRpWG1sQ29tbWVudCgpOwotCWNvbW1lbnQtJmd0O1NldFZhbHVlKCIgU2V0dGluZ3MgZm9yIE15QXBwICIgKTsgIAotCXJvb3QtJmd0O0xpbmtFbmRDaGlsZCggY29tbWVudCApOyAgCi0gCi0JVGlYbWxFbGVtZW50ICogbXNncyA9IG5ldyBUaVhtbEVsZW1lbnQoICJNZXNzYWdlcyIgKTsgIAotCXJvb3QtJmd0O0xpbmtFbmRDaGlsZCggbXNncyApOyAgCi0gCi0JbXNnID0gbmV3IFRpWG1sRWxlbWVudCggIldlbGNvbWUiICk7ICAKLQltc2ctJmd0O0xpbmtFbmRDaGlsZCggbmV3IFRpWG1sVGV4dCggIldlbGNvbWUgdG8gTXlBcHAiICkpOyAgCi0JbXNncy0mZ3Q7TGlua0VuZENoaWxkKCBtc2cgKTsgIAotIAotCW1zZyA9IG5ldyBUaVhtbEVsZW1lbnQoICJGYXJld2VsbCIgKTsgIAotCW1zZy0mZ3Q7TGlua0VuZENoaWxkKCBuZXcgVGlYbWxUZXh0KCAiVGhhbmsgeW91IGZvciB1c2luZyBNeUFwcCIgKSk7ICAKLQltc2dzLSZndDtMaW5rRW5kQ2hpbGQoIG1zZyApOyAgCi0gCi0JVGlYbWxFbGVtZW50ICogd2luZG93cyA9IG5ldyBUaVhtbEVsZW1lbnQoICJXaW5kb3dzIiApOyAgCi0Jcm9vdC0mZ3Q7TGlua0VuZENoaWxkKCB3aW5kb3dzICk7ICAKLQotCVRpWG1sRWxlbWVudCAqIHdpbmRvdzsKLQl3aW5kb3cgPSBuZXcgVGlYbWxFbGVtZW50KCAiV2luZG93IiApOyAgCi0Jd2luZG93cy0mZ3Q7TGlua0VuZENoaWxkKCB3aW5kb3cgKTsgIAotCXdpbmRvdy0mZ3Q7U2V0QXR0cmlidXRlKCJuYW1lIiwgIk1haW5GcmFtZSIpOwotCXdpbmRvdy0mZ3Q7U2V0QXR0cmlidXRlKCJ4IiwgNSk7Ci0Jd2luZG93LSZndDtTZXRBdHRyaWJ1dGUoInkiLCAxNSk7Ci0Jd2luZG93LSZndDtTZXRBdHRyaWJ1dGUoInciLCA0MDApOwotCXdpbmRvdy0mZ3Q7U2V0QXR0cmlidXRlKCJoIiwgMjUwKTsKLQotCVRpWG1sRWxlbWVudCAqIGN4biA9IG5ldyBUaVhtbEVsZW1lbnQoICJDb25uZWN0aW9uIiApOyAgCi0Jcm9vdC0mZ3Q7TGlua0VuZENoaWxkKCBjeG4gKTsgIAotCWN4bi0mZ3Q7U2V0QXR0cmlidXRlKCJpcCIsICIxOTIuMTY4LjAuMSIpOwotCWN4bi0mZ3Q7U2V0RG91YmxlQXR0cmlidXRlKCJ0aW1lb3V0IiwgMTIzLjQ1Nik7IC8vIGZsb2F0aW5nIHBvaW50IGF0dHJpYgogCQotCWR1bXBfdG9fc3Rkb3V0KCAmYW1wO2RvYyApOwotCWRvYy5TYXZlRmlsZSggImFwcHNldHRpbmdzLnhtbCIgKTsgIAotfSAKLTwvcHJlPjwvZGl2PjxwPlRoZSBkdW1wX3RvX3N0ZG91dCBmdW5jdGlvbiB3aWxsIHNob3cgdGhpcyBzdHJ1Y3R1cmU6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLURvY3VtZW50Ci0rIERlY2xhcmF0aW9uCi0rIEVsZW1lbnQgW015QXBwXQotIChObyBhdHRyaWJ1dGVzKQotICArIENvbW1lbnQ6IFsgU2V0dGluZ3MgZm9yIE15QXBwIF0KLSAgKyBFbGVtZW50IFtNZXNzYWdlc10KLSAoTm8gYXR0cmlidXRlcykKLSAgICArIEVsZW1lbnQgW1dlbGNvbWVdCi0gKE5vIGF0dHJpYnV0ZXMpCi0gICAgICArIFRleHQ6IFtXZWxjb21lIHRvIE15QXBwXQotICAgICsgRWxlbWVudCBbRmFyZXdlbGxdCi0gKE5vIGF0dHJpYnV0ZXMpCi0gICAgICArIFRleHQ6IFtUaGFuayB5b3UgZm9yIHVzaW5nIE15QXBwXQotICArIEVsZW1lbnQgW1dpbmRvd3NdCi0gKE5vIGF0dHJpYnV0ZXMpCi0gICAgKyBFbGVtZW50IFtXaW5kb3ddCi0gICAgICArIG5hbWU6IHZhbHVlPVtNYWluRnJhbWVdCi0gICAgICArIHg6IHZhbHVlPVs1XSBpbnQ9NSBkPTUuMAotICAgICAgKyB5OiB2YWx1ZT1bMTVdIGludD0xNSBkPTE1LjAKLSAgICAgICsgdzogdmFsdWU9WzQwMF0gaW50PTQwMCBkPTQwMC4wCi0gICAgICArIGg6IHZhbHVlPVsyNTBdIGludD0yNTAgZD0yNTAuMAotICAgICAgNSBhdHRyaWJ1dGVzCi0gICsgRWxlbWVudCBbQ29ubmVjdGlvbl0KLSAgICArIGlwOiB2YWx1ZT1bMTkyLjE2OC4wLjFdIGludD0xOTIgZD0xOTIuMgotICAgICsgdGltZW91dDogdmFsdWU9WzEyMy40NTYwMDBdIGludD0xMjMgZD0xMjMuNQotICAgIDIgYXR0cmlidXRlcwotPC9wcmU+PC9kaXY+PHA+SSB3YXMgc3VycHJpc2VkIHRoYXQgVGlueVhtbCwgYnkgZGVmYXVsdCwgd3JpdGVzIHRoZSBYTUwgaW4gd2hhdCBvdGhlciBBUElzIGNhbGwgYSAicHJldHR5IiBmb3JtYXQgLSBpdCBtb2RpZmllcyB0aGUgd2hpdGVzcGFjZSBvZiB0ZXh0IG9mIGVsZW1lbnRzIHRoYXQgY29udGFpbiBvdGhlciBub2RlcyBzbyB0aGF0IHdyaXRpbmcgdGhlIHRyZWUgaW5jbHVkZXMgYW4gaW5kaWNhdGlvbiBvZiBuZXN0aW5nIGxldmVsLjwvcD4KLTxwPkkgaGF2ZW4ndCBsb29rZWQgeWV0IHRvIHNlZSBpZiB0aGVyZSBpcyBhIHdheSB0byB0dXJuIG9mZiBpbmRlbnRpbmcgd2hlbiB3cml0aW5nIGEgZmlsZSAtIGl0cyBib3VuZCB0byBiZSBlYXN5LjwvcD4KLTxwPltMZWU6IEl0J3MgZWFzeSBpbiBTVEwgbW9kZSwganVzdCB1c2UgY291dCAmbHQ7Jmx0OyBteURvYy4gTm9uLVNUTCBtb2RlIGlzIGFsd2F5cyBpbiAicHJldHR5IiBmb3JtYXQuIEFkZGluZyBhIHN3aXRjaCB3b3VsZCBiZSBhIG5pY2UgZmVhdHVyZSBhbmQgaGFzIGJlZW4gcmVxdWVzdGVkLl08L3A+Ci08aDE+WE1MIHRvL2Zyb20gQysrIG9iamVjdHMgPC9oMT4KLTxoMj5JbnRybyA8L2gyPgotPHA+VGhpcyBleGFtcGxlIGFzc3VtZXMgeW91J3JlIGxvYWRpbmcgYW5kIHNhdmluZyB5b3VyIGFwcCBzZXR0aW5ncyBpbiBhbiBYTUwgZmlsZSwgZS5nLiBzb21ldGhpbmcgbGlrZSBleGFtcGxlNC54bWwuPC9wPgotPHA+VGhlcmUgYXJlIGEgbnVtYmVyIG9mIHdheXMgdG8gZG8gdGhpcy4gRm9yIGV4YW1wbGUsIGxvb2sgaW50byB0aGUgVGlueUJpbmQgcHJvamVjdCBhdCA8YSBocmVmPSJodHRwOi8vc291cmNlZm9yZ2UubmV0L3Byb2plY3RzL3RpbnliaW5kIj5odHRwOi8vc291cmNlZm9yZ2UubmV0L3Byb2plY3RzL3RpbnliaW5kPC9hPjwvcD4KLTxwPlRoaXMgc2VjdGlvbiBzaG93cyBhIHBsYWluLW9sZCBhcHByb2FjaCB0byBsb2FkaW5nIGFuZCBzYXZpbmcgYSBiYXNpYyBvYmplY3Qgc3RydWN0dXJlIHVzaW5nIFhNTC48L3A+Ci08aDI+U2V0IHVwIHlvdXIgb2JqZWN0IGNsYXNzZXMgPC9oMj4KLTxwPlN0YXJ0IG9mZiB3aXRoIHNvbWUgYmFzaWMgY2xhc3NlcyBsaWtlIHRoZXNlOjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci0jaW5jbHVkZSAmbHQ7c3RyaW5nJmd0OwotI2luY2x1ZGUgJmx0O21hcCZndDsKLXVzaW5nIG5hbWVzcGFjZSBzdGQ7Ci0KLXR5cGVkZWYgc3RkOjptYXAmbHQ7c3RkOjpzdHJpbmcsc3RkOjpzdHJpbmcmZ3Q7IE1lc3NhZ2VNYXA7Ci0KLS8vIGEgYmFzaWMgd2luZG93IGFic3RyYWN0aW9uIC0gZGVtbyBwdXJwb3NlcyBvbmx5Ci1jbGFzcyBXaW5kb3dTZXR0aW5ncwotewotcHVibGljOgotCWludCB4LHksdyxoOwotCXN0cmluZyBuYW1lOwotCi0JV2luZG93U2V0dGluZ3MoKQotCQk6IHgoMCksIHkoMCksIHcoMTAwKSwgaCgxMDApLCBuYW1lKCJVbnRpdGxlZCIpCi0JewotCX0KLQotCVdpbmRvd1NldHRpbmdzKGludCB4LCBpbnQgeSwgaW50IHcsIGludCBoLCBjb25zdCBzdHJpbmcmYW1wOyBuYW1lKQotCXsKLQkJdGhpcy0mZ3Q7eD14OwotCQl0aGlzLSZndDt5PXk7Ci0JCXRoaXMtJmd0O3c9dzsKLQkJdGhpcy0mZ3Q7aD1oOwotCQl0aGlzLSZndDtuYW1lPW5hbWU7Ci0JfQotfTsKLQotY2xhc3MgQ29ubmVjdGlvblNldHRpbmdzCi17Ci1wdWJsaWM6Ci0Jc3RyaW5nIGlwOwotCWRvdWJsZSB0aW1lb3V0OwotfTsKLQotY2xhc3MgQXBwU2V0dGluZ3MKLXsKLXB1YmxpYzoKLQlzdHJpbmcgbV9uYW1lOwotCU1lc3NhZ2VNYXAgbV9tZXNzYWdlczsKLQlsaXN0Jmx0O1dpbmRvd1NldHRpbmdzJmd0OyBtX3dpbmRvd3M7Ci0JQ29ubmVjdGlvblNldHRpbmdzIG1fY29ubmVjdGlvbjsKLQotCUFwcFNldHRpbmdzKCkge30KLQotCXZvaWQgc2F2ZShjb25zdCBjaGFyKiBwRmlsZW5hbWUpOwotCXZvaWQgbG9hZChjb25zdCBjaGFyKiBwRmlsZW5hbWUpOworCQlUaVhtbE5vZGUgKiBwQ2hpbGQ7CiAJCi0JLy8ganVzdCB0byBzaG93IGhvdyB0byBkbyBpdAotCXZvaWQgc2V0RGVtb1ZhbHVlcygpCi0JewotCQltX25hbWU9Ik15QXBwIjsKLQkJbV9tZXNzYWdlcy5jbGVhcigpOwotCQltX21lc3NhZ2VzWyJXZWxjb21lIl09IldlbGNvbWUgdG8gIittX25hbWU7Ci0JCW1fbWVzc2FnZXNbIkZhcmV3ZWxsIl09IlRoYW5rIHlvdSBmb3IgdXNpbmcgIittX25hbWU7Ci0JCW1fd2luZG93cy5jbGVhcigpOwotCQltX3dpbmRvd3MucHVzaF9iYWNrKFdpbmRvd1NldHRpbmdzKDE1LDE1LDQwMCwyNTAsIk1haW4iKSk7Ci0JCW1fY29ubmVjdGlvbi5pcD0iVW5rbm93biI7Ci0JCW1fY29ubmVjdGlvbi50aW1lb3V0PTEyMy40NTY7CisJCWZvciAoIHBDaGlsZCA9IHBQYXJlbnQtJmd0O0ZpcnN0Q2hpbGQoKTsgcENoaWxkICE9IDA7IHBDaGlsZCA9IHBDaGlsZC0mZ3Q7TmV4dFNpYmxpbmcoKSkgCisJCXsKKwkJCWR1bXBfdG9fc3Rkb3V0KCBwQ2hpbGQsIGluZGVudCsyICk7CisJCX0KIAl9Ci19OwotPC9wcmU+PC9kaXY+PHA+VGhpcyBpcyBhIGJhc2ljIG1haW4oKSB0aGF0IHNob3dzIGhvdyB0byBjcmVhdGUgYSBkZWZhdWx0IHNldHRpbmdzIG9iamVjdCB0cmVlLCBzYXZlIGl0IGFuZCBsb2FkIGl0IGFnYWluOjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci1pbnQgbWFpbih2b2lkKQotewotCUFwcFNldHRpbmdzIHNldHRpbmdzOworCTwvcHJlPjwvZGl2PjxwPgorVG8gbG9hZCBhIGZpbGUgYW5kIGR1bXAgaXRzIHN0cnVjdHVyZTo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CXZvaWQgbG9hZF9hbmRfZGlzcGxheSggKQorCXsKKwkJLy8gaW1wb3J0YW50IGZvciB0aGUgcG9ldHJ5IGRlbW8sIGJ1dCB5b3UgbWF5IG5vdCBuZWVkIHRoaXMgCisJCS8vIGluIHlvdXIgb3duIHByb2plY3RzCisJCVRpWG1sQmFzZTo6U2V0Q29uZGVuc2VXaGl0ZVNwYWNlKCBmYWxzZSApOwogCQotCXNldHRpbmdzLnNhdmUoImFwcHNldHRpbmdzMi54bWwiKTsKLQlzZXR0aW5ncy5sb2FkKCJhcHBzZXR0aW5nczIueG1sIik7Ci0JcmV0dXJuIDA7Ci19Ci08L3ByZT48L2Rpdj48cD5UaGUgZm9sbG93aW5nIG1haW4oKSBzaG93cyBjcmVhdGlvbiwgbW9kaWZpY2F0aW9uLCBzYXZpbmcgYW5kIHRoZW4gbG9hZGluZyBvZiBhIHNldHRpbmdzIHN0cnVjdHVyZTo8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotaW50IG1haW4odm9pZCkKLXsKLQkvLyBibG9jazogY3VzdG9taXNlIGFuZCBzYXZlIHNldHRpbmdzCi0JewotCQlBcHBTZXR0aW5ncyBzZXR0aW5nczsKLQkJc2V0dGluZ3MubV9uYW1lPSJIaXRjaEhpa2VyQXBwIjsKLQkJc2V0dGluZ3MubV9tZXNzYWdlc1siV2VsY29tZSJdPSJEb24ndCBQYW5pYyI7Ci0JCXNldHRpbmdzLm1fbWVzc2FnZXNbIkZhcmV3ZWxsIl09IlRoYW5rcyBmb3IgYWxsIHRoZSBmaXNoIjsKLQkJc2V0dGluZ3MubV93aW5kb3dzLnB1c2hfYmFjayhXaW5kb3dTZXR0aW5ncygxNSwyNSwzMDAsMjUwLCJCb29rRnJhbWUiKSk7Ci0JCXNldHRpbmdzLm1fY29ubmVjdGlvbi5pcD0iMTkyLjE2OC4wLjc3IjsKLQkJc2V0dGluZ3MubV9jb25uZWN0aW9uLnRpbWVvdXQ9NDIuMDsKLQotCQlzZXR0aW5ncy5zYXZlKCJhcHBzZXR0aW5nczIueG1sIik7Ci0JfQorCQlUaVhtbERvY3VtZW50IGRvYyggImRlbW8ueG1sIiApOworCQlib29sIGxvYWRPa2F5ID0gZG9jLkxvYWRGaWxlKCk7CiAJCi0JLy8gYmxvY2s6IGxvYWQgc2V0dGluZ3MKLQl7Ci0JCUFwcFNldHRpbmdzIHNldHRpbmdzOwotCQlzZXR0aW5ncy5sb2FkKCJhcHBzZXR0aW5nczIueG1sIik7Ci0JCXByaW50ZigiJXM6ICVzXG4iLCBzZXR0aW5ncy5tX25hbWUuY19zdHIoKSwgCi0JCQlzZXR0aW5ncy5tX21lc3NhZ2VzWyJXZWxjb21lIl0uY19zdHIoKSk7Ci0JCVdpbmRvd1NldHRpbmdzICZhbXA7IHc9c2V0dGluZ3MubV93aW5kb3dzLmZyb250KCk7Ci0JCXByaW50ZigiJXM6IFNob3cgd2luZG93ICclcycgYXQgJWQsJWQgKCVkIHggJWQpXG4iLCAKLQkJCXNldHRpbmdzLm1fbmFtZS5jX3N0cigpLCB3Lm5hbWUuY19zdHIoKSwgdy54LCB3LnksIHcudywgdy5oKTsKLQkJcHJpbnRmKCIlczogJXNcbiIsIHNldHRpbmdzLm1fbmFtZS5jX3N0cigpLCBzZXR0aW5ncy5tX21lc3NhZ2VzWyJGYXJld2VsbCJdLmNfc3RyKCkpOwotCX0KLQlyZXR1cm4gMDsKLX0KLTwvcHJlPjwvZGl2PjxwPldoZW4gdGhlIHNhdmUoKSBhbmQgbG9hZCgpIGFyZSBjb21wbGV0ZWQgKHNlZSBiZWxvdyksIHJ1bm5pbmcgdGhpcyBtYWluKCkgZGlzcGxheXMgb24gdGhlIGNvbnNvbGU6PC9wPgotPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4KLUhpdGNoSGlrZXJBcHA6IERvbid0IFBhbmljCi1IaXRjaEhpa2VyQXBwOiBTaG93IHdpbmRvdyAnQm9va0ZyYW1lJyBhdCAxNSwyNSAoMzAwIHggMTAwKQotSGl0Y2hIaWtlckFwcDogVGhhbmtzIGZvciBhbGwgdGhlIGZpc2gKLTwvcHJlPjwvZGl2PjxoMj5FbmNvZGUgQysrIHN0YXRlIGFzIFhNTCA8L2gyPgotPHA+VGhlcmUgYXJlIGxvdHMgb2YgZGlmZmVyZW50IHdheXMgdG8gYXBwcm9hY2ggc2F2aW5nIHRoaXMgdG8gYSBmaWxlLiBIZXJlJ3Mgb25lOjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci12b2lkIEFwcFNldHRpbmdzOjpzYXZlKGNvbnN0IGNoYXIqIHBGaWxlbmFtZSkKLXsKLQlUaVhtbERvY3VtZW50IGRvYzsgIAotCVRpWG1sRWxlbWVudCogbXNnOwotCVRpWG1sQ29tbWVudCAqIGNvbW1lbnQ7Ci0Jc3RyaW5nIHM7Ci0gCVRpWG1sRGVjbGFyYXRpb24qIGRlY2wgPSBuZXcgVGlYbWxEZWNsYXJhdGlvbiggIjEuMCIsICIiLCAiIiApOyAgCi0JZG9jLkxpbmtFbmRDaGlsZCggZGVjbCApOyAKLSAKLQlUaVhtbEVsZW1lbnQgKiByb290ID0gbmV3IFRpWG1sRWxlbWVudChtX25hbWUuY19zdHIoKSk7ICAKLQlkb2MuTGlua0VuZENoaWxkKCByb290ICk7ICAKLQotCWNvbW1lbnQgPSBuZXcgVGlYbWxDb21tZW50KCk7Ci0Jcz0iIFNldHRpbmdzIGZvciAiK21fbmFtZSsiICI7Ci0JY29tbWVudC0mZ3Q7U2V0VmFsdWUocy5jX3N0cigpKTsgIAotCXJvb3QtJmd0O0xpbmtFbmRDaGlsZCggY29tbWVudCApOyAgCi0KLQkvLyBibG9jazogbWVzc2FnZXMKLQl7Ci0JCU1lc3NhZ2VNYXA6Oml0ZXJhdG9yIGl0ZXI7Ci0KLQkJVGlYbWxFbGVtZW50ICogbXNncyA9IG5ldyBUaVhtbEVsZW1lbnQoICJNZXNzYWdlcyIgKTsgIAotCQlyb290LSZndDtMaW5rRW5kQ2hpbGQoIG1zZ3MgKTsgIAotIAotCQlmb3IgKGl0ZXI9bV9tZXNzYWdlcy5iZWdpbigpOyBpdGVyICE9IG1fbWVzc2FnZXMuZW5kKCk7IGl0ZXIrKykKKwkJaWYgKCBsb2FkT2theSApCiAJCXsKLQkJCWNvbnN0IHN0cmluZyAmYW1wOyBrZXk9KCppdGVyKS5maXJzdDsKLQkJCWNvbnN0IHN0cmluZyAmYW1wOyB2YWx1ZT0oKml0ZXIpLnNlY29uZDsKLQkJCW1zZyA9IG5ldyBUaVhtbEVsZW1lbnQoa2V5LmNfc3RyKCkpOyAgCi0JCQltc2ctJmd0O0xpbmtFbmRDaGlsZCggbmV3IFRpWG1sVGV4dCh2YWx1ZS5jX3N0cigpKSk7ICAKLQkJCW1zZ3MtJmd0O0xpbmtFbmRDaGlsZCggbXNnICk7ICAKKwkJCWR1bXBfdG9fc3Rkb3V0KCAmYW1wO2RvYyApOworCQl9CisJCWVsc2UKKwkJeworCQkJcHJpbnRmKCAiU29tZXRoaW5nIHdlbnQgd3JvbmdcbiIgKTsKIAkJfQogCX0KLQotCS8vIGJsb2NrOiB3aW5kb3dzCi0JewotCQlUaVhtbEVsZW1lbnQgKiB3aW5kb3dzTm9kZSA9IG5ldyBUaVhtbEVsZW1lbnQoICJXaW5kb3dzIiApOyAgCi0JCXJvb3QtJmd0O0xpbmtFbmRDaGlsZCggd2luZG93c05vZGUgKTsgIAotCi0JCWxpc3QmbHQ7V2luZG93U2V0dGluZ3MmZ3Q7OjppdGVyYXRvciBpdGVyOwotCi0JCWZvciAoaXRlcj1tX3dpbmRvd3MuYmVnaW4oKTsgaXRlciAhPSBtX3dpbmRvd3MuZW5kKCk7IGl0ZXIrKykKLQkJewotCQkJY29uc3QgV2luZG93U2V0dGluZ3MmYW1wOyB3PSppdGVyOwotCi0JCQlUaVhtbEVsZW1lbnQgKiB3aW5kb3c7Ci0JCQl3aW5kb3cgPSBuZXcgVGlYbWxFbGVtZW50KCAiV2luZG93IiApOyAgCi0JCQl3aW5kb3dzTm9kZS0mZ3Q7TGlua0VuZENoaWxkKCB3aW5kb3cgKTsgIAotCQkJd2luZG93LSZndDtTZXRBdHRyaWJ1dGUoIm5hbWUiLCB3Lm5hbWUuY19zdHIoKSk7Ci0JCQl3aW5kb3ctJmd0O1NldEF0dHJpYnV0ZSgieCIsIHcueCk7Ci0JCQl3aW5kb3ctJmd0O1NldEF0dHJpYnV0ZSgieSIsIHcueSk7Ci0JCQl3aW5kb3ctJmd0O1NldEF0dHJpYnV0ZSgidyIsIHcudyk7Ci0JCQl3aW5kb3ctJmd0O1NldEF0dHJpYnV0ZSgiaCIsIHcuaCk7Ci0JCX0KLQl9Ci0KLQkvLyBibG9jazogY29ubmVjdGlvbgotCXsKLQkJVGlYbWxFbGVtZW50ICogY3huID0gbmV3IFRpWG1sRWxlbWVudCggIkNvbm5lY3Rpb24iICk7ICAKLQkJcm9vdC0mZ3Q7TGlua0VuZENoaWxkKCBjeG4gKTsgIAotCQljeG4tJmd0O1NldEF0dHJpYnV0ZSgiaXAiLCBtX2Nvbm5lY3Rpb24uaXAuY19zdHIoKSk7Ci0JCWN4bi0mZ3Q7U2V0RG91YmxlQXR0cmlidXRlKCJ0aW1lb3V0IiwgbV9jb25uZWN0aW9uLnRpbWVvdXQpOyAKLQl9Ci0KLQlkb2MuU2F2ZUZpbGUocEZpbGVuYW1lKTsgIAotfQotPC9wcmU+PC9kaXY+PHA+UnVubmluZyB0aGlzIHdpdGggdGhlIG1vZGlmaWVkIG1haW4gcHJvZHVjZXMgdGhpcyBmaWxlOjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci0mbHQ7P3htbCB2ZXJzaW9uPSIxLjAiID8mZ3Q7Ci0mbHQ7SGl0Y2hIaWtlckFwcCZndDsKLSAgICAmbHQ7IS0tIFNldHRpbmdzIGZvciBIaXRjaEhpa2VyQXBwIC0tJmd0OwotICAgICZsdDtNZXNzYWdlcyZndDsKLSAgICAgICAgJmx0O0ZhcmV3ZWxsJmd0O1RoYW5rcyBmb3IgYWxsIHRoZSBmaXNoJmx0Oy9GYXJld2VsbCZndDsKLSAgICAgICAgJmx0O1dlbGNvbWUmZ3Q7RG9uJmFtcDthcG9zO3QgUGFuaWMmbHQ7L1dlbGNvbWUmZ3Q7Ci0gICAgJmx0Oy9NZXNzYWdlcyZndDsKLSAgICAmbHQ7V2luZG93cyZndDsKLSAgICAgICAgJmx0O1dpbmRvdyBuYW1lPSJCb29rRnJhbWUiIHg9IjE1IiB5PSIyNSIgdz0iMzAwIiBoPSIyNTAiIC8mZ3Q7Ci0gICAgJmx0Oy9XaW5kb3dzJmd0OwotICAgICZsdDtDb25uZWN0aW9uIGlwPSIxOTIuMTY4LjAuNzciIHRpbWVvdXQ9IjQyLjAwMDAwMCIgLyZndDsKLSZsdDsvSGl0Y2hIaWtlckFwcCZndDsKLTwvcHJlPjwvZGl2PjxoMj5EZWNvZGluZyBzdGF0ZSBmcm9tIFhNTCA8L2gyPgotPHA+QXMgd2l0aCBlbmNvZGluZyBvYmplY3RzLCB0aGVyZSBhcmUgYSBudW1iZXIgb2YgYXBwcm9hY2hlcyB0byBkZWNvZGluZyBYTUwgaW50byB5b3VyIG93biBDKysgb2JqZWN0IHN0cnVjdHVyZS4gVGhlIGZvbGxvd2luZyBhcHByb2FjaCB1c2VzIFRpWG1sSGFuZGxlcy48L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotdm9pZCBBcHBTZXR0aW5nczo6bG9hZChjb25zdCBjaGFyKiBwRmlsZW5hbWUpCi17Ci0JVGlYbWxEb2N1bWVudCBkb2MocEZpbGVuYW1lKTsKLQlpZiAoIWRvYy5Mb2FkRmlsZSgpKSByZXR1cm47Ci0KLQlUaVhtbEhhbmRsZSBoRG9jKCZhbXA7ZG9jKTsKLQlUaVhtbEVsZW1lbnQqIHBFbGVtOwotCVRpWG1sSGFuZGxlIGhSb290KDApOwotCi0JLy8gYmxvY2s6IG5hbWUKLQl7Ci0JCXBFbGVtPWhEb2MuRmlyc3RDaGlsZEVsZW1lbnQoKS5FbGVtZW50KCk7Ci0JCS8vIHNob3VsZCBhbHdheXMgaGF2ZSBhIHZhbGlkIHJvb3QgYnV0IGhhbmRsZSBncmFjZWZ1bGx5IGlmIGl0IGRvZXMKLQkJaWYgKCFwRWxlbSkgcmV0dXJuOwotCQltX25hbWU9cEVsZW0tJmd0O1ZhbHVlKCk7Ci0KLQkJLy8gc2F2ZSB0aGlzIGZvciBsYXRlcgotCQloUm9vdD1UaVhtbEhhbmRsZShwRWxlbSk7Ci0JfQotCi0JLy8gYmxvY2s6IHN0cmluZyB0YWJsZQotCXsKLQkJbV9tZXNzYWdlcy5jbGVhcigpOyAvLyB0cmFzaCBleGlzdGluZyB0YWJsZQotCi0JCXBFbGVtPWhSb290LkZpcnN0Q2hpbGQoICJNZXNzYWdlcyIgKS5GaXJzdENoaWxkKCkuRWxlbWVudCgpOwotCQlmb3IoIHBFbGVtOyBwRWxlbTsgcEVsZW09cEVsZW0tJmd0O05leHRTaWJsaW5nRWxlbWVudCgpKQotCQl7Ci0JCQljb25zdCBjaGFyICpwS2V5PXBFbGVtLSZndDtWYWx1ZSgpOwotCQkJY29uc3QgY2hhciAqcFRleHQ9cEVsZW0tJmd0O0dldFRleHQoKTsKLQkJCWlmIChwS2V5ICZhbXA7JmFtcDsgcFRleHQpIAotCQkJewotCQkJCW1fbWVzc2FnZXNbcEtleV09cFRleHQ7Ci0JCQl9Ci0JCX0KLQl9Ci0KLQkvLyBibG9jazogd2luZG93cwotCXsKLQkJbV93aW5kb3dzLmNsZWFyKCk7IC8vIHRyYXNoIGV4aXN0aW5nIGxpc3QKLQotCQlUaVhtbEVsZW1lbnQqIHBXaW5kb3dOb2RlPWhSb290LkZpcnN0Q2hpbGQoICJXaW5kb3dzIiApLkZpcnN0Q2hpbGQoKS5FbGVtZW50KCk7Ci0JCWZvciggcFdpbmRvd05vZGU7IHBXaW5kb3dOb2RlOyBwV2luZG93Tm9kZT1wV2luZG93Tm9kZS0mZ3Q7TmV4dFNpYmxpbmdFbGVtZW50KCkpCi0JCXsKLQkJCVdpbmRvd1NldHRpbmdzIHc7Ci0JCQljb25zdCBjaGFyICpwTmFtZT1wV2luZG93Tm9kZS0mZ3Q7QXR0cmlidXRlKCJuYW1lIik7Ci0JCQlpZiAocE5hbWUpIHcubmFtZT1wTmFtZTsKLQkJCQotCQkJcFdpbmRvd05vZGUtJmd0O1F1ZXJ5SW50QXR0cmlidXRlKCJ4IiwgJmFtcDt3LngpOyAvLyBJZiB0aGlzIGZhaWxzLCBvcmlnaW5hbCB2YWx1ZSBpcyBsZWZ0IGFzLWlzCi0JCQlwV2luZG93Tm9kZS0mZ3Q7UXVlcnlJbnRBdHRyaWJ1dGUoInkiLCAmYW1wO3cueSk7Ci0JCQlwV2luZG93Tm9kZS0mZ3Q7UXVlcnlJbnRBdHRyaWJ1dGUoInciLCAmYW1wO3cudyk7Ci0JCQlwV2luZG93Tm9kZS0mZ3Q7UXVlcnlJbnRBdHRyaWJ1dGUoImhoIiwgJmFtcDt3LmgpOwotCi0JCQltX3dpbmRvd3MucHVzaF9iYWNrKHcpOwotCQl9Ci0JfQotCi0JLy8gYmxvY2s6IGNvbm5lY3Rpb24KLQl7Ci0JCXBFbGVtPWhSb290LkZpcnN0Q2hpbGQoIkNvbm5lY3Rpb24iKS5FbGVtZW50KCk7Ci0JCWlmIChwRWxlbSkKLQkJewotCQkJbV9jb25uZWN0aW9uLmlwPXBFbGVtLSZndDtBdHRyaWJ1dGUoImlwIik7Ci0JCQlwRWxlbS0mZ3Q7UXVlcnlEb3VibGVBdHRyaWJ1dGUoInRpbWVvdXQiLCZhbXA7bV9jb25uZWN0aW9uLnRpbWVvdXQpOwotCQl9Ci0JfQotfQotPC9wcmU+PC9kaXY+PGgxPkZ1bGwgbGlzdGluZyBmb3IgZHVtcF90b19zdGRvdXQgPC9oMT4KLTxwPkJlbG93IGlzIGEgY29weS1hbmQtcGFzdGUgZGVtbyBwcm9ncmFtIGZvciBsb2FkaW5nIGFyYml0cmFyeSBYTUwgZmlsZXMgYW5kIGR1bXBpbmcgdGhlIHN0cnVjdHVyZSB0byBTVERPVVQgdXNpbmcgdGhlIHJlY3Vyc2l2ZSB0cmF2ZXJzYWwgbGlzdGVkIGFib3ZlLjwvcD4KLTxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+Ci0vLyB0dXRvcmlhbCBkZW1vIHByb2dyYW0KLSNpbmNsdWRlICJzdGRhZnguaCIKLSNpbmNsdWRlICJ0aW55eG1sLmgiCi0KLS8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLS8vIFNURE9VVCBkdW1wIGFuZCBpbmRlbnRpbmcgdXRpbGl0eSBmdW5jdGlvbnMKLS8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLWNvbnN0IHVuc2lnbmVkIGludCBOVU1fSU5ERU5UU19QRVJfU1BBQ0U9MjsKLQotY29uc3QgY2hhciAqIGdldEluZGVudCggdW5zaWduZWQgaW50IG51bUluZGVudHMgKQotewotCXN0YXRpYyBjb25zdCBjaGFyICogcElOREVOVD0iICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICArICI7Ci0Jc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBMRU5HVEg9c3RybGVuKCBwSU5ERU5UICk7Ci0JdW5zaWduZWQgaW50IG49bnVtSW5kZW50cypOVU1fSU5ERU5UU19QRVJfU1BBQ0U7Ci0JaWYgKCBuICZndDsgTEVOR1RIICkgbiA9IExFTkdUSDsKLQotCXJldHVybiAmYW1wO3BJTkRFTlRbIExFTkdUSC1uIF07Ci19Ci0KLS8vIHNhbWUgYXMgZ2V0SW5kZW50IGJ1dCBubyAiKyIgYXQgdGhlIGVuZAotY29uc3QgY2hhciAqIGdldEluZGVudEFsdCggdW5zaWduZWQgaW50IG51bUluZGVudHMgKQotewotCXN0YXRpYyBjb25zdCBjaGFyICogcElOREVOVD0iICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICI7Ci0Jc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBMRU5HVEg9c3RybGVuKCBwSU5ERU5UICk7Ci0JdW5zaWduZWQgaW50IG49bnVtSW5kZW50cypOVU1fSU5ERU5UU19QRVJfU1BBQ0U7Ci0JaWYgKCBuICZndDsgTEVOR1RIICkgbiA9IExFTkdUSDsKLQotCXJldHVybiAmYW1wO3BJTkRFTlRbIExFTkdUSC1uIF07Ci19Ci0KLWludCBkdW1wX2F0dHJpYnNfdG9fc3Rkb3V0KFRpWG1sRWxlbWVudCogcEVsZW1lbnQsIHVuc2lnbmVkIGludCBpbmRlbnQpCi17Ci0JaWYgKCAhcEVsZW1lbnQgKSByZXR1cm4gMDsKLQotCVRpWG1sQXR0cmlidXRlKiBwQXR0cmliPXBFbGVtZW50LSZndDtGaXJzdEF0dHJpYnV0ZSgpOwotCWludCBpPTA7Ci0JaW50IGl2YWw7Ci0JZG91YmxlIGR2YWw7Ci0JY29uc3QgY2hhciogcEluZGVudD1nZXRJbmRlbnQoaW5kZW50KTsKLQlwcmludGYoIlxuIik7Ci0Jd2hpbGUgKHBBdHRyaWIpCi0JewotCQlwcmludGYoICIlcyVzOiB2YWx1ZT1bJXNdIiwgcEluZGVudCwgcEF0dHJpYi0mZ3Q7TmFtZSgpLCBwQXR0cmliLSZndDtWYWx1ZSgpKTsKLQotCQlpZiAocEF0dHJpYi0mZ3Q7UXVlcnlJbnRWYWx1ZSgmYW1wO2l2YWwpPT1USVhNTF9TVUNDRVNTKSAgICBwcmludGYoICIgaW50PSVkIiwgaXZhbCk7Ci0JCWlmIChwQXR0cmliLSZndDtRdWVyeURvdWJsZVZhbHVlKCZhbXA7ZHZhbCk9PVRJWE1MX1NVQ0NFU1MpIHByaW50ZiggIiBkPSUxLjFmIiwgZHZhbCk7Ci0JCXByaW50ZiggIlxuIiApOwotCQlpKys7Ci0JCXBBdHRyaWI9cEF0dHJpYi0mZ3Q7TmV4dCgpOwotCX0KLQlyZXR1cm4gaTsJCi19Ci0KLXZvaWQgZHVtcF90b19zdGRvdXQoIFRpWG1sTm9kZSogcFBhcmVudCwgdW5zaWduZWQgaW50IGluZGVudCA9IDAgKQotewotCWlmICggIXBQYXJlbnQgKSByZXR1cm47Ci0KLQlUaVhtbE5vZGUqIHBDaGlsZDsKLQlUaVhtbFRleHQqIHBUZXh0OwotCWludCB0ID0gcFBhcmVudC0mZ3Q7VHlwZSgpOwotCXByaW50ZiggIiVzIiwgZ2V0SW5kZW50KGluZGVudCkpOwotCWludCBudW07Ci0KLQlzd2l0Y2ggKCB0ICkKLQl7Ci0JY2FzZSBUaVhtbE5vZGU6OlRJTllYTUxfRE9DVU1FTlQ6Ci0JCXByaW50ZiggIkRvY3VtZW50IiApOwotCQlicmVhazsKLQotCWNhc2UgVGlYbWxOb2RlOjpUSU5ZWE1MX0VMRU1FTlQ6Ci0JCXByaW50ZiggIkVsZW1lbnQgWyVzXSIsIHBQYXJlbnQtJmd0O1ZhbHVlKCkgKTsKLQkJbnVtPWR1bXBfYXR0cmlic190b19zdGRvdXQocFBhcmVudC0mZ3Q7VG9FbGVtZW50KCksIGluZGVudCsxKTsKLQkJc3dpdGNoKG51bSkKLQkJewotCQkJY2FzZSAwOiAgcHJpbnRmKCAiIChObyBhdHRyaWJ1dGVzKSIpOyBicmVhazsKLQkJCWNhc2UgMTogIHByaW50ZiggIiVzMSBhdHRyaWJ1dGUiLCBnZXRJbmRlbnRBbHQoaW5kZW50KSk7IGJyZWFrOwotCQkJZGVmYXVsdDogcHJpbnRmKCAiJXMlZCBhdHRyaWJ1dGVzIiwgZ2V0SW5kZW50QWx0KGluZGVudCksIG51bSk7IGJyZWFrOwotCQl9Ci0JCWJyZWFrOwotCi0JY2FzZSBUaVhtbE5vZGU6OlRJTllYTUxfQ09NTUVOVDoKLQkJcHJpbnRmKCAiQ29tbWVudDogWyVzXSIsIHBQYXJlbnQtJmd0O1ZhbHVlKCkpOwotCQlicmVhazsKLQotCWNhc2UgVGlYbWxOb2RlOjpUSU5ZWE1MX1VOS05PV046Ci0JCXByaW50ZiggIlVua25vd24iICk7Ci0JCWJyZWFrOwotCi0JY2FzZSBUaVhtbE5vZGU6OlRJTllYTUxfVEVYVDoKLQkJcFRleHQgPSBwUGFyZW50LSZndDtUb1RleHQoKTsKLQkJcHJpbnRmKCAiVGV4dDogWyVzXSIsIHBUZXh0LSZndDtWYWx1ZSgpICk7Ci0JCWJyZWFrOwotCi0JY2FzZSBUaVhtbE5vZGU6OlRJTllYTUxfREVDTEFSQVRJT046Ci0JCXByaW50ZiggIkRlY2xhcmF0aW9uIiApOwotCQlicmVhazsKLQlkZWZhdWx0OgotCQlicmVhazsKLQl9Ci0JcHJpbnRmKCAiXG4iICk7Ci0JZm9yICggcENoaWxkID0gcFBhcmVudC0mZ3Q7Rmlyc3RDaGlsZCgpOyBwQ2hpbGQgIT0gMDsgcENoaWxkID0gcENoaWxkLSZndDtOZXh0U2libGluZygpKSAKLQl7Ci0JCWR1bXBfdG9fc3Rkb3V0KCBwQ2hpbGQsIGluZGVudCsxICk7Ci0JfQotfQotCi0vLyBsb2FkIHRoZSBuYW1lZCBmaWxlIGFuZCBkdW1wIGl0cyBzdHJ1Y3R1cmUgdG8gU1RET1VUCi12b2lkIGR1bXBfdG9fc3Rkb3V0KGNvbnN0IGNoYXIqIHBGaWxlbmFtZSkKLXsKLQlUaVhtbERvY3VtZW50IGRvYyhwRmlsZW5hbWUpOwotCWJvb2wgbG9hZE9rYXkgPSBkb2MuTG9hZEZpbGUoKTsKLQlpZiAobG9hZE9rYXkpCi0JewotCQlwcmludGYoIlxuJXM6XG4iLCBwRmlsZW5hbWUpOwotCQlkdW1wX3RvX3N0ZG91dCggJmFtcDtkb2MgKTsgLy8gZGVmaW5lZCBsYXRlciBpbiB0aGUgdHV0b3JpYWwKLQl9Ci0JZWxzZQotCXsKLQkJcHJpbnRmKCJGYWlsZWQgdG8gbG9hZCBmaWxlIFwiJXNcIlxuIiwgcEZpbGVuYW1lKTsKLQl9Ci19Ci0KLS8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLS8vIG1haW4oKSBmb3IgcHJpbnRpbmcgZmlsZXMgbmFtZWQgb24gdGhlIGNvbW1hbmQgbGluZQotLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotaW50IG1haW4oaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkKLXsKLQlmb3IgKGludCBpPTE7IGkmbHQ7YXJnYzsgaSsrKQotCXsKLQkJZHVtcF90b19zdGRvdXQoYXJndltpXSk7Ci0JfQotCXJldHVybiAwOwotfQotPC9wcmU+PC9kaXY+PHA+UnVuIHRoaXMgZnJvbSB0aGUgY29tbWFuZCBsaW5lIG9yIGEgRE9TIHdpbmRvdywgZS5nLjo8L3A+Ci08ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPgotQzpcZGV2XHRpbnl4bWwmZ3Q7IERlYnVnXHRpbnl4bWxfMS5leGUgZXhhbXBsZTEueG1sCi0KLWV4YW1wbGUxLnhtbDoKLURvY3VtZW50Ci0rIERlY2xhcmF0aW9uCi0rIEVsZW1lbnQgW0hlbGxvXQotIChObyBhdHRyaWJ1dGVzKQotICArIFRleHQ6IFtXb3JsZF0KLTwvcHJlPjwvZGl2PjxwPjxlbT4gQXV0aG9ycyBhbmQgQ2hhbmdlcyA8L3A+Ci08dWw+CisJPC9wcmU+PC9kaXY+PHA+CitJZiB5b3UgcnVuIHRoaXMgd2l0aCB0aGUgZmlyc3QgWE1MIGZpbGUgeW91J2xsIHNlZSB0aGlzIG9uIFNURE9VVDo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CURPQ1VNRU5UCisJKyBERUNMQVJBVElPTgorCSsgRUxFTUVOVCBIZWxsbworCSAgKyBURVhUW1dvcmxkXQorCTwvcHJlPjwvZGl2PjxwPgorYW5kIG9uIHRoZSBzZWNvbmQgWE1MIGZpbGU6PHA+Cis8ZGl2IGNsYXNzPSJmcmFnbWVudCI+PHByZSBjbGFzcz0iZnJhZ21lbnQiPglET0NVTUVOVAorCSsgREVDTEFSQVRJT04KKwkrIEVMRU1FTlQgcG9ldHJ5CisJICArIENPTU1FTlQ6ICBteSBncmVhdCB3b3JrIG9mIGFydAorCSAgKyBFTEVNRU5UIHZlcnNlCisJICAgICsgVEVYVFsKKwlBbGFzCisJICBHcmVhdCBXaGF0ZXZlcgorCSAgICBBbGFzIChhZ2FpbikKKwldCisJPC9wcmU+PC9kaXY+PHA+CitOb3RlIHRoYXQgaWYgeW91IGNhbGwgZHVtcF90b19zdGRvdXQgbGlrZSB0aGlzOjxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JZHVtcF90b19zdGRvdXQoIGRvYy5Sb290RWxlbWVudCgpKTsKKwk8L3ByZT48L2Rpdj48cD4KK1lvdSdsbCBzZWUgdGhpcyBpbnN0ZWFkOjxwPgorPGRpdiBjbGFzcz0iZnJhZ21lbnQiPjxwcmUgY2xhc3M9ImZyYWdtZW50Ij4JRUxFTUVOVCBIZWxsbworCSsgVEVYVFtXb3JsZF0KKwk8L3ByZT48L2Rpdj48cD4KK2FuZDo8cD4KKzxkaXYgY2xhc3M9ImZyYWdtZW50Ij48cHJlIGNsYXNzPSJmcmFnbWVudCI+CUVMRU1FTlQgcG9ldHJ5CisJKyBDT01NRU5UOiAgbXkgZ3JlYXQgd29yayBvZiBhcnQKKwkrIEVMRU1FTlQgdmVyc2UKKyAgCSsgVEVYVFsKKwlBbGFzCisJICBHcmVhdCBXaGF0ZXZlcgorCSAgICBBbGFzIChhZ2FpbikKKwldIAorCTwvcHJlPjwvZGl2PjxwPgorPGVtPiBBdXRob3JzIGFuZCBDaGFuZ2VzIDx1bD4KIDxsaT4KLVdyaXR0ZW4gYnkgRWxsZXJzLCBBcHJpbCwgTWF5LCBKdW5lIDIwMDUgIDwvbGk+CitXcml0dGVuIGJ5IEVsbGVycywgQXByaWwgMjAwNSAgPC9saT4KIDxsaT4KIE1pbm9yIGVkaXRzIGFuZCBpbnRlZ3JhdGlvbiBpbnRvIGRvYyBzeXN0ZW0sIExlZSBUaG9tYXNvbiBTZXB0ZW1iZXIgMjAwNSAgPC9saT4KLTxsaT4KLVVwZGF0ZWQgYnkgRWxsZXJzLCBPY3RvYmVyIDIwMDUgIDwvbGk+CiA8L3VsPgotPHA+PC9lbT4gPC9wPgotPC9kaXY+Ci08aHIgc2l6ZT0iMSIvPjxhZGRyZXNzIHN0eWxlPSJ0ZXh0LWFsaWduOiByaWdodDsiPjxzbWFsbD5HZW5lcmF0ZWQgYnkmbmJzcDsKKzwvZW0+IDxociBzaXplPSIxIj48YWRkcmVzcyBzdHlsZT0iYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBvbiBTYXQgT2N0IDggMTQ6MTU6MzAgMjAwNSBmb3IgVGlueVhtbCBieSZuYnNwOwogPGEgaHJlZj0iaHR0cDovL3d3dy5kb3h5Z2VuLm9yZy9pbmRleC5odG1sIj4KLTxpbWcgY2xhc3M9ImZvb3RlciIgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIi8+PC9hPiAxLjYuMiA8L3NtYWxsPjwvYWRkcmVzcz4KKzxpbWcgc3JjPSJkb3h5Z2VuLnBuZyIgYWx0PSJkb3h5Z2VuIiBhbGlnbj0ibWlkZGxlIiBib3JkZXI9IjAiPjwvYT4gMS40LjQgPC9zbWFsbD48L2FkZHJlc3M+CiA8L2JvZHk+CiA8L2h0bWw+CmRpZmYgLS1naXQgYS9lY2hvLmRzcCBiL2VjaG8uZHNwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIxZWI4OTYKLS0tIC9kZXYvbnVsbAorKysgYi9lY2hvLmRzcApAQCAtMCwwICsxLDExMyBAQAorIyBNaWNyb3NvZnQgRGV2ZWxvcGVyIFN0dWRpbyBQcm9qZWN0IEZpbGUgLSBOYW1lPSJlY2hvIiAtIFBhY2thZ2UgT3duZXI9PDQ+DQorIyBNaWNyb3NvZnQgRGV2ZWxvcGVyIFN0dWRpbyBHZW5lcmF0ZWQgQnVpbGQgRmlsZSwgRm9ybWF0IFZlcnNpb24gNi4wMA0KKyMgKiogRE8gTk9UIEVESVQgKioNCisNCisjIFRBUkdUWVBFICJXaW4zMiAoeDg2KSBDb25zb2xlIEFwcGxpY2F0aW9uIiAweDAxMDMNCisNCitDRkc9ZWNobyAtIFdpbjMyIERlYnVnDQorIU1FU1NBR0UgVGhpcyBpcyBub3QgYSB2YWxpZCBtYWtlZmlsZS4gVG8gYnVpbGQgdGhpcyBwcm9qZWN0IHVzaW5nIE5NQUtFLA0KKyFNRVNTQUdFIHVzZSB0aGUgRXhwb3J0IE1ha2VmaWxlIGNvbW1hbmQgYW5kIHJ1bg0KKyFNRVNTQUdFIA0KKyFNRVNTQUdFIE5NQUtFIC9mICJlY2hvLm1hayIuDQorIU1FU1NBR0UgDQorIU1FU1NBR0UgWW91IGNhbiBzcGVjaWZ5IGEgY29uZmlndXJhdGlvbiB3aGVuIHJ1bm5pbmcgTk1BS0UNCishTUVTU0FHRSBieSBkZWZpbmluZyB0aGUgbWFjcm8gQ0ZHIG9uIHRoZSBjb21tYW5kIGxpbmUuIEZvciBleGFtcGxlOg0KKyFNRVNTQUdFIA0KKyFNRVNTQUdFIE5NQUtFIC9mICJlY2hvLm1hayIgQ0ZHPSJlY2hvIC0gV2luMzIgRGVidWciDQorIU1FU1NBR0UgDQorIU1FU1NBR0UgUG9zc2libGUgY2hvaWNlcyBmb3IgY29uZmlndXJhdGlvbiBhcmU6DQorIU1FU1NBR0UgDQorIU1FU1NBR0UgImVjaG8gLSBXaW4zMiBSZWxlYXNlIiAoYmFzZWQgb24gIldpbjMyICh4ODYpIENvbnNvbGUgQXBwbGljYXRpb24iKQ0KKyFNRVNTQUdFICJlY2hvIC0gV2luMzIgRGVidWciIChiYXNlZCBvbiAiV2luMzIgKHg4NikgQ29uc29sZSBBcHBsaWNhdGlvbiIpDQorIU1FU1NBR0UgDQorDQorIyBCZWdpbiBQcm9qZWN0DQorIyBQUk9QIEFsbG93UGVyQ29uZmlnRGVwZW5kZW5jaWVzIDANCisjIFBST1AgU2NjX1Byb2pOYW1lICIiDQorIyBQUk9QIFNjY19Mb2NhbFBhdGggIiINCitDUFA9Y2wuZXhlDQorUlNDPXJjLmV4ZQ0KKw0KKyFJRiAgIiQoQ0ZHKSIgPT0gImVjaG8gLSBXaW4zMiBSZWxlYXNlIg0KKw0KKyMgUFJPUCBCQVNFIFVzZV9NRkMgMA0KKyMgUFJPUCBCQVNFIFVzZV9EZWJ1Z19MaWJyYXJpZXMgMA0KKyMgUFJPUCBCQVNFIE91dHB1dF9EaXIgIlJlbGVhc2UiDQorIyBQUk9QIEJBU0UgSW50ZXJtZWRpYXRlX0RpciAiUmVsZWFzZSINCisjIFBST1AgQkFTRSBUYXJnZXRfRGlyICIiDQorIyBQUk9QIFVzZV9NRkMgMA0KKyMgUFJPUCBVc2VfRGVidWdfTGlicmFyaWVzIDANCisjIFBST1AgT3V0cHV0X0RpciAiZWNob1JlbGVhc2UiDQorIyBQUk9QIEludGVybWVkaWF0ZV9EaXIgImVjaG9SZWxlYXNlIg0KKyMgUFJPUCBUYXJnZXRfRGlyICIiDQorIyBBREQgQkFTRSBDUFAgL25vbG9nbyAvVzMgL0dYIC9PMiAvRCAiV0lOMzIiIC9EICJOREVCVUciIC9EICJfQ09OU09MRSIgL0QgIl9NQkNTIiAvWVggL0ZEIC9jDQorIyBBREQgQ1BQIC9ub2xvZ28gL1czIC9HWCAvTzIgL0QgIldJTjMyIiAvRCAiTkRFQlVHIiAvRCAiX0NPTlNPTEUiIC9EICJfTUJDUyIgL0QgIlRJWE1MX1VTRV9TVEwiIC9ZWCAvRkQgL2MNCisjIEFERCBCQVNFIFJTQyAvbCAweDQwOSAvZCAiTkRFQlVHIg0KKyMgQUREIFJTQyAvbCAweDQwOSAvZCAiTkRFQlVHIg0KK0JTQzMyPWJzY21ha2UuZXhlDQorIyBBREQgQkFTRSBCU0MzMiAvbm9sb2dvDQorIyBBREQgQlNDMzIgL25vbG9nbw0KK0xJTkszMj1saW5rLmV4ZQ0KKyMgQUREIEJBU0UgTElOSzMyIGtlcm5lbDMyLmxpYiB1c2VyMzIubGliIGdkaTMyLmxpYiB3aW5zcG9vbC5saWIgY29tZGxnMzIubGliIGFkdmFwaTMyLmxpYiBzaGVsbDMyLmxpYiBvbGUzMi5saWIgb2xlYXV0MzIubGliIHV1aWQubGliIG9kYmMzMi5saWIgb2RiY2NwMzIubGliIGtlcm5lbDMyLmxpYiB1c2VyMzIubGliIGdkaTMyLmxpYiB3aW5zcG9vbC5saWIgY29tZGxnMzIubGliIGFkdmFwaTMyLmxpYiBzaGVsbDMyLmxpYiBvbGUzMi5saWIgb2xlYXV0MzIubGliIHV1aWQubGliIG9kYmMzMi5saWIgb2RiY2NwMzIubGliIC9ub2xvZ28gL3N1YnN5c3RlbTpjb25zb2xlIC9tYWNoaW5lOkkzODYNCisjIEFERCBMSU5LMzIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgL25vbG9nbyAvc3Vic3lzdGVtOmNvbnNvbGUgL21hY2hpbmU6STM4Ng0KKw0KKyFFTFNFSUYgICIkKENGRykiID09ICJlY2hvIC0gV2luMzIgRGVidWciDQorDQorIyBQUk9QIEJBU0UgVXNlX01GQyAwDQorIyBQUk9QIEJBU0UgVXNlX0RlYnVnX0xpYnJhcmllcyAxDQorIyBQUk9QIEJBU0UgT3V0cHV0X0RpciAiZWNob19fX1dpbjMyX0RlYnVnIg0KKyMgUFJPUCBCQVNFIEludGVybWVkaWF0ZV9EaXIgImVjaG9fX19XaW4zMl9EZWJ1ZyINCisjIFBST1AgQkFTRSBUYXJnZXRfRGlyICIiDQorIyBQUk9QIFVzZV9NRkMgMA0KKyMgUFJPUCBVc2VfRGVidWdfTGlicmFyaWVzIDENCisjIFBST1AgT3V0cHV0X0RpciAiZWNob0RlYnVnIg0KKyMgUFJPUCBJbnRlcm1lZGlhdGVfRGlyICJlY2hvRGVidWciDQorIyBQUk9QIElnbm9yZV9FeHBvcnRfTGliIDANCisjIFBST1AgVGFyZ2V0X0RpciAiIg0KKyMgQUREIEJBU0UgQ1BQIC9ub2xvZ28gL1czIC9HbSAvR1ggL1pJIC9PZCAvRCAiV0lOMzIiIC9EICJfREVCVUciIC9EICJfQ09OU09MRSIgL0QgIl9NQkNTIiAvWVggL0ZEIC9HWiAvYw0KKyMgQUREIENQUCAvbm9sb2dvIC9XMyAvR20gL0dYIC9aSSAvT2QgL0QgIldJTjMyIiAvRCAiX0RFQlVHIiAvRCAiX0NPTlNPTEUiIC9EICJfTUJDUyIgL0QgIlRJWE1MX1VTRV9TVEwiIC9GUiAvWVggL0ZEIC9HWiAvYw0KKyMgQUREIEJBU0UgUlNDIC9sIDB4NDA5IC9kICJfREVCVUciDQorIyBBREQgUlNDIC9sIDB4NDA5IC9kICJfREVCVUciDQorQlNDMzI9YnNjbWFrZS5leGUNCisjIEFERCBCQVNFIEJTQzMyIC9ub2xvZ28NCisjIEFERCBCU0MzMiAvbm9sb2dvDQorTElOSzMyPWxpbmsuZXhlDQorIyBBREQgQkFTRSBMSU5LMzIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgL25vbG9nbyAvc3Vic3lzdGVtOmNvbnNvbGUgL2RlYnVnIC9tYWNoaW5lOkkzODYgL3BkYnR5cGU6c2VwdA0KKyMgQUREIExJTkszMiBrZXJuZWwzMi5saWIgdXNlcjMyLmxpYiBnZGkzMi5saWIgd2luc3Bvb2wubGliIGNvbWRsZzMyLmxpYiBhZHZhcGkzMi5saWIgc2hlbGwzMi5saWIgb2xlMzIubGliIG9sZWF1dDMyLmxpYiB1dWlkLmxpYiBvZGJjMzIubGliIG9kYmNjcDMyLmxpYiBrZXJuZWwzMi5saWIgdXNlcjMyLmxpYiBnZGkzMi5saWIgd2luc3Bvb2wubGliIGNvbWRsZzMyLmxpYiBhZHZhcGkzMi5saWIgc2hlbGwzMi5saWIgb2xlMzIubGliIG9sZWF1dDMyLmxpYiB1dWlkLmxpYiBvZGJjMzIubGliIG9kYmNjcDMyLmxpYiAvbm9sb2dvIC9zdWJzeXN0ZW06Y29uc29sZSAvZGVidWcgL21hY2hpbmU6STM4NiAvcGRidHlwZTpzZXB0DQorDQorIUVORElGIA0KKw0KKyMgQmVnaW4gVGFyZ2V0DQorDQorIyBOYW1lICJlY2hvIC0gV2luMzIgUmVsZWFzZSINCisjIE5hbWUgImVjaG8gLSBXaW4zMiBEZWJ1ZyINCisjIEJlZ2luIFNvdXJjZSBGaWxlDQorDQorU09VUkNFPS5ceG1sdGVzdGVyXGJ1Z3Rlc3QuY3BwDQorIyBFbmQgU291cmNlIEZpbGUNCisjIEJlZ2luIFNvdXJjZSBGaWxlDQorDQorU09VUkNFPS5cdGlueXN0ci5jcHANCisjIEVuZCBTb3VyY2UgRmlsZQ0KKyMgQmVnaW4gU291cmNlIEZpbGUNCisNCitTT1VSQ0U9Llx0aW55c3RyLmgNCisjIEVuZCBTb3VyY2UgRmlsZQ0KKyMgQmVnaW4gU291cmNlIEZpbGUNCisNCitTT1VSQ0U9Llx0aW55eG1sLmNwcA0KKyMgRW5kIFNvdXJjZSBGaWxlDQorIyBCZWdpbiBTb3VyY2UgRmlsZQ0KKw0KK1NPVVJDRT0uXHRpbnl4bWwuaA0KKyMgRW5kIFNvdXJjZSBGaWxlDQorIyBCZWdpbiBTb3VyY2UgRmlsZQ0KKw0KK1NPVVJDRT0uXHRpbnl4bWxlcnJvci5jcHANCisjIEVuZCBTb3VyY2UgRmlsZQ0KKyMgQmVnaW4gU291cmNlIEZpbGUNCisNCitTT1VSQ0U9Llx0aW55eG1scGFyc2VyLmNwcA0KKyMgRW5kIFNvdXJjZSBGaWxlDQorIyBFbmQgVGFyZ2V0DQorIyBFbmQgUHJvamVjdA0KZGlmZiAtLWdpdCBhL3JlYWRtZS50eHQgYi9yZWFkbWUudHh0CmluZGV4IDg5ZDllOGQuLmUyODA4NGIgMTAwNjQ0Ci0tLSBhL3JlYWRtZS50eHQKKysrIGIvcmVhZG1lLnR4dApAQCAtMSwxMyArMSwxMyBAQAogLyoqIEBtYWlucGFnZQogCi08aDE+IFRpbnlYTUwgPC9oMT4KKzxoMT4gVGlueVhtbCA8L2gxPgogCi1UaW55WE1MIGlzIGEgc2ltcGxlLCBzbWFsbCwgQysrIFhNTCBwYXJzZXIgdGhhdCBjYW4gYmUgZWFzaWx5IAotaW50ZWdyYXRlZCBpbnRvIG90aGVyIHByb2dyYW1zLgorVGlueVhtbCBpcyBhIHNpbXBsZSwgc21hbGwsIEMrKyBYTUwgcGFyc2VyIHRoYXQgY2FuIGJlIGVhc2lseSAKK2ludGVncmF0aW5nIGludG8gb3RoZXIgcHJvZ3JhbXMuCiAKIDxoMj4gV2hhdCBpdCBkb2VzLiA8L2gyPgogCQotSW4gYnJpZWYsIFRpbnlYTUwgcGFyc2VzIGFuIFhNTCBkb2N1bWVudCwgYW5kIGJ1aWxkcyBmcm9tIHRoYXQgYSAKK0luIGJyaWVmLCBUaW55WG1sIHBhcnNlcyBhbiBYTUwgZG9jdW1lbnQsIGFuZCBidWlsZHMgZnJvbSB0aGF0IGEgCiBEb2N1bWVudCBPYmplY3QgTW9kZWwgKERPTSkgdGhhdCBjYW4gYmUgcmVhZCwgbW9kaWZpZWQsIGFuZCBzYXZlZC4KIAogWE1MIHN0YW5kcyBmb3IgImVYdGVuc2libGUgTWFya3VwIExhbmd1YWdlLiIgSXQgYWxsb3dzIHlvdSB0byBjcmVhdGUgCkBAIC0yNSwzOCArMjUsMzggQEAKIDxhIGhyZWY9Imh0dHA6Ly9za2V3Lm9yZy94bWwvdHV0b3JpYWwvIj5odHRwOi8vc2tldy5vcmcveG1sL3R1dG9yaWFsPC9hPi4KIAogVGhlcmUgYXJlIGRpZmZlcmVudCB3YXlzIHRvIGFjY2VzcyBhbmQgaW50ZXJhY3Qgd2l0aCBYTUwgZGF0YS4KLVRpbnlYTUwgdXNlcyBhIERvY3VtZW50IE9iamVjdCBNb2RlbCAoRE9NKSwgbWVhbmluZyB0aGUgWE1MIGRhdGEgaXMgcGFyc2VkCitUaW55WG1sIHVzZXMgYSBEb2N1bWVudCBPYmplY3QgTW9kZWwgKERPTSksIG1lYW5pbmcgdGhlIFhNTCBkYXRhIGlzIHBhcnNlZAogaW50byBhIEMrKyBvYmplY3RzIHRoYXQgY2FuIGJlIGJyb3dzZWQgYW5kIG1hbmlwdWxhdGVkLCBhbmQgdGhlbiAKLXdyaXR0ZW4gdG8gZGlzayBvciBhbm90aGVyIG91dHB1dCBzdHJlYW0uIFlvdSBjYW4gYWxzbyBjb25zdHJ1Y3QgYW4gWE1MIGRvY3VtZW50IAotZnJvbSBzY3JhdGNoIHdpdGggQysrIG9iamVjdHMgYW5kIHdyaXRlIHRoaXMgdG8gZGlzayBvciBhbm90aGVyIG91dHB1dAord3JpdHRlbiB0byBkaXNrIG9yIGFub3RoZXIgb3V0cHV0IHN0cmVhbS4gWW91IGNhbiBhbHNvIGNvbnN0cnVjdCBhbiBYTUwgZG9jdW1lbnQgZnJvbQorc2NyYXRjaCB3aXRoIEMrKyBvYmplY3RzIGFuZCB3cml0ZSB0aGlzIHRvIGRpc2sgb3IgYW5vdGhlciBvdXRwdXQKIHN0cmVhbS4KIAotVGlueVhNTCBpcyBkZXNpZ25lZCB0byBiZSBlYXN5IGFuZCBmYXN0IHRvIGxlYXJuLiBJdCBpcyB0d28gaGVhZGVycyAKK1RpbnlYbWwgaXMgZGVzaWduZWQgdG8gYmUgZWFzeSBhbmQgZmFzdCB0byBsZWFybi4gSXQgaXMgdHdvIGhlYWRlcnMgCiBhbmQgZm91ciBjcHAgZmlsZXMuIFNpbXBseSBhZGQgdGhlc2UgdG8geW91ciBwcm9qZWN0IGFuZCBvZmYgeW91IGdvLiAKIFRoZXJlIGlzIGFuIGV4YW1wbGUgZmlsZSAtIHhtbHRlc3QuY3BwIC0gdG8gZ2V0IHlvdSBzdGFydGVkLiAKIAotVGlueVhNTCBpcyByZWxlYXNlZCB1bmRlciB0aGUgWkxpYiBsaWNlbnNlLCAKK1RpbnlYbWwgaXMgcmVsZWFzZWQgdW5kZXIgdGhlIFpMaWIgbGljZW5zZSwgCiBzbyB5b3UgY2FuIHVzZSBpdCBpbiBvcGVuIHNvdXJjZSBvciBjb21tZXJjaWFsIGNvZGUuIFRoZSBkZXRhaWxzCiBvZiB0aGUgbGljZW5zZSBhcmUgYXQgdGhlIHRvcCBvZiBldmVyeSBzb3VyY2UgZmlsZS4KIAotVGlueVhNTCBhdHRlbXB0cyB0byBiZSBhIGZsZXhpYmxlIHBhcnNlciwgYnV0IHdpdGggdHJ1bHkgY29ycmVjdCBhbmQKLWNvbXBsaWFudCBYTUwgb3V0cHV0LiBUaW55WE1MIHNob3VsZCBjb21waWxlIG9uIGFueSByZWFzb25hYmx5IEMrKworVGlueVhtbCBhdHRlbXB0cyB0byBiZSBhIGZsZXhpYmxlIHBhcnNlciwgYnV0IHdpdGggdHJ1bHkgY29ycmVjdCBhbmQKK2NvbXBsaWFudCBYTUwgb3V0cHV0LiBUaW55WG1sIHNob3VsZCBjb21waWxlIG9uIGFueSByZWFzb25hYmx5IEMrKwogY29tcGxpYW50IHN5c3RlbS4gSXQgZG9lcyBub3QgcmVseSBvbiBleGNlcHRpb25zIG9yIFJUVEkuIEl0IGNhbiBiZSAKLWNvbXBpbGVkIHdpdGggb3Igd2l0aG91dCBTVEwgc3VwcG9ydC4gVGlueVhNTCBmdWxseSBzdXBwb3J0cworY29tcGlsZWQgd2l0aCBvciB3aXRob3V0IFNUTCBzdXBwb3J0LiBUaW55WG1sIGZ1bGx5IHN1cHBvcnRzCiB0aGUgVVRGLTggZW5jb2RpbmcsIGFuZCB0aGUgZmlyc3QgNjRrIGNoYXJhY3RlciBlbnRpdGllcy4KIAogCiA8aDI+IFdoYXQgaXQgZG9lc24ndCBkby4gPC9oMj4KIAotVGlueVhNTCBkb2Vzbid0IHBhcnNlIG9yIHVzZSBEVERzIChEb2N1bWVudCBUeXBlIERlZmluaXRpb25zKSBvciBYU0xzCitJdCBkb2VzbnQgcGFyc2Ugb3IgdXNlIERURHMgKERvY3VtZW50IFR5cGUgRGVmaW5pdGlvbnMpIG9yIFhTTHMKIChlWHRlbnNpYmxlIFN0eWxlc2hlZXQgTGFuZ3VhZ2UuKSBUaGVyZSBhcmUgb3RoZXIgcGFyc2VycyBvdXQgdGhlcmUgCiAoY2hlY2sgb3V0IHd3dy5zb3VyY2Vmb3JnZS5vcmcsIHNlYXJjaCBmb3IgWE1MKSB0aGF0IGFyZSBtdWNoIG1vcmUgZnVsbHkKIGZlYXR1cmVkLiBCdXQgdGhleSBhcmUgYWxzbyBtdWNoIGJpZ2dlciwgdGFrZSBsb25nZXIgdG8gc2V0IHVwIGluCiB5b3VyIHByb2plY3QsIGhhdmUgYSBoaWdoZXIgbGVhcm5pbmcgY3VydmUsIGFuZCBvZnRlbiBoYXZlIGEgbW9yZQogcmVzdHJpY3RpdmUgbGljZW5zZS4gSWYgeW91IGFyZSB3b3JraW5nIHdpdGggYnJvd3NlcnMgb3IgaGF2ZSBtb3JlCi1jb21wbGV0ZSBYTUwgbmVlZHMsIFRpbnlYTUwgaXMgbm90IHRoZSBwYXJzZXIgZm9yIHlvdS4KK2NvbXBsZXRlIFhNTCBuZWVkcywgVGlueVhtbCBpcyBub3QgdGhlIHBhcnNlciBmb3IgeW91LgogCi1UaGUgZm9sbG93aW5nIERURCBzeW50YXggd2lsbCBub3QgcGFyc2UgYXQgdGhpcyB0aW1lIGluIFRpbnlYTUw6CitUaGUgZm9sbG93aW5nIERURCBzeW50YXggd2lsbCBub3QgcGFyc2UgYXQgdGhpcyB0aW1lIGluIFRpbnlYbWw6CiAKIEB2ZXJiYXRpbQogCTwhRE9DVFlQRSBBcmNoaXYgWwpAQCAtNjQsNyArNjQsNyBAQAogCV0+CiBAZW5kdmVyYmF0aW0KIAotYmVjYXVzZSBUaW55WE1MIHNlZXMgdGhpcyBhcyBhICFET0NUWVBFIG5vZGUgd2l0aCBhbiBpbGxlZ2FsbHkgCitiZWNhdXNlIFRpbnlYbWwgc2VlcyB0aGlzIGFzIGEgIURPQ1RZUEUgbm9kZSB3aXRoIGFuIGlsbGVnYWxseSAKIGVtYmVkZGVkICFFTEVNRU5UIG5vZGUuIFRoaXMgbWF5IGJlIGFkZHJlc3NlZCBpbiB0aGUgZnV0dXJlLgogCiA8aDI+IFR1dG9yaWFscy4gPC9oMj4KQEAgLTc2LDM3ICs3NiwyNiBAQAogCiA8aDI+IENvZGUgU3RhdHVzLiAgPC9oMj4KIAotVGlueVhNTCBpcyBtYXR1cmUsIHRlc3RlZCBjb2RlLiBJdCBpcyB2ZXJ5IHN0YWJsZS4gSWYgeW91IGZpbmQKK1RpbnlYbWwgaXMgbWF0dXJlLCB0ZXN0ZWQgY29kZS4gSXQgaXMgdmVyeSBzdGFibGUuIElmIHlvdSBmaW5kCiBidWdzLCBwbGVhc2UgZmlsZSBhIGJ1ZyByZXBvcnQgb24gdGhlIHNvdXJjZWZvcmdlIHdlYiBzaXRlCi0od3d3LnNvdXJjZWZvcmdlLm5ldC9wcm9qZWN0cy90aW55eG1sKS4gV2UnbGwgZ2V0IHRoZW0gc3RyYWlnaHRlbmVkIAotb3V0IGFzIHNvb24gYXMgcG9zc2libGUuCisod3d3LnNvdXJjZWZvcmdlLm5ldC9wcm9qZWN0cy90aW55eG1sKS4KK1dlJ2xsIGdldCB0aGVtIHN0cmFpZ2h0ZW5lZCBvdXQgYXMgc29vbiBhcyBwb3NzaWJsZS4KIAogVGhlcmUgYXJlIHNvbWUgYXJlYXMgb2YgaW1wcm92ZW1lbnQ7IHBsZWFzZSBjaGVjayBzb3VyY2Vmb3JnZSBpZiB5b3UgYXJlCi1pbnRlcmVzdGVkIGluIHdvcmtpbmcgb24gVGlueVhNTC4KK2ludGVyZXN0ZWQgaW4gd29ya2luZyBvbiBUaW55WG1sLgogCi08aDI+IFJlbGF0ZWQgUHJvamVjdHMgPC9oMj4KLQotVGlueVhNTCBwcm9qZWN0cyB5b3UgbWF5IGZpbmQgdXNlZnVsISAoRGVzY3JpcHRpb25zIHByb3ZpZGVkIGJ5IHRoZSBwcm9qZWN0cy4pCi0KLTx1bD4KLTxsaT4gPGI+VGlueVhQYXRoPC9iPiAoaHR0cDovL3Rpbnl4cGF0aC5zb3VyY2Vmb3JnZS5uZXQpLiBUaW55WFBhdGggaXMgYSBzbWFsbCBmb290cHJpbnQgCi0gICAgIFhQYXRoIHN5bnRheCBkZWNvZGVyLCB3cml0dGVuIGluIEMrKy48L2xpPgotPGxpPiA8Yj5UaW55WE1MKys8L2I+IChodHRwOi8vY29kZS5nb29nbGUuY29tL3AvdGljcHAvKS4gVGlueVhNTCsrIGlzIGEgY29tcGxldGVseSBuZXcgCi0gICAgIGludGVyZmFjZSB0byBUaW55WE1MIHRoYXQgdXNlcyBNQU5ZIG9mIHRoZSBDKysgc3RyZW5ndGhzLiBUZW1wbGF0ZXMsIAotCSBleGNlcHRpb25zLCBhbmQgbXVjaCBiZXR0ZXIgZXJyb3IgaGFuZGxpbmcuPC9saT4KLTwvdWw+CiAKIDxoMj4gRmVhdHVyZXMgPC9oMj4KIAogPGgzPiBVc2luZyBTVEwgPC9oMz4KIAotVGlueVhNTCBjYW4gYmUgY29tcGlsZWQgdG8gdXNlIG9yIG5vdCB1c2UgU1RMLiBXaGVuIHVzaW5nIFNUTCwgVGlueVhNTAorVGlueVhtbCBjYW4gYmUgY29tcGlsZWQgdG8gdXNlIG9yIG5vdCB1c2UgU1RMLiBXaGVuIHVzaW5nIFNUTCwgVGlueVhtbAogdXNlcyB0aGUgc3RkOjpzdHJpbmcgY2xhc3MsIGFuZCBmdWxseSBzdXBwb3J0cyBzdGQ6OmlzdHJlYW0sIHN0ZDo6b3N0cmVhbSwKIG9wZXJhdG9yPDwsIGFuZCBvcGVyYXRvcj4+LiBNYW55IEFQSSBtZXRob2RzIGhhdmUgYm90aCAnY29uc3QgY2hhcionIGFuZAogJ2NvbnN0IHN0ZDo6c3RyaW5nJicgZm9ybXMuCiAKLVdoZW4gU1RMIHN1cHBvcnQgaXMgY29tcGlsZWQgb3V0LCBubyBTVEwgZmlsZXMgYXJlIGluY2x1ZGVkIHdoYXRzb2V2ZXIuIEFsbAotdGhlIHN0cmluZyBjbGFzc2VzIGFyZSBpbXBsZW1lbnRlZCBieSBUaW55WE1MIGl0c2VsZi4gQVBJIG1ldGhvZHMKK1doZW4gU1RMIHN1cHBvcnQgaXMgY29tcGlsZWQgb3V0LCBubyBTVEwgZmlsZXMgYXJlIGluY2x1ZGVkIHdoYXRzb3Zlci4gQWxsCit0aGUgc3RyaW5nIGNsYXNzZXMgYXJlIGltcGxlbWVudGVkIGJ5IFRpbnlYbWwgaXRzZWxmLiBBUEkgbWV0aG9kcwogYWxsIHVzZSB0aGUgJ2NvbnN0IGNoYXIqJyBmb3JtIGZvciBpbnB1dC4KIAogVXNlIHRoZSBjb21waWxlIHRpbWUgI2RlZmluZToKQEAgLTExOSw1MiArMTA4LDUzIEBACiBOb3RlOiBJZiBjb21waWxpbmcgdGhlIHRlc3QgY29kZSBpbiBMaW51eCwgc2V0dGluZyB0aGUgZW52aXJvbm1lbnQKIHZhcmlhYmxlIFRJTllYTUxfVVNFX1NUTD1ZRVMvTk8gd2lsbCBjb250cm9sIFNUTCBjb21waWxhdGlvbi4gSW4gdGhlCiBXaW5kb3dzIHByb2plY3QgZmlsZSwgU1RMIGFuZCBub24gU1RMIHRhcmdldHMgYXJlIHByb3ZpZGVkLiBJbiB5b3VyIHByb2plY3QsCi1JdCdzIHByb2JhYmx5IGVhc2llc3QgdG8gYWRkIHRoZSBsaW5lICIjZGVmaW5lIFRJWE1MX1VTRV9TVEwiIGFzIHRoZSBmaXJzdAoraXRzIHByb2JhYmx5IGVhc2llc3QgdG8gYWRkIHRoZSBsaW5lICIjZGVmaW5lIFRJWE1MX1VTRV9TVEwiIGFzIHRoZSBmaXJzdAogbGluZSBvZiB0aW55eG1sLmguCiAKIDxoMz4gVVRGLTggPC9oMz4KIAotVGlueVhNTCBzdXBwb3J0cyBVVEYtOCBhbGxvd2luZyB0byBtYW5pcHVsYXRlIFhNTCBmaWxlcyBpbiBhbnkgbGFuZ3VhZ2UuIFRpbnlYTUwKK1RpbnlYbWwgc3VwcG9ydHMgVVRGLTggYWxsb3dpbmcgdG8gbWFuaXB1bGF0ZSBYTUwgZmlsZXMgaW4gYW55IGxhbmd1YWdlLiBUaW55WG1sCiBhbHNvIHN1cHBvcnRzICJsZWdhY3kgbW9kZSIgLSB0aGUgZW5jb2RpbmcgdXNlZCBiZWZvcmUgVVRGLTggc3VwcG9ydCBhbmQKIHByb2JhYmx5IGJlc3QgZGVzY3JpYmVkIGFzICJleHRlbmRlZCBhc2NpaSIuCiAKLU5vcm1hbGx5LCBUaW55WE1MIHdpbGwgdHJ5IHRvIGRldGVjdCB0aGUgY29ycmVjdCBlbmNvZGluZyBhbmQgdXNlIGl0LiBIb3dldmVyLAotYnkgc2V0dGluZyB0aGUgdmFsdWUgb2YgVElYTUxfREVGQVVMVF9FTkNPRElORyBpbiB0aGUgaGVhZGVyIGZpbGUsIFRpbnlYTUwKK05vcm1hbGx5LCBUaW55WG1sIHdpbGwgdHJ5IHRvIGRldGVjdCB0aGUgY29ycmVjdCBlbmNvZGluZyBhbmQgdXNlIGl0LiBIb3dldmVyLAorYnkgc2V0dGluZyB0aGUgdmFsdWUgb2YgVElYTUxfREVGQVVMVF9FTkNPRElORyBpbiB0aGUgaGVhZGVyIGZpbGUsIFRpbnlYbWwKIGNhbiBiZSBmb3JjZWQgdG8gYWx3YXlzIHVzZSBvbmUgZW5jb2RpbmcuCiAKLVRpbnlYTUwgd2lsbCBhc3N1bWUgTGVnYWN5IE1vZGUgdW50aWwgb25lIG9mIHRoZSBmb2xsb3dpbmcgb2NjdXJzOgorVGlueVhtbCB3aWxsIGFzc3VtZSBMZWdhY3kgTW9kZSB1bnRpbCBvbmUgb2YgdGhlIGZvbGxvd2luZyBvY2N1cnM6CiA8b2w+CiAJPGxpPiBJZiB0aGUgbm9uLXN0YW5kYXJkIGJ1dCBjb21tb24gIlVURi04IGxlYWQgYnl0ZXMiICgweGVmIDB4YmIgMHhiZikKLQkJIGJlZ2luIHRoZSBmaWxlIG9yIGRhdGEgc3RyZWFtLCBUaW55WE1MIHdpbGwgcmVhZCBpdCBhcyBVVEYtOC4gPC9saT4KKwkJIGJlZ2luIHRoZSBmaWxlIG9yIGRhdGEgc3RyZWFtLCBUaW55WG1sIHdpbGwgcmVhZCBpdCBhcyBVVEYtOC4gPC9saT4KIAk8bGk+IElmIHRoZSBkZWNsYXJhdGlvbiB0YWcgaXMgcmVhZCwgYW5kIGl0IGhhcyBhbiBlbmNvZGluZz0iVVRGLTgiLCB0aGVuCi0JCSBUaW55WE1MIHdpbGwgcmVhZCBpdCBhcyBVVEYtOC4gPC9saT4KLQk8bGk+IElmIHRoZSBkZWNsYXJhdGlvbiB0YWcgaXMgcmVhZCwgYW5kIGl0IGhhcyBubyBlbmNvZGluZyBzcGVjaWZpZWQsIHRoZW4gVGlueVhNTCB3aWxsIAotCQkgcmVhZCBpdCBhcyBVVEYtOC4gPC9saT4KLQk8bGk+IElmIHRoZSBkZWNsYXJhdGlvbiB0YWcgaXMgcmVhZCwgYW5kIGl0IGhhcyBhbiBlbmNvZGluZz0ic29tZXRoaW5nIGVsc2UiLCB0aGVuIFRpbnlYTUwgCi0JCSB3aWxsIHJlYWQgaXQgYXMgTGVnYWN5IE1vZGUuIEluIGxlZ2FjeSBtb2RlLCBUaW55WE1MIHdpbGwgd29yayBhcyBpdCBkaWQgYmVmb3JlLiBJdCdzIAotCQkgbm90IGNsZWFyIHdoYXQgdGhhdCBtb2RlIGRvZXMgZXhhY3RseSwgYnV0IG9sZCBjb250ZW50IHNob3VsZCBrZWVwIHdvcmtpbmcuPC9saT4KLQk8bGk+IFVudGlsIG9uZSBvZiB0aGUgYWJvdmUgY3JpdGVyaWEgaXMgbWV0LCBUaW55WE1MIHJ1bnMgaW4gTGVnYWN5IE1vZGUuPC9saT4KKwkJIFRpbnlYbWwgd2lsbCByZWFkIGl0IGFzIFVURi04LiA8L2xpPgorCTxsaT4gSWYgdGhlIGRlY2xhcmF0aW9uIHRhZyBpcyByZWFkLCBhbmQgaXQgaGFzIG5vIGVuY29kaW5nIHNwZWNpZmllZCwgdGhlbgorCQkgVGlueVhtbCB3aWxsIHJlYWQgaXQgYXMgVVRGLTguIDwvbGk+CisJPGxpPiBJZiB0aGUgZGVjbGFyYXRpb24gdGFnIGlzIHJlYWQsIGFuZCBpdCBoYXMgYW4gZW5jb2Rpbmc9InNvbWV0aGluZyBlbHNlIiwgdGhlbgorCQkgVGlueVhtbCB3aWxsIHJlYWQgaXQgYXMgTGVnYWN5IE1vZGUuIEluIGxlZ2FjeSBtb2RlLCBUaW55WG1sIHdpbGwgCisJCSB3b3JrIGFzIGl0IGRpZCBiZWZvcmUuIEl0J3Mgbm90IGNsZWFyIHdoYXQgdGhhdCBtb2RlIGRvZXMgZXhhY3RseSwgYnV0IAorCQkgb2xkIGNvbnRlbnQgc2hvdWxkIGtlZXAgd29ya2luZy48L2xpPgorCTxsaT4gVW50aWwgb25lIG9mIHRoZSBhYm92ZSBjcml0ZXJpYSBpcyBtZXQsIFRpbnlYbWwgcnVucyBpbiBMZWdhY3kgTW9kZS48L2xpPgogPC9vbD4KIAotV2hhdCBoYXBwZW5zIGlmIHRoZSBlbmNvZGluZyBpcyBpbmNvcnJlY3RseSBzZXQgb3IgZGV0ZWN0ZWQ/IFRpbnlYTUwgd2lsbCB0cnkKLXRvIHJlYWQgYW5kIHBhc3MgdGhyb3VnaCB0ZXh0IHNlZW4gYXMgaW1wcm9wZXJseSBlbmNvZGVkLiBZb3UgbWF5IGdldCBzb21lIHN0cmFuZ2UgcmVzdWx0cyBvciAKLW1hbmdsZWQgY2hhcmFjdGVycy4gWW91IG1heSB3YW50IHRvIGZvcmNlIFRpbnlYTUwgdG8gdGhlIGNvcnJlY3QgbW9kZS4KK1doYXQgaGFwcGVucyBpZiB0aGUgZW5jb2RpbmcgaXMgaW5jb3JyZWN0bHkgc2V0IG9yIGRldGVjdGVkPyBUaW55WG1sIHdpbGwgdHJ5Cit0byByZWFkIGFuZCBwYXNzIHRocm91Z2ggdGV4dCBzZWVuIGFzIGltcHJvcGVybHkgZW5jb2RlZC4gWW91IG1heSBnZXQgc29tZSBzdHJhbmdlCityZXN1bHRzIG9yIG1hbmdsZWQgY2hhcmFjdGVycy4gWW91IG1heSB3YW50IHRvIGZvcmNlIFRpbnlYbWwgdG8gdGhlIGNvcnJlY3QgbW9kZS4KIAotWW91IG1heSBmb3JjZSBUaW55WE1MIHRvIExlZ2FjeSBNb2RlIGJ5IHVzaW5nIExvYWRGaWxlKCBUSVhNTF9FTkNPRElOR19MRUdBQ1kgKSBvcgorPGI+IFlvdSBtYXkgZm9yY2UgVGlueVhtbCB0byBMZWdhY3kgTW9kZSBieSB1c2luZyBMb2FkRmlsZSggVElYTUxfRU5DT0RJTkdfTEVHQUNZICkgb3IKIExvYWRGaWxlKCBmaWxlbmFtZSwgVElYTUxfRU5DT0RJTkdfTEVHQUNZICkuIFlvdSBtYXkgZm9yY2UgaXQgdG8gdXNlIGxlZ2FjeSBtb2RlIGFsbAogdGhlIHRpbWUgYnkgc2V0dGluZyBUSVhNTF9ERUZBVUxUX0VOQ09ESU5HID0gVElYTUxfRU5DT0RJTkdfTEVHQUNZLiBMaWtld2lzZSwgeW91IG1heSAKLWZvcmNlIGl0IHRvIFRJWE1MX0VOQ09ESU5HX1VURjggd2l0aCB0aGUgc2FtZSB0ZWNobmlxdWUuCitmb3JjZSBpdCB0byBUSVhNTF9FTkNPRElOR19VVEY4IHdpdGggdGhlIHNhbWUgdGVjaG5pcXVlLjwvYj4KIAogRm9yIEVuZ2xpc2ggdXNlcnMsIHVzaW5nIEVuZ2xpc2ggWE1MLCBVVEYtOCBpcyB0aGUgc2FtZSBhcyBsb3ctQVNDSUkuIFlvdQogZG9uJ3QgbmVlZCB0byBiZSBhd2FyZSBvZiBVVEYtOCBvciBjaGFuZ2UgeW91ciBjb2RlIGluIGFueSB3YXkuIFlvdSBjYW4gdGhpbmsKIG9mIFVURi04IGFzIGEgInN1cGVyc2V0IiBvZiBBU0NJSS4KIAogVVRGLTggaXMgbm90IGEgZG91YmxlIGJ5dGUgZm9ybWF0IC0gYnV0IGl0IGlzIGEgc3RhbmRhcmQgZW5jb2Rpbmcgb2YgVW5pY29kZSEKLVRpbnlYTUwgZG9lcyBub3QgdXNlIG9yIGRpcmVjdGx5IHN1cHBvcnQgd2NoYXIsIFRDSEFSLCBvciBNaWNyb3NvZnQncyBfVU5JQ09ERSBhdCB0aGlzIHRpbWUuIAorVGlueVhtbCBkb2VzIG5vdCB1c2Ugb3IgZGlyZWN0bHkgc3VwcG9ydCB3Y2hhciwgVENIQVIsIG9yIE1pY3Jvc29mdHMgX1VOSUNPREUgYXQgdGhpcyB0aW1lLiAKIEl0IGlzIGNvbW1vbiB0byBzZWUgdGhlIHRlcm0gIlVuaWNvZGUiIGltcHJvcGVybHkgcmVmZXIgdG8gVVRGLTE2LCBhIHdpZGUgYnl0ZSBlbmNvZGluZwogb2YgdW5pY29kZS4gVGhpcyBpcyBhIHNvdXJjZSBvZiBjb25mdXNpb24uCiAKLUZvciAiaGlnaC1hc2NpaSIgbGFuZ3VhZ2VzIC0gZXZlcnl0aGluZyBub3QgRW5nbGlzaCwgcHJldHR5IG11Y2ggLSBUaW55WE1MIGNhbgorRm9yICJoaWdoLWFzY2lpIiBsYW5ndWFnZXMgLSBldmVyeXRoaW5nIG5vdCBFbmdsaXNoLCBwcmV0dHkgbXVjaCAtIFRpbnlYbWwgY2FuCiBoYW5kbGUgYWxsIGxhbmd1YWdlcywgYXQgdGhlIHNhbWUgdGltZSwgYXMgbG9uZyBhcyB0aGUgWE1MIGlzIGVuY29kZWQKIGluIFVURi04LiBUaGF0IGNhbiBiZSBhIGxpdHRsZSB0cmlja3ksIG9sZGVyIHByb2dyYW1zIGFuZCBvcGVyYXRpbmcgc3lzdGVtcwogdGVuZCB0byB1c2UgdGhlICJkZWZhdWx0IiBvciAidHJhZGl0aW9uYWwiIGNvZGUgcGFnZS4gTWFueSBhcHBzIChhbmQgYWxtb3N0IGFsbApAQCAtMTcyLDcgKzE2Miw3IEBACiBzdGlsbCBvdXRwdXQgdGV4dCBpbiB0aGUgZGVmYXVsdCBjb2RlIHBhZ2UuIAogCiBGb3IgZXhhbXBsZSwgSmFwYW5lc2Ugc3lzdGVtcyB0cmFkaXRpb25hbGx5IHVzZSBTSElGVC1KSVMgZW5jb2RpbmcuIAotVGV4dCBlbmNvZGVkIGFzIFNISUZULUpJUyBjYW4gbm90IGJlIHJlYWQgYnkgVGlueVhNTC4gCitUZXh0IGVuY29kZWQgYXMgU0hJRlQtSklTIGNhbiBub3QgYmUgcmVhZCBieSB0aW55eG1sLiAKIEEgZ29vZCB0ZXh0IGVkaXRvciBjYW4gaW1wb3J0IFNISUZULUpJUyBhbmQgdGhlbiBzYXZlIGFzIFVURi04LgogCiBUaGUgPGEgaHJlZj0iaHR0cDovL3NrZXcub3JnL3htbC90dXRvcmlhbC8iPlNrZXcub3JnIGxpbms8L2E+IGRvZXMgYSBncmVhdApAQCAtMTg1LDEyICsxNzUsMTIgQEAKIHN5c3RlbSwgeW91IHdvbid0IHNlZSBvdXRwdXQgdGhhdCBtYXRjaGVzIHRoZSBHSUYgZmlsZSBldmVuIGlmIHlvdSBjYW4gcGFyc2UKIGl0IGNvcnJlY3RseS4gQWxzbyBub3RlIHRoYXQgKGF0IGxlYXN0IG9uIG15IFdpbmRvd3MgbWFjaGluZSkgY29uc29sZSBvdXRwdXQKIGlzIGluIGEgV2VzdGVybiBjb2RlIHBhZ2UsIHNvIHRoYXQgUHJpbnQoKSBvciBwcmludGYoKSBjYW5ub3QgY29ycmVjdGx5IGRpc3BsYXkKLXRoZSBmaWxlLiBUaGlzIGlzIG5vdCBhIGJ1ZyBpbiBUaW55WE1MIC0ganVzdCBhbiBPUyBpc3N1ZS4gTm8gZGF0YSBpcyBsb3N0IG9yIAotZGVzdHJveWVkIGJ5IFRpbnlYTUwuIFRoZSBjb25zb2xlIGp1c3QgZG9lc24ndCByZW5kZXIgVVRGLTguCit0aGUgZmlsZS4gVGhpcyBpcyBub3QgYSBidWcgaW4gVGlueVhtbCAtIGp1c3QgYW4gT1MgaXNzdWUuIE5vIGRhdGEgaXMgbG9zdCBvciAKK2Rlc3Ryb3llZCBieSBUaW55WG1sLiBUaGUgY29uc29sZSBqdXN0IGRvZXNuJ3QgcmVuZGVyIFVURi04LgogCiAKIDxoMz4gRW50aXRpZXMgPC9oMz4KLVRpbnlYTUwgcmVjb2duaXplcyB0aGUgcHJlLWRlZmluZWQgImNoYXJhY3RlciBlbnRpdGllcyIsIG1lYW5pbmcgc3BlY2lhbAorVGlueVhtbCByZWNvZ25pemVzIHRoZSBwcmUtZGVmaW5lZCAiY2hhcmFjdGVyIGVudGl0aWVzIiwgbWVhbmluZyBzcGVjaWFsCiBjaGFyYWN0ZXJzLiBOYW1lbHk6CiAKIEB2ZXJiYXRpbQpAQCAtMjEwLDM0ICsyMDAsMTcgQEAKIAogd2lsbCBoYXZlIHRoZSBWYWx1ZSgpIG9mICJGYXIgJiBBd2F5IiB3aGVuIHF1ZXJpZWQgZnJvbSB0aGUgVGlYbWxUZXh0IG9iamVjdCwKIGFuZCB3aWxsIGJlIHdyaXR0ZW4gYmFjayB0byB0aGUgWE1MIHN0cmVhbS9maWxlIGFzIGFuIGFtcGVyc2FuZC4gT2xkZXIgdmVyc2lvbnMKLW9mIFRpbnlYTUwgInByZXNlcnZlZCIgY2hhcmFjdGVyIGVudGl0aWVzLCBidXQgdGhlIG5ld2VyIHZlcnNpb25zIHdpbGwgdHJhbnNsYXRlCitvZiBUaW55WG1sICJwcmVzZXJ2ZWQiIGNoYXJhY3RlciBlbnRpdGllcywgYnV0IHRoZSBuZXdlciB2ZXJzaW9ucyB3aWxsIHRyYW5zbGF0ZQogdGhlbSBpbnRvIGNoYXJhY3RlcnMuCiAKIEFkZGl0aW9uYWxseSwgYW55IGNoYXJhY3RlciBjYW4gYmUgc3BlY2lmaWVkIGJ5IGl0cyBVbmljb2RlIGNvZGUgcG9pbnQ6CiBUaGUgc3ludGF4ICImI3hBMDsiIG9yICImIzE2MDsiIGFyZSBib3RoIHRvIHRoZSBub24tYnJlYWtpbmcgc3BhY2UgY2hhcmFjaGVyLgogCi08aDM+IFByaW50aW5nIDwvaDM+Ci1UaW55WE1MIGNhbiBwcmludCBvdXRwdXQgaW4gc2V2ZXJhbCBkaWZmZXJlbnQgd2F5cyB0aGF0IGFsbCBoYXZlIHN0cmVuZ3RocyBhbmQgbGltaXRhdGlvbnMuCi0KLS0gUHJpbnQoIEZJTEUqICkuIE91dHB1dCB0byBhIHN0ZC1DIHN0cmVhbSwgd2hpY2ggaW5jbHVkZXMgYWxsIEMgZmlsZXMgYXMgd2VsbCBhcyBzdGRvdXQuCi0JLSAiUHJldHR5IHByaW50cyIsIGJ1dCB5b3UgZG9uJ3QgaGF2ZSBjb250cm9sIG92ZXIgcHJpbnRpbmcgb3B0aW9ucy4KLQktIFRoZSBvdXRwdXQgaXMgc3RyZWFtZWQgZGlyZWN0bHkgdG8gdGhlIEZJTEUgb2JqZWN0LCBzbyB0aGVyZSBpcyBubyBtZW1vcnkgb3ZlcmhlYWQKLQkgIGluIHRoZSBUaW55WE1MIGNvZGUuCi0JLSB1c2VkIGJ5IFByaW50KCkgYW5kIFNhdmVGaWxlKCkKLQotLSBvcGVyYXRvcjw8LiBPdXRwdXQgdG8gYSBjKysgc3RyZWFtLgotCS0gSW50ZWdyYXRlcyB3aXRoIHN0YW5kYXJ0IEMrKyBpb3N0cmVhbXMuCi0JLSBPdXRwdXRzIGluICJuZXR3b3JrIHByaW50aW5nIiBtb2RlIHdpdGhvdXQgbGluZSBicmVha3MuIEdvb2QgZm9yIG5ldHdvcmsgdHJhbnNtaXNzaW9uCi0JICBhbmQgbW92aW5nIFhNTCBiZXR3ZWVuIEMrKyBvYmplY3RzLCBidXQgaGFyZCBmb3IgYSBodW1hbiB0byByZWFkLgotCi0tIFRpWG1sUHJpbnRlci4gT3V0cHV0IHRvIGEgc3RkOjpzdHJpbmcgb3IgbWVtb3J5IGJ1ZmZlci4KLQktIEFQSSBpcyBsZXNzIGNvbmNpc2UKLQktIEZ1dHVyZSBwcmludGluZyBvcHRpb25zIHdpbGwgYmUgcHV0IGhlcmUuCi0JLSBQcmludGluZyBtYXkgY2hhbmdlIHNsaWdodGx5IGluIGZ1dHVyZSB2ZXJzaW9ucyBhcyBpdCBpcyByZWZpbmVkIGFuZCBleHBhbmRlZC4KIAogPGgzPiBTdHJlYW1zIDwvaDM+Ci1XaXRoIFRJWE1MX1VTRV9TVEwgb24gVGlueVhNTCBzdXBwb3J0cyBDKysgc3RyZWFtcyAob3BlcmF0b3IgPDwsPj4pIHN0cmVhbXMgYXMgd2VsbAotYXMgQyAoRklMRSopIHN0cmVhbXMuIFRoZXJlIGFyZSBzb21lIGRpZmZlcmVuY2VzIHRoYXQgeW91IG1heSBuZWVkIHRvIGJlIGF3YXJlIG9mLgorV2l0aCBUSVhNTF9VU0VfU1RMIG9uLAorVGlYbWwgaGFzIGJlZW4gbW9kaWZpZWQgdG8gc3VwcG9ydCBib3RoIEMgKEZJTEUpIGFuZCBDKysgKG9wZXJhdG9yIDw8LD4+KSAKK3N0cmVhbXMuIFRoZXJlIGFyZSBzb21lIGRpZmZlcmVuY2VzIHRoYXQgeW91IG1heSBuZWVkIHRvIGJlIGF3YXJlIG9mLgogCiBDIHN0eWxlIG91dHB1dDoKIAktIGJhc2VkIG9uIEZJTEUqCkBAIC0yNTQsNyArMjI3LDcgQEAKIAogCUEgZmFzdCwgdG9sZXJhbnQgcmVhZC4gVXNlIHdoZW5ldmVyIHlvdSBkb24ndCBuZWVkIHRoZSBDKysgc3RyZWFtcy4KIAotQysrIHN0eWxlIG91dHB1dDoKK0MrKyBzdHlsZSBvdXB1dDoKIAktIGJhc2VkIG9uIHN0ZDo6b3N0cmVhbQogCS0gb3BlcmF0b3I8PAogCkBAIC0yNzAsMTEgKzI0MywxMSBAQAogCiAJUmVhZHMgWE1MIGZyb20gYSBzdHJlYW0sIG1ha2luZyBpdCB1c2VmdWwgZm9yIG5ldHdvcmsgdHJhbnNtaXNzaW9uLiBUaGUgdHJpY2t5CiAJcGFydCBpcyBrbm93aW5nIHdoZW4gdGhlIFhNTCBkb2N1bWVudCBpcyBjb21wbGV0ZSwgc2luY2UgdGhlcmUgd2lsbCBhbG1vc3QKLQljZXJ0YWlubHkgYmUgb3RoZXIgZGF0YSBpbiB0aGUgc3RyZWFtLiBUaW55WE1MIHdpbGwgYXNzdW1lIHRoZSBYTUwgZGF0YSBpcworCWNlcnRhaW5seSBiZSBvdGhlciBkYXRhIGluIHRoZSBzdHJlYW0uIFRpbnlYbWwgd2lsbCBhc3N1bWUgdGhlIFhNTCBkYXRhIGlzCiAJY29tcGxldGUgYWZ0ZXIgaXQgcmVhZHMgdGhlIHJvb3QgZWxlbWVudC4gUHV0IGFub3RoZXIgd2F5LCBkb2N1bWVudHMgdGhhdAogCWFyZSBpbGwtY29uc3RydWN0ZWQgd2l0aCBtb3JlIHRoYW4gb25lIHJvb3QgZWxlbWVudCB3aWxsIG5vdCByZWFkIGNvcnJlY3RseS4KIAlBbHNvIG5vdGUgdGhhdCBvcGVyYXRvcj4+IGlzIHNvbWV3aGF0IHNsb3dlciB0aGFuIFBhcnNlLCBkdWUgdG8gYm90aCAKLQlpbXBsZW1lbnRhdGlvbiBvZiB0aGUgU1RMIGFuZCBsaW1pdGF0aW9ucyBvZiBUaW55WE1MLgorCWltcGxlbWVudGF0aW9uIG9mIHRoZSBTVEwgYW5kIGxpbWl0YXRpb25zIG9mIFRpbnlYbWwuCiAKIDxoMz4gV2hpdGUgc3BhY2UgPC9oMz4KIFRoZSB3b3JsZCBzaW1wbHkgZG9lcyBub3QgYWdyZWUgb24gd2hldGhlciB3aGl0ZSBzcGFjZSBzaG91bGQgYmUga2VwdCwgb3IgY29uZGVuc2VkLgpAQCAtMjg0LDcgKzI1Nyw3IEBACiB0byBrZWVwIHByZXRlbmRpbmcgdGhlIF8gaXMgYSBzcGFjZS4pIE90aGVycyBzdWdnZXN0IHRoYXQgX19IZWxsb19fX3dvcmxkX18gc2hvdWxkIGJlY29tZQogSGVsbG9fX193b3JsZC4KIAotSXQncyBhbiBpc3N1ZSB0aGF0IGhhc24ndCBiZWVuIHJlc29sdmVkIHRvIG15IHNhdGlzZmFjdGlvbi4gVGlueVhNTCBzdXBwb3J0cyB0aGUKK0l0J3MgYW4gaXNzdWUgdGhhdCBoYXNuJ3QgYmVlbiByZXNvbHZlZCB0byBteSBzYXRpc2ZhY3Rpb24uIFRpbnlYbWwgc3VwcG9ydHMgdGhlCiBmaXJzdCAyIGFwcHJvYWNoZXMuIENhbGwgVGlYbWxCYXNlOjpTZXRDb25kZW5zZVdoaXRlU3BhY2UoIGJvb2wgKSB0byBzZXQgdGhlIGRlc2lyZWQgYmVoYXZpb3IuCiBUaGUgZGVmYXVsdCBpcyB0byBjb25kZW5zZSB3aGl0ZSBzcGFjZS4KIApAQCAtMzIwLDcgKzI5Myw3IEBACiAKIEB2ZXJiYXRpbQogVGlYbWxIYW5kbGUgZG9jSGFuZGxlKCAmZG9jdW1lbnQgKTsKLVRpWG1sRWxlbWVudCogY2hpbGQyID0gZG9jSGFuZGxlLkZpcnN0Q2hpbGQoICJEb2N1bWVudCIgKS5GaXJzdENoaWxkKCAiRWxlbWVudCIgKS5DaGlsZCggIkNoaWxkIiwgMSApLlRvRWxlbWVudCgpOworVGlYbWxFbGVtZW50KiBjaGlsZDIgPSBkb2NIYW5kbGUuRmlyc3RDaGlsZCggIkRvY3VtZW50IiApLkZpcnN0Q2hpbGQoICJFbGVtZW50IiApLkNoaWxkKCAiQ2hpbGQiLCAxICkuRWxlbWVudCgpOwogaWYgKCBjaGlsZDIgKQogewogCS8vIGRvIHNvbWV0aGluZyB1c2VmdWwKQEAgLTMzNSw3ICszMDgsNyBAQAoga25vd2luZyB3aGVyZSBwYXJzaW5nIGVycm9ycyBvY2N1cmVkIGluIHRoZSBvcmlnaW5hbCBzb3VyY2UgY2FuIGJlIHZlcnkKIHRpbWUgc2F2aW5nLgogCi1UaW55WE1MIGNhbiB0cmFja3MgdGhlIHJvdyBhbmQgY29sdW1uIG9yaWdpbiBvZiBhbGwgbm9kZXMgYW5kIGF0dHJpYnV0ZXMKK1RpbnlYbWwgY2FuIHRyYWNrcyB0aGUgcm93IGFuZCBjb2x1bW4gb3JpZ2luIG9mIGFsbCBub2RlcyBhbmQgYXR0cmlidXRlcwogaW4gYSB0ZXh0IGZpbGUuIFRoZSBUaVhtbEJhc2U6OlJvdygpIGFuZCBUaVhtbEJhc2U6OkNvbHVtbigpIG1ldGhvZHMgcmV0dXJuCiB0aGUgb3JpZ2luIG9mIHRoZSBub2RlIGluIHRoZSBzb3VyY2UgdGV4dC4gVGhlIGNvcnJlY3QgdGFicyBjYW4gYmUgCiBjb25maWd1cmVkIGluIFRpWG1sRG9jdW1lbnQ6OlNldFRhYlNpemUoKS4KQEAgLTM1MSw5ICszMjQsOSBAQAogRE9NIGJ5IHByaW50aW5nIG91dCB0aGUgbnVtYmVyIG9mIG5vZGVzIGZvdW5kIHVzaW5nIGRpZmZlcmVudCAKIHRlY2huaXF1ZXMuCiAKLVRoZSBMaW51eCBtYWtlZmlsZSBpcyB2ZXJ5IGdlbmVyaWMgYW5kIHJ1bnMgb24gbWFueSBzeXN0ZW1zIC0gaXQgCi1pcyBjdXJyZW50bHkgdGVzdGVkIG9uIG1pbmd3IGFuZAotTWFjT1NYLiBZb3UgZG8gbm90IG5lZWQgdG8gcnVuICdtYWtlIGRlcGVuZCcuIFRoZSBkZXBlbmRlY2llcyBoYXZlIGJlZW4KK1RoZSBMaW51eCBtYWtlZmlsZSBpcyB2ZXJ5IGdlbmVyaWMgYW5kIHdpbGwKK3Byb2JhYmx5IHJ1biBvbiBvdGhlciBzeXN0ZW1zLCBidXQgaXMgb25seSB0ZXN0ZWQgb24gTGludXguIFlvdSBubworbG9uZ2VyIG5lZWQgdG8gcnVuICdtYWtlIGRlcGVuZCcuIFRoZSBkZXBlbmRlY2llcyBoYXZlIGJlZW4KIGhhcmQgY29kZWQuCiAKIDxoMz5XaW5kb3dzIHByb2plY3QgZmlsZSBmb3IgVkM2PC9oMz4KQEAgLTM2NCw3ICszMzcsNyBAQAogPGxpPnRpbnlYbWxUZXN0U1RMOiB0ZXN0IGFwcCwgU1RMIDwvbGk+CiA8L3VsPgogCi08aDM+TWFrZWZpbGU8L2gzPgorPGgzPkxpbnV4IE1ha2UgZmlsZTwvaDM+CiBBdCB0aGUgdG9wIG9mIHRoZSBtYWtlZmlsZSB5b3UgY2FuIHNldDoKIAogUFJPRklMRSwgREVCVUcsIGFuZCBUSU5ZWE1MX1VTRV9TVEwuIERldGFpbHMgKHN1Y2ggdGhhdCB0aGV5IGFyZSkgYXJlIGluCkBAIC0zODAsMTAgKzM1MywxMCBAQAogQWRkIHRpbnl4bWwuY3BwLCB0aW55eG1sLmgsIHRpbnl4bWxlcnJvci5jcHAsIHRpbnl4bWxwYXJzZXIuY3BwLCB0aW55c3RyLmNwcCwgYW5kIHRpbnlzdHIuaCB0byB5b3VyCiBwcm9qZWN0IG9yIG1ha2UgZmlsZS4gVGhhdCdzIGl0ISBJdCBzaG91bGQgY29tcGlsZSBvbiBhbnkgcmVhc29uYWJseQogY29tcGxpYW50IEMrKyBzeXN0ZW0uIFlvdSBkbyBub3QgbmVlZCB0byBlbmFibGUgZXhjZXB0aW9ucyBvcgotUlRUSSBmb3IgVGlueVhNTC4KK1JUVEkgZm9yIFRpbnlYbWwuCiAKIAotPGgyPiBIb3cgVGlueVhNTCB3b3Jrcy4gIDwvaDI+Cis8aDI+IEhvdyBUaW55WG1sIHdvcmtzLiAgPC9oMj4KIAogQW4gZXhhbXBsZSBpcyBwcm9iYWJseSB0aGUgYmVzdCB3YXkgdG8gZ28uIFRha2U6CiBAdmVyYmF0aW0KQEAgLTQxMyw4ICszODYsOCBAQAogCVRpWG1sRGVjbGFyYXRpb24gY2xhc3MuIEl0IHdpbGwgYmUgdGhlIGZpcnN0IGNoaWxkIG9mIHRoZQogCWRvY3VtZW50IG5vZGUuCiAJCi0JVGhpcyBpcyB0aGUgb25seSBkaXJlY3RpdmUvc3BlY2lhbCB0YWcgcGFyc2VkIGJ5IFRpbnlYTUwuCi0JR2VuZXJhbGx5IGRpcmVjdGl2ZSB0YWdzIGFyZSBzdG9yZWQgaW4gVGlYbWxVbmtub3duIHNvIHRoZSAKKwlUaGlzIGlzIHRoZSBvbmx5IGRpcmVjdGl2ZS9zcGVjaWFsIHRhZyBwYXJzZWQgYnkgYnkgVGlueVhtbC4KKwlHZW5lcmFsbHkgZGlyZWN0aXZlIHRhcmdzIGFyZSBzdG9yZWQgaW4gVGlYbWxVbmtub3duIHNvIHRoZSAKIAljb21tYW5kcyB3b250IGJlIGxvc3Qgd2hlbiBpdCBpcyBzYXZlZCBiYWNrIHRvIGRpc2suCiAKIEB2ZXJiYXRpbQpAQCAtNDM4LDkgKzQxMSw3IEBACiAJVGhpcyBlbGVtZW50IGhhcyAxIGF0dHJpYnV0ZSwgd2l0aCB0aGUgbmFtZSAicHJpb3JpdHkiIGFuZCB0aGUgdmFsdWUgCiAJIjEiLgogCi1AdmVyYmF0aW0KLUdvIHRvIHRoZQotQGVuZHZlcmJhdGltIAorR28gdG8gdGhlIAogCiAJQSBUaVhtbFRleHQuIFRoaXMgaXMgYSBsZWFmIG5vZGUgYW5kIGNhbm5vdCBjb250YWluIG90aGVyIG5vZGVzLiAKIAlJdCBpcyBhIGNoaWxkIG9mIHRoZSAiSXRlbSIgVGlYbWxFbGVtZW50LgpAQCAtNDU2LDE1ICs0MjcsMTUgQEAKIAogTG9va2luZyBhdCB0aGUgZW50aXJlIG9iamVjdCB0cmVlLCB5b3UgZW5kIHVwIHdpdGg6CiBAdmVyYmF0aW0KLVRpWG1sRG9jdW1lbnQJCQkJCSJkZW1vLnhtbCIKLQlUaVhtbERlY2xhcmF0aW9uCQkJInZlcnNpb249JzEuMCciICJzdGFuZGFsb25lPW5vIgotCVRpWG1sQ29tbWVudAkJCQkiIE91ciB0byBkbyBsaXN0IGRhdGEiCi0JVGlYbWxFbGVtZW50CQkJCSJUb0RvIgotCQlUaVhtbEVsZW1lbnQJCQkiSXRlbSIgQXR0cmlidHV0ZXM6IHByaW9yaXR5ID0gMQotCQkJVGlYbWxUZXh0CQkJIkdvIHRvIHRoZSAiCi0JCQlUaVhtbEVsZW1lbnQJCSJib2xkIgotCQkJCVRpWG1sVGV4dAkJIlRveSBzdG9yZSEiCi0JCVRpWG1sRWxlbWVudAkJCSJJdGVtIiBBdHRyaWJ1dGVzOiBwcmlvcml0eT0yCitUaVhtbERvY3VtZW50CQkJCSJkZW1vLnhtbCIKKwlUaVhtbERlY2xhcmF0aW9uCQkidmVyc2lvbj0nMS4wJyIgInN0YW5kYWxvbmU9bm8iCisJVGlYbWxDb21tZW50CQkJIiBPdXIgdG8gZG8gbGlzdCBkYXRhIgorCVRpWG1sRWxlbWVudAkJCSJUb0RvIgorCQlUaVhtbEVsZW1lbnQJCSJJdGVtIgkJQXR0cmlidHV0ZXM6IHByaW9yaXR5ID0gMQorCQkJVGlYbWxUZXh0CQkiR28gdG8gdGhlICIKKwkJCVRpWG1sRWxlbWVudCAgICAiYm9sZCIKKwkJCQlUaVhtbFRleHQJIlRveSBzdG9yZSEiCisJCVRpWG1sRWxlbWVudAkJCSJJdGVtIgkJQXR0cmlidXRlczogcHJpb3JpdHk9MgogCQkJVGlYbWxUZXh0CQkJIkRvIGJpbGxzIgogQGVuZHZlcmJhdGltCiAKQEAgLTQ3NSw3ICs0NDYsNyBAQAogCiA8aDI+IExpY2Vuc2UgPC9oMj4KIAotVGlueVhNTCBpcyByZWxlYXNlZCB1bmRlciB0aGUgemxpYiBsaWNlbnNlOgorVGlueVhtbCBpcyByZWxlYXNlZCB1bmRlciB0aGUgemxpYiBsaWNlbnNlOgogCiBUaGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkICdhcy1pcycsIHdpdGhvdXQgYW55IGV4cHJlc3Mgb3IgaW1wbGllZCAKIHdhcnJhbnR5LiBJbiBubyBldmVudCB3aWxsIHRoZSBhdXRob3JzIGJlIGhlbGQgbGlhYmxlIGZvciBhbnkgCkBAIC00OTksNyArNDcwLDcgQEAKIDxoMj4gUmVmZXJlbmNlcyAgPC9oMj4KIAogVGhlIFdvcmxkIFdpZGUgV2ViIENvbnNvcnRpdW0gaXMgdGhlIGRlZmluaXRpdmUgc3RhbmRhcmQgYm9keSBmb3IgCi1YTUwsIGFuZCB0aGVpciB3ZWIgcGFnZXMgY29udGFpbiBodWdlIGFtb3VudHMgb2YgaW5mb3JtYXRpb24uIAorWE1MLCBhbmQgdGhlcmUgd2ViIHBhZ2VzIGNvbnRhaW4gaHVnZSBhbW91bnRzIG9mIGluZm9ybWF0aW9uLiAKIAogVGhlIGRlZmluaXRpdmUgc3BlYzogPGEgaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvMjAwNC9SRUMteG1sLTIwMDQwMjA0LyI+CiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA0L1JFQy14bWwtMjAwNDAyMDQvPC9hPgpAQCAtNTE2LDE1ICs0ODcsMTYgQEAKIFNvIG1hbnkgcGVvcGxlIGhhdmUgc2VudCBpbiBidWdzIGFuZCBpZGVhcywgdGhhdCByYXRoZXIgdGhhbiBsaXN0IGhlcmUgCiB3ZSB0cnkgdG8gZ2l2ZSBjcmVkaXQgZHVlIGluIHRoZSAiY2hhbmdlcy50eHQiIGZpbGUuCiAKLVRpbnlYTUwgd2FzIG9yaWdpbmFsbHkgd3JpdHRlbiBieSBMZWUgVGhvbWFzb24uIChPZnRlbiB0aGUgIkkiIHN0aWxsCi1pbiB0aGUgZG9jdW1lbnRhdGlvbi4pIExlZSByZXZpZXdzIGNoYW5nZXMgYW5kIHJlbGVhc2VzIG5ldyB2ZXJzaW9ucywKLXdpdGggdGhlIGhlbHAgb2YgWXZlcyBCZXJxdWluLCBBbmRyZXcgRWxsZXJ0b24sIGFuZCB0aGUgdGlueVhtbCBjb21tdW5pdHkuCitUaW55WG1sIHdhcyBvcmlnaW5hbGx5IHdyaXR0ZW4gYmUgTGVlIFRob21hc29uLiAoT2Z0ZW4gdGhlICJJIiBzdGlsbAoraW4gdGhlIGRvY3VtZW5hdGlvbi4pIExlZSByZXZpZXdzIGNoYW5nZXMgYW5kIHJlbGVhc2VzIG5ldyB2ZXJzaW9ucywKK3dpdGggdGhlIGhlbHAgb2YgWXZlcyBCZXJxdWluIGFuZCB0aGUgdGlueVhtbCBjb21tdW5pdHkuCiAKIFdlIGFwcHJlY2lhdGUgeW91ciBzdWdnZXN0aW9ucywgYW5kIHdvdWxkIGxvdmUgdG8ga25vdyBpZiB5b3UgCi11c2UgVGlueVhNTC4gSG9wZWZ1bGx5IHlvdSB3aWxsIGVuam95IGl0IGFuZCBmaW5kIGl0IHVzZWZ1bC4gCit1c2UgVGlueVhtbC4gSG9wZWZ1bGx5IHlvdSB3aWxsIGVuam95IGl0IGFuZCBmaW5kIGl0IHVzZWZ1bC4gCiBQbGVhc2UgcG9zdCBxdWVzdGlvbnMsIGNvbW1lbnRzLCBmaWxlIGJ1Z3MsIG9yIGNvbnRhY3QgdXMgYXQ6CiAKIHd3dy5zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvdGlueXhtbAogCi1MZWUgVGhvbWFzb24sIFl2ZXMgQmVycXVpbiwgQW5kcmV3IEVsbGVydG9uCitMZWUgVGhvbWFzb24sCitZdmVzIEJlcnF1aW4KICovCmRpZmYgLS1naXQgYS90aW55WG1sVGVzdC5kc3AgYi90aW55WG1sVGVzdC5kc3AKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDcyNjJiOQotLS0gL2Rldi9udWxsCisrKyBiL3RpbnlYbWxUZXN0LmRzcApAQCAtMCwwICsxLDkyIEBACisjIE1pY3Jvc29mdCBEZXZlbG9wZXIgU3R1ZGlvIFByb2plY3QgRmlsZSAtIE5hbWU9InRpbnlYbWxUZXN0IiAtIFBhY2thZ2UgT3duZXI9PDQ+DQorIyBNaWNyb3NvZnQgRGV2ZWxvcGVyIFN0dWRpbyBHZW5lcmF0ZWQgQnVpbGQgRmlsZSwgRm9ybWF0IFZlcnNpb24gNi4wMA0KKyMgKiogRE8gTk9UIEVESVQgKioNCisNCisjIFRBUkdUWVBFICJXaW4zMiAoeDg2KSBDb25zb2xlIEFwcGxpY2F0aW9uIiAweDAxMDMNCisNCitDRkc9dGlueVhtbFRlc3QgLSBXaW4zMiBEZWJ1Zw0KKyFNRVNTQUdFIFRoaXMgaXMgbm90IGEgdmFsaWQgbWFrZWZpbGUuIFRvIGJ1aWxkIHRoaXMgcHJvamVjdCB1c2luZyBOTUFLRSwNCishTUVTU0FHRSB1c2UgdGhlIEV4cG9ydCBNYWtlZmlsZSBjb21tYW5kIGFuZCBydW4NCishTUVTU0FHRSANCishTUVTU0FHRSBOTUFLRSAvZiAidGlueVhtbFRlc3QubWFrIi4NCishTUVTU0FHRSANCishTUVTU0FHRSBZb3UgY2FuIHNwZWNpZnkgYSBjb25maWd1cmF0aW9uIHdoZW4gcnVubmluZyBOTUFLRQ0KKyFNRVNTQUdFIGJ5IGRlZmluaW5nIHRoZSBtYWNybyBDRkcgb24gdGhlIGNvbW1hbmQgbGluZS4gRm9yIGV4YW1wbGU6DQorIU1FU1NBR0UgDQorIU1FU1NBR0UgTk1BS0UgL2YgInRpbnlYbWxUZXN0Lm1hayIgQ0ZHPSJ0aW55WG1sVGVzdCAtIFdpbjMyIERlYnVnIg0KKyFNRVNTQUdFIA0KKyFNRVNTQUdFIFBvc3NpYmxlIGNob2ljZXMgZm9yIGNvbmZpZ3VyYXRpb24gYXJlOg0KKyFNRVNTQUdFIA0KKyFNRVNTQUdFICJ0aW55WG1sVGVzdCAtIFdpbjMyIFJlbGVhc2UiIChiYXNlZCBvbiAiV2luMzIgKHg4NikgQ29uc29sZSBBcHBsaWNhdGlvbiIpDQorIU1FU1NBR0UgInRpbnlYbWxUZXN0IC0gV2luMzIgRGVidWciIChiYXNlZCBvbiAiV2luMzIgKHg4NikgQ29uc29sZSBBcHBsaWNhdGlvbiIpDQorIU1FU1NBR0UgDQorDQorIyBCZWdpbiBQcm9qZWN0DQorIyBQUk9QIEFsbG93UGVyQ29uZmlnRGVwZW5kZW5jaWVzIDANCisjIFBST1AgU2NjX1Byb2pOYW1lICIiDQorIyBQUk9QIFNjY19Mb2NhbFBhdGggIiINCitDUFA9Y2wuZXhlDQorUlNDPXJjLmV4ZQ0KKw0KKyFJRiAgIiQoQ0ZHKSIgPT0gInRpbnlYbWxUZXN0IC0gV2luMzIgUmVsZWFzZSINCisNCisjIFBST1AgQkFTRSBVc2VfTUZDIDANCisjIFBST1AgQkFTRSBVc2VfRGVidWdfTGlicmFyaWVzIDANCisjIFBST1AgQkFTRSBPdXRwdXRfRGlyICJ0aW55WG1sVGVzdF9fX1dpbjMyX1JlbGVhc2UiDQorIyBQUk9QIEJBU0UgSW50ZXJtZWRpYXRlX0RpciAidGlueVhtbFRlc3RfX19XaW4zMl9SZWxlYXNlIg0KKyMgUFJPUCBCQVNFIFRhcmdldF9EaXIgIiINCisjIFBST1AgVXNlX01GQyAwDQorIyBQUk9QIFVzZV9EZWJ1Z19MaWJyYXJpZXMgMA0KKyMgUFJPUCBPdXRwdXRfRGlyICJ0aW55WG1sVGVzdF9fX1dpbjMyX1JlbGVhc2UiDQorIyBQUk9QIEludGVybWVkaWF0ZV9EaXIgInRpbnlYbWxUZXN0X19fV2luMzJfUmVsZWFzZSINCisjIFBST1AgSWdub3JlX0V4cG9ydF9MaWIgMA0KKyMgUFJPUCBUYXJnZXRfRGlyICIiDQorIyBBREQgQkFTRSBDUFAgL25vbG9nbyAvVzMgL0dYIC9PMiAvRCAiV0lOMzIiIC9EICJOREVCVUciIC9EICJfQ09OU09MRSIgL0QgIl9NQkNTIiAvWVggL0ZEIC9jDQorIyBBREQgQ1BQIC9ub2xvZ28gL1czIC9HWCAvTzIgL0QgIldJTjMyIiAvRCAiTkRFQlVHIiAvRCAiX0NPTlNPTEUiIC9EICJfTUJDUyIgL0ZSIC9GRCAvYw0KKyMgU1VCVFJBQ1QgQ1BQIC9ZWA0KKyMgQUREIEJBU0UgUlNDIC9sIDB4NDA5IC9kICJOREVCVUciDQorIyBBREQgUlNDIC9sIDB4NDA5IC9kICJOREVCVUciDQorQlNDMzI9YnNjbWFrZS5leGUNCisjIEFERCBCQVNFIEJTQzMyIC9ub2xvZ28NCisjIEFERCBCU0MzMiAvbm9sb2dvDQorTElOSzMyPWxpbmsuZXhlDQorIyBBREQgQkFTRSBMSU5LMzIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgL25vbG9nbyAvc3Vic3lzdGVtOmNvbnNvbGUgL21hY2hpbmU6STM4Ng0KKyMgQUREIExJTkszMiAuL1JlbGVhc2UvdGlueXhtbC5saWIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgL25vbG9nbyAvc3Vic3lzdGVtOmNvbnNvbGUgL21hY2hpbmU6STM4Ng0KKw0KKyFFTFNFSUYgICIkKENGRykiID09ICJ0aW55WG1sVGVzdCAtIFdpbjMyIERlYnVnIg0KKw0KKyMgUFJPUCBCQVNFIFVzZV9NRkMgMA0KKyMgUFJPUCBCQVNFIFVzZV9EZWJ1Z19MaWJyYXJpZXMgMQ0KKyMgUFJPUCBCQVNFIE91dHB1dF9EaXIgInRpbnlYbWxUZXN0X19fV2luMzJfRGVidWciDQorIyBQUk9QIEJBU0UgSW50ZXJtZWRpYXRlX0RpciAidGlueVhtbFRlc3RfX19XaW4zMl9EZWJ1ZyINCisjIFBST1AgQkFTRSBUYXJnZXRfRGlyICIiDQorIyBQUk9QIFVzZV9NRkMgMA0KKyMgUFJPUCBVc2VfRGVidWdfTGlicmFyaWVzIDENCisjIFBST1AgT3V0cHV0X0RpciAidGlueVhtbFRlc3RfX19XaW4zMl9EZWJ1ZyINCisjIFBST1AgSW50ZXJtZWRpYXRlX0RpciAidGlueVhtbFRlc3RfX19XaW4zMl9EZWJ1ZyINCisjIFBST1AgSWdub3JlX0V4cG9ydF9MaWIgMA0KKyMgUFJPUCBUYXJnZXRfRGlyICIiDQorIyBBREQgQkFTRSBDUFAgL25vbG9nbyAvVzMgL0dtIC9HWCAvWkkgL09kIC9EICJXSU4zMiIgL0QgIl9ERUJVRyIgL0QgIl9DT05TT0xFIiAvRCAiX01CQ1MiIC9ZWCAvRkQgL0daIC9jDQorIyBBREQgQ1BQIC9ub2xvZ28gL1czIC9HbSAvR1ggL1pJIC9PZCAvRCAiV0lOMzIiIC9EICJfREVCVUciIC9EICJfQ09OU09MRSIgL0QgIl9NQkNTIiAvRlIgL0ZEIC9HWiAvYw0KKyMgU1VCVFJBQ1QgQ1BQIC9ZWA0KKyMgQUREIEJBU0UgUlNDIC9sIDB4NDA5IC9kICJfREVCVUciDQorIyBBREQgUlNDIC9sIDB4NDA5IC9kICJfREVCVUciDQorQlNDMzI9YnNjbWFrZS5leGUNCisjIEFERCBCQVNFIEJTQzMyIC9ub2xvZ28NCisjIEFERCBCU0MzMiAvbm9sb2dvDQorTElOSzMyPWxpbmsuZXhlDQorIyBBREQgQkFTRSBMSU5LMzIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgL25vbG9nbyAvc3Vic3lzdGVtOmNvbnNvbGUgL2RlYnVnIC9tYWNoaW5lOkkzODYgL3BkYnR5cGU6c2VwdA0KKyMgQUREIExJTkszMiAuL0RlYnVnL3Rpbnl4bWxkLmxpYiBrZXJuZWwzMi5saWIgdXNlcjMyLmxpYiBnZGkzMi5saWIgd2luc3Bvb2wubGliIGNvbWRsZzMyLmxpYiBhZHZhcGkzMi5saWIgc2hlbGwzMi5saWIgb2xlMzIubGliIG9sZWF1dDMyLmxpYiB1dWlkLmxpYiBvZGJjMzIubGliIG9kYmNjcDMyLmxpYiAvbm9sb2dvIC9zdWJzeXN0ZW06Y29uc29sZSAvZGVidWcgL21hY2hpbmU6STM4NiAvcGRidHlwZTpzZXB0DQorDQorIUVORElGIA0KKw0KKyMgQmVnaW4gVGFyZ2V0DQorDQorIyBOYW1lICJ0aW55WG1sVGVzdCAtIFdpbjMyIFJlbGVhc2UiDQorIyBOYW1lICJ0aW55WG1sVGVzdCAtIFdpbjMyIERlYnVnIg0KKyMgQmVnaW4gU291cmNlIEZpbGUNCisNCitTT1VSQ0U9Llx4bWx0ZXN0LmNwcA0KKyMgRW5kIFNvdXJjZSBGaWxlDQorIyBFbmQgVGFyZ2V0DQorIyBFbmQgUHJvamVjdA0KZGlmZiAtLWdpdCBhL3RpbnlYbWxUZXN0LnZjeHByb2ogYi90aW55WG1sVGVzdC52Y3hwcm9qCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkYzFkNjg2Li4wMDAwMDAwCi0tLSBhL3RpbnlYbWxUZXN0LnZjeHByb2oKKysrIC9kZXYvbnVsbApAQCAtMSwxMzQgKzAsMCBAQAot77u/PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCi08UHJvamVjdCBEZWZhdWx0VGFyZ2V0cz0iQnVpbGQiIFRvb2xzVmVyc2lvbj0iNC4wIiB4bWxucz0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS9kZXZlbG9wZXIvbXNidWlsZC8yMDAzIj4NCi0gIDxJdGVtR3JvdXAgTGFiZWw9IlByb2plY3RDb25maWd1cmF0aW9ucyI+DQotICAgIDxQcm9qZWN0Q29uZmlndXJhdGlvbiBJbmNsdWRlPSJEZWJ1Z3xXaW4zMiI+DQotICAgICAgPENvbmZpZ3VyYXRpb24+RGVidWc8L0NvbmZpZ3VyYXRpb24+DQotICAgICAgPFBsYXRmb3JtPldpbjMyPC9QbGF0Zm9ybT4NCi0gICAgPC9Qcm9qZWN0Q29uZmlndXJhdGlvbj4NCi0gICAgPFByb2plY3RDb25maWd1cmF0aW9uIEluY2x1ZGU9IlJlbGVhc2V8V2luMzIiPg0KLSAgICAgIDxDb25maWd1cmF0aW9uPlJlbGVhc2U8L0NvbmZpZ3VyYXRpb24+DQotICAgICAgPFBsYXRmb3JtPldpbjMyPC9QbGF0Zm9ybT4NCi0gICAgPC9Qcm9qZWN0Q29uZmlndXJhdGlvbj4NCi0gIDwvSXRlbUdyb3VwPg0KLSAgPFByb3BlcnR5R3JvdXAgTGFiZWw9Ikdsb2JhbHMiPg0KLSAgICA8UHJvamVjdEd1aWQ+ezM0NzE5OTUwLTA5RTgtNDU3RS1CRTIzLThGMUNFM0ExRjFGNn08L1Byb2plY3RHdWlkPg0KLSAgPC9Qcm9wZXJ0eUdyb3VwPg0KLSAgPEltcG9ydCBQcm9qZWN0PSIkKFZDVGFyZ2V0c1BhdGgpXE1pY3Jvc29mdC5DcHAuRGVmYXVsdC5wcm9wcyIgLz4NCi0gIDxQcm9wZXJ0eUdyb3VwIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciIExhYmVsPSJDb25maWd1cmF0aW9uIj4NCi0gICAgPENvbmZpZ3VyYXRpb25UeXBlPkFwcGxpY2F0aW9uPC9Db25maWd1cmF0aW9uVHlwZT4NCi0gICAgPFVzZU9mTWZjPmZhbHNlPC9Vc2VPZk1mYz4NCi0gICAgPENoYXJhY3RlclNldD5NdWx0aUJ5dGU8L0NoYXJhY3RlclNldD4NCi0gIDwvUHJvcGVydHlHcm91cD4NCi0gIDxQcm9wZXJ0eUdyb3VwIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIiBMYWJlbD0iQ29uZmlndXJhdGlvbiI+DQotICAgIDxDb25maWd1cmF0aW9uVHlwZT5BcHBsaWNhdGlvbjwvQ29uZmlndXJhdGlvblR5cGU+DQotICAgIDxVc2VPZk1mYz5mYWxzZTwvVXNlT2ZNZmM+DQotICAgIDxDaGFyYWN0ZXJTZXQ+TXVsdGlCeXRlPC9DaGFyYWN0ZXJTZXQ+DQotICA8L1Byb3BlcnR5R3JvdXA+DQotICA8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClcTWljcm9zb2Z0LkNwcC5wcm9wcyIgLz4NCi0gIDxJbXBvcnRHcm91cCBMYWJlbD0iRXh0ZW5zaW9uU2V0dGluZ3MiPg0KLSAgPC9JbXBvcnRHcm91cD4NCi0gIDxJbXBvcnRHcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIiBMYWJlbD0iUHJvcGVydHlTaGVldHMiPg0KLSAgICA8SW1wb3J0IFByb2plY3Q9IiQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcyIgQ29uZGl0aW9uPSJleGlzdHMoJyQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcycpIiBMYWJlbD0iTG9jYWxBcHBEYXRhUGxhdGZvcm0iIC8+DQotICAgIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKU1pY3Jvc29mdC5DUFAuVXBncmFkZUZyb21WQzYwLnByb3BzIiAvPg0KLSAgPC9JbXBvcnRHcm91cD4NCi0gIDxJbXBvcnRHcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyIgTGFiZWw9IlByb3BlcnR5U2hlZXRzIj4NCi0gICAgPEltcG9ydCBQcm9qZWN0PSIkKFVzZXJSb290RGlyKVxNaWNyb3NvZnQuQ3BwLiQoUGxhdGZvcm0pLnVzZXIucHJvcHMiIENvbmRpdGlvbj0iZXhpc3RzKCckKFVzZXJSb290RGlyKVxNaWNyb3NvZnQuQ3BwLiQoUGxhdGZvcm0pLnVzZXIucHJvcHMnKSIgTGFiZWw9IkxvY2FsQXBwRGF0YVBsYXRmb3JtIiAvPg0KLSAgICA8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClNaWNyb3NvZnQuQ1BQLlVwZ3JhZGVGcm9tVkM2MC5wcm9wcyIgLz4NCi0gIDwvSW1wb3J0R3JvdXA+DQotICA8UHJvcGVydHlHcm91cCBMYWJlbD0iVXNlck1hY3JvcyIgLz4NCi0gIDxQcm9wZXJ0eUdyb3VwPg0KLSAgICA8X1Byb2plY3RGaWxlVmVyc2lvbj4xMC4wLjMwMzE5LjE8L19Qcm9qZWN0RmlsZVZlcnNpb24+DQotICAgIDxMaW5rSW5jcmVtZW50YWwgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPnRydWU8L0xpbmtJbmNyZW1lbnRhbD4NCi0gICAgPE91dERpciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj4kKFNvbHV0aW9uRGlyKSQoQ29uZmlndXJhdGlvbikkKFByb2plY3ROYW1lKVw8L091dERpcj4NCi0gICAgPEludERpciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj4kKFNvbHV0aW9uRGlyKSQoQ29uZmlndXJhdGlvbikkKFByb2plY3ROYW1lKVw8L0ludERpcj4NCi0gICAgPExpbmtJbmNyZW1lbnRhbCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj5mYWxzZTwvTGlua0luY3JlbWVudGFsPg0KLSAgICA8SW5jbHVkZVBhdGggQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPiQoSW5jbHVkZVBhdGgpPC9JbmNsdWRlUGF0aD4NCi0gICAgPExpYnJhcnlQYXRoIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4kKExpYnJhcnlQYXRoKTwvTGlicmFyeVBhdGg+DQotICAgIDxJbnREaXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPiQoU29sdXRpb25EaXIpJChDb25maWd1cmF0aW9uKSQoUHJvamVjdE5hbWUpXDwvSW50RGlyPg0KLSAgICA8T3V0RGlyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4kKFNvbHV0aW9uRGlyKSQoQ29uZmlndXJhdGlvbikkKFByb2plY3ROYW1lKVw8L091dERpcj4NCi0gIDwvUHJvcGVydHlHcm91cD4NCi0gIDxJdGVtRGVmaW5pdGlvbkdyb3VwIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4NCi0gICAgPE1pZGw+DQotICAgICAgPFR5cGVMaWJyYXJ5TmFtZT4uXHRpbnlYbWxUZXN0X19fV2luMzJfRGVidWcvdGlueVhtbFRlc3QudGxiPC9UeXBlTGlicmFyeU5hbWU+DQotICAgICAgPEhlYWRlckZpbGVOYW1lPg0KLSAgICAgIDwvSGVhZGVyRmlsZU5hbWU+DQotICAgIDwvTWlkbD4NCi0gICAgPENsQ29tcGlsZT4NCi0gICAgICA8T3B0aW1pemF0aW9uPkRpc2FibGVkPC9PcHRpbWl6YXRpb24+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zPldJTjMyO19ERUJVRztfQ09OU09MRTtUVU5FO19DUlRfU0VDVVJFX05PX1dBUk5JTkdTOyUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgICA8TWluaW1hbFJlYnVpbGQ+dHJ1ZTwvTWluaW1hbFJlYnVpbGQ+DQotICAgICAgPEJhc2ljUnVudGltZUNoZWNrcz5FbmFibGVGYXN0Q2hlY2tzPC9CYXNpY1J1bnRpbWVDaGVja3M+DQotICAgICAgPFJ1bnRpbWVMaWJyYXJ5Pk11bHRpVGhyZWFkZWREZWJ1ZzwvUnVudGltZUxpYnJhcnk+DQotICAgICAgPEJyb3dzZUluZm9ybWF0aW9uPnRydWU8L0Jyb3dzZUluZm9ybWF0aW9uPg0KLSAgICAgIDxXYXJuaW5nTGV2ZWw+TGV2ZWw0PC9XYXJuaW5nTGV2ZWw+DQotICAgICAgPFN1cHByZXNzU3RhcnR1cEJhbm5lcj50cnVlPC9TdXBwcmVzc1N0YXJ0dXBCYW5uZXI+DQotICAgICAgPERlYnVnSW5mb3JtYXRpb25Gb3JtYXQ+RWRpdEFuZENvbnRpbnVlPC9EZWJ1Z0luZm9ybWF0aW9uRm9ybWF0Pg0KLSAgICA8L0NsQ29tcGlsZT4NCi0gICAgPFJlc291cmNlQ29tcGlsZT4NCi0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+X0RFQlVHOyUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgICA8Q3VsdHVyZT4weDA0MDk8L0N1bHR1cmU+DQotICAgIDwvUmVzb3VyY2VDb21waWxlPg0KLSAgICA8TGluaz4NCi0gICAgICA8QWRkaXRpb25hbERlcGVuZGVuY2llcz4lKEFkZGl0aW9uYWxEZXBlbmRlbmNpZXMpPC9BZGRpdGlvbmFsRGVwZW5kZW5jaWVzPg0KLSAgICAgIDxTdXBwcmVzc1N0YXJ0dXBCYW5uZXI+dHJ1ZTwvU3VwcHJlc3NTdGFydHVwQmFubmVyPg0KLSAgICAgIDxHZW5lcmF0ZURlYnVnSW5mb3JtYXRpb24+dHJ1ZTwvR2VuZXJhdGVEZWJ1Z0luZm9ybWF0aW9uPg0KLSAgICAgIDxTdWJTeXN0ZW0+Q29uc29sZTwvU3ViU3lzdGVtPg0KLSAgICAgIDxSYW5kb21pemVkQmFzZUFkZHJlc3M+ZmFsc2U8L1JhbmRvbWl6ZWRCYXNlQWRkcmVzcz4NCi0gICAgICA8RGF0YUV4ZWN1dGlvblByZXZlbnRpb24+DQotICAgICAgPC9EYXRhRXhlY3V0aW9uUHJldmVudGlvbj4NCi0gICAgICA8VGFyZ2V0TWFjaGluZT5NYWNoaW5lWDg2PC9UYXJnZXRNYWNoaW5lPg0KLSAgICA8L0xpbms+DQotICAgIDxCc2NtYWtlPg0KLSAgICAgIDxTdXBwcmVzc1N0YXJ0dXBCYW5uZXI+dHJ1ZTwvU3VwcHJlc3NTdGFydHVwQmFubmVyPg0KLSAgICA8L0JzY21ha2U+DQotICA8L0l0ZW1EZWZpbml0aW9uR3JvdXA+DQotICA8SXRlbURlZmluaXRpb25Hcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj4NCi0gICAgPE1pZGw+DQotICAgICAgPFR5cGVMaWJyYXJ5TmFtZT4uXHRpbnlYbWxUZXN0X19fV2luMzJfUmVsZWFzZS90aW55WG1sVGVzdC50bGI8L1R5cGVMaWJyYXJ5TmFtZT4NCi0gICAgICA8SGVhZGVyRmlsZU5hbWU+DQotICAgICAgPC9IZWFkZXJGaWxlTmFtZT4NCi0gICAgPC9NaWRsPg0KLSAgICA8Q2xDb21waWxlPg0KLSAgICAgIDxPcHRpbWl6YXRpb24+TWF4U3BlZWQ8L09wdGltaXphdGlvbj4NCi0gICAgICA8SW5saW5lRnVuY3Rpb25FeHBhbnNpb24+T25seUV4cGxpY2l0SW5saW5lPC9JbmxpbmVGdW5jdGlvbkV4cGFuc2lvbj4NCi0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+V0lOMzI7TkRFQlVHO19DT05TT0xFO19DUlRfU0VDVVJFX05PX1dBUk5JTkdTOyUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgICA8U3RyaW5nUG9vbGluZz50cnVlPC9TdHJpbmdQb29saW5nPg0KLSAgICAgIDxSdW50aW1lTGlicmFyeT5NdWx0aVRocmVhZGVkPC9SdW50aW1lTGlicmFyeT4NCi0gICAgICA8RnVuY3Rpb25MZXZlbExpbmtpbmc+dHJ1ZTwvRnVuY3Rpb25MZXZlbExpbmtpbmc+DQotICAgICAgPEJyb3dzZUluZm9ybWF0aW9uPnRydWU8L0Jyb3dzZUluZm9ybWF0aW9uPg0KLSAgICAgIDxXYXJuaW5nTGV2ZWw+TGV2ZWwzPC9XYXJuaW5nTGV2ZWw+DQotICAgICAgPFN1cHByZXNzU3RhcnR1cEJhbm5lcj50cnVlPC9TdXBwcmVzc1N0YXJ0dXBCYW5uZXI+DQotICAgIDwvQ2xDb21waWxlPg0KLSAgICA8UmVzb3VyY2VDb21waWxlPg0KLSAgICAgIDxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz5OREVCVUc7JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1ByZXByb2Nlc3NvckRlZmluaXRpb25zPg0KLSAgICAgIDxDdWx0dXJlPjB4MDQwOTwvQ3VsdHVyZT4NCi0gICAgPC9SZXNvdXJjZUNvbXBpbGU+DQotICAgIDxMaW5rPg0KLSAgICAgIDxBZGRpdGlvbmFsRGVwZW5kZW5jaWVzPiUoQWRkaXRpb25hbERlcGVuZGVuY2llcyk8L0FkZGl0aW9uYWxEZXBlbmRlbmNpZXM+DQotICAgICAgPFN1cHByZXNzU3RhcnR1cEJhbm5lcj50cnVlPC9TdXBwcmVzc1N0YXJ0dXBCYW5uZXI+DQotICAgICAgPFN1YlN5c3RlbT5Db25zb2xlPC9TdWJTeXN0ZW0+DQotICAgICAgPFJhbmRvbWl6ZWRCYXNlQWRkcmVzcz5mYWxzZTwvUmFuZG9taXplZEJhc2VBZGRyZXNzPg0KLSAgICAgIDxEYXRhRXhlY3V0aW9uUHJldmVudGlvbj4NCi0gICAgICA8L0RhdGFFeGVjdXRpb25QcmV2ZW50aW9uPg0KLSAgICAgIDxUYXJnZXRNYWNoaW5lPk1hY2hpbmVYODY8L1RhcmdldE1hY2hpbmU+DQotICAgIDwvTGluaz4NCi0gICAgPEJzY21ha2U+DQotICAgICAgPFN1cHByZXNzU3RhcnR1cEJhbm5lcj50cnVlPC9TdXBwcmVzc1N0YXJ0dXBCYW5uZXI+DQotICAgIDwvQnNjbWFrZT4NCi0gIDwvSXRlbURlZmluaXRpb25Hcm91cD4NCi0gIDxJdGVtR3JvdXA+DQotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0ieG1sdGVzdC5jcHAiPg0KLSAgICAgIDxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1ByZXByb2Nlc3NvckRlZmluaXRpb25zPg0KLSAgICAgIDxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj4lKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgIDwvQ2xDb21waWxlPg0KLSAgPC9JdGVtR3JvdXA+DQotICA8SXRlbUdyb3VwPg0KLSAgICA8UHJvamVjdFJlZmVyZW5jZSBJbmNsdWRlPSJ0aW55eG1sX2xpYi52Y3hwcm9qIj4NCi0gICAgICA8UHJvamVjdD57YzQwNmRhZWMtMDg4Ni00NzcxLThkZWEtOWQ3MzI5YjQ2Y2MxfTwvUHJvamVjdD4NCi0gICAgICA8UmVmZXJlbmNlT3V0cHV0QXNzZW1ibHk+ZmFsc2U8L1JlZmVyZW5jZU91dHB1dEFzc2VtYmx5Pg0KLSAgICA8L1Byb2plY3RSZWZlcmVuY2U+DQotICA8L0l0ZW1Hcm91cD4NCi0gIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxNaWNyb3NvZnQuQ3BwLnRhcmdldHMiIC8+DQotICA8SW1wb3J0R3JvdXAgTGFiZWw9IkV4dGVuc2lvblRhcmdldHMiPg0KLSAgPC9JbXBvcnRHcm91cD4NCi08L1Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvdGlueVhtbFRlc3RTVEwuZHNwIGIvdGlueVhtbFRlc3RTVEwuZHNwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjczNDllMDYKLS0tIC9kZXYvbnVsbAorKysgYi90aW55WG1sVGVzdFNUTC5kc3AKQEAgLTAsMCArMSw5MiBAQAorIyBNaWNyb3NvZnQgRGV2ZWxvcGVyIFN0dWRpbyBQcm9qZWN0IEZpbGUgLSBOYW1lPSJ0aW55WG1sVGVzdFNUTCIgLSBQYWNrYWdlIE93bmVyPTw0Pg0KKyMgTWljcm9zb2Z0IERldmVsb3BlciBTdHVkaW8gR2VuZXJhdGVkIEJ1aWxkIEZpbGUsIEZvcm1hdCBWZXJzaW9uIDYuMDANCisjICoqIERPIE5PVCBFRElUICoqDQorDQorIyBUQVJHVFlQRSAiV2luMzIgKHg4NikgQ29uc29sZSBBcHBsaWNhdGlvbiIgMHgwMTAzDQorDQorQ0ZHPXRpbnlYbWxUZXN0U1RMIC0gV2luMzIgRGVidWcNCishTUVTU0FHRSBUaGlzIGlzIG5vdCBhIHZhbGlkIG1ha2VmaWxlLiBUbyBidWlsZCB0aGlzIHByb2plY3QgdXNpbmcgTk1BS0UsDQorIU1FU1NBR0UgdXNlIHRoZSBFeHBvcnQgTWFrZWZpbGUgY29tbWFuZCBhbmQgcnVuDQorIU1FU1NBR0UgDQorIU1FU1NBR0UgTk1BS0UgL2YgInRpbnlYbWxUZXN0U1RMLm1hayIuDQorIU1FU1NBR0UgDQorIU1FU1NBR0UgWW91IGNhbiBzcGVjaWZ5IGEgY29uZmlndXJhdGlvbiB3aGVuIHJ1bm5pbmcgTk1BS0UNCishTUVTU0FHRSBieSBkZWZpbmluZyB0aGUgbWFjcm8gQ0ZHIG9uIHRoZSBjb21tYW5kIGxpbmUuIEZvciBleGFtcGxlOg0KKyFNRVNTQUdFIA0KKyFNRVNTQUdFIE5NQUtFIC9mICJ0aW55WG1sVGVzdFNUTC5tYWsiIENGRz0idGlueVhtbFRlc3RTVEwgLSBXaW4zMiBEZWJ1ZyINCishTUVTU0FHRSANCishTUVTU0FHRSBQb3NzaWJsZSBjaG9pY2VzIGZvciBjb25maWd1cmF0aW9uIGFyZToNCishTUVTU0FHRSANCishTUVTU0FHRSAidGlueVhtbFRlc3RTVEwgLSBXaW4zMiBSZWxlYXNlIiAoYmFzZWQgb24gIldpbjMyICh4ODYpIENvbnNvbGUgQXBwbGljYXRpb24iKQ0KKyFNRVNTQUdFICJ0aW55WG1sVGVzdFNUTCAtIFdpbjMyIERlYnVnIiAoYmFzZWQgb24gIldpbjMyICh4ODYpIENvbnNvbGUgQXBwbGljYXRpb24iKQ0KKyFNRVNTQUdFIA0KKw0KKyMgQmVnaW4gUHJvamVjdA0KKyMgUFJPUCBBbGxvd1BlckNvbmZpZ0RlcGVuZGVuY2llcyAwDQorIyBQUk9QIFNjY19Qcm9qTmFtZSAiIg0KKyMgUFJPUCBTY2NfTG9jYWxQYXRoICIiDQorQ1BQPWNsLmV4ZQ0KK1JTQz1yYy5leGUNCisNCishSUYgICIkKENGRykiID09ICJ0aW55WG1sVGVzdFNUTCAtIFdpbjMyIFJlbGVhc2UiDQorDQorIyBQUk9QIEJBU0UgVXNlX01GQyAwDQorIyBQUk9QIEJBU0UgVXNlX0RlYnVnX0xpYnJhcmllcyAwDQorIyBQUk9QIEJBU0UgT3V0cHV0X0RpciAidGlueVhtbFRlc3RTVExfX19XaW4zMl9SZWxlYXNlIg0KKyMgUFJPUCBCQVNFIEludGVybWVkaWF0ZV9EaXIgInRpbnlYbWxUZXN0U1RMX19fV2luMzJfUmVsZWFzZSINCisjIFBST1AgQkFTRSBUYXJnZXRfRGlyICIiDQorIyBQUk9QIFVzZV9NRkMgMA0KKyMgUFJPUCBVc2VfRGVidWdfTGlicmFyaWVzIDANCisjIFBST1AgT3V0cHV0X0RpciAidGlueVhtbFRlc3RTVExfX19XaW4zMl9SZWxlYXNlIg0KKyMgUFJPUCBJbnRlcm1lZGlhdGVfRGlyICJ0aW55WG1sVGVzdFNUTF9fX1dpbjMyX1JlbGVhc2UiDQorIyBQUk9QIElnbm9yZV9FeHBvcnRfTGliIDANCisjIFBST1AgVGFyZ2V0X0RpciAiIg0KKyMgQUREIEJBU0UgQ1BQIC9ub2xvZ28gL1czIC9HWCAvTzIgL0QgIldJTjMyIiAvRCAiTkRFQlVHIiAvRCAiX0NPTlNPTEUiIC9EICJfTUJDUyIgL1lYIC9GRCAvYw0KKyMgQUREIENQUCAvbm9sb2dvIC9XMyAvR1ggL08yIC9EICJXSU4zMiIgL0QgIk5ERUJVRyIgL0QgIl9DT05TT0xFIiAvRCAiX01CQ1MiIC9EICJUSVhNTF9VU0VfU1RMIiAvRkQgL2MNCisjIFNVQlRSQUNUIENQUCAvWVgNCisjIEFERCBCQVNFIFJTQyAvbCAweDQwOSAvZCAiTkRFQlVHIg0KKyMgQUREIFJTQyAvbCAweDQwOSAvZCAiTkRFQlVHIg0KK0JTQzMyPWJzY21ha2UuZXhlDQorIyBBREQgQkFTRSBCU0MzMiAvbm9sb2dvDQorIyBBREQgQlNDMzIgL25vbG9nbw0KK0xJTkszMj1saW5rLmV4ZQ0KKyMgQUREIEJBU0UgTElOSzMyIGtlcm5lbDMyLmxpYiB1c2VyMzIubGliIGdkaTMyLmxpYiB3aW5zcG9vbC5saWIgY29tZGxnMzIubGliIGFkdmFwaTMyLmxpYiBzaGVsbDMyLmxpYiBvbGUzMi5saWIgb2xlYXV0MzIubGliIHV1aWQubGliIG9kYmMzMi5saWIgb2RiY2NwMzIubGliIGtlcm5lbDMyLmxpYiB1c2VyMzIubGliIGdkaTMyLmxpYiB3aW5zcG9vbC5saWIgY29tZGxnMzIubGliIGFkdmFwaTMyLmxpYiBzaGVsbDMyLmxpYiBvbGUzMi5saWIgb2xlYXV0MzIubGliIHV1aWQubGliIG9kYmMzMi5saWIgb2RiY2NwMzIubGliIC9ub2xvZ28gL3N1YnN5c3RlbTpjb25zb2xlIC9tYWNoaW5lOkkzODYNCisjIEFERCBMSU5LMzIgLi9SZWxlYXNlX1NUTC90aW55eG1sX3N0bC5saWIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIga2VybmVsMzIubGliIHVzZXIzMi5saWIgZ2RpMzIubGliIHdpbnNwb29sLmxpYiBjb21kbGczMi5saWIgYWR2YXBpMzIubGliIHNoZWxsMzIubGliIG9sZTMyLmxpYiBvbGVhdXQzMi5saWIgdXVpZC5saWIgb2RiYzMyLmxpYiBvZGJjY3AzMi5saWIgL25vbG9nbyAvc3Vic3lzdGVtOmNvbnNvbGUgL21hY2hpbmU6STM4Ng0KKw0KKyFFTFNFSUYgICIkKENGRykiID09ICJ0aW55WG1sVGVzdFNUTCAtIFdpbjMyIERlYnVnIg0KKw0KKyMgUFJPUCBCQVNFIFVzZV9NRkMgMA0KKyMgUFJPUCBCQVNFIFVzZV9EZWJ1Z19MaWJyYXJpZXMgMQ0KKyMgUFJPUCBCQVNFIE91dHB1dF9EaXIgInRpbnlYbWxUZXN0U1RMX19fV2luMzJfRGVidWciDQorIyBQUk9QIEJBU0UgSW50ZXJtZWRpYXRlX0RpciAidGlueVhtbFRlc3RTVExfX19XaW4zMl9EZWJ1ZyINCisjIFBST1AgQkFTRSBUYXJnZXRfRGlyICIiDQorIyBQUk9QIFVzZV9NRkMgMA0KKyMgUFJPUCBVc2VfRGVidWdfTGlicmFyaWVzIDENCisjIFBST1AgT3V0cHV0X0RpciAidGlueVhtbFRlc3RTVExfX19XaW4zMl9EZWJ1ZyINCisjIFBST1AgSW50ZXJtZWRpYXRlX0RpciAidGlueVhtbFRlc3RTVExfX19XaW4zMl9EZWJ1ZyINCisjIFBST1AgSWdub3JlX0V4cG9ydF9MaWIgMA0KKyMgUFJPUCBUYXJnZXRfRGlyICIiDQorIyBBREQgQkFTRSBDUFAgL25vbG9nbyAvVzMgL0dtIC9HWCAvWkkgL09kIC9EICJXSU4zMiIgL0QgIl9ERUJVRyIgL0QgIl9DT05TT0xFIiAvRCAiX01CQ1MiIC9ZWCAvRkQgL0daIC9jDQorIyBBREQgQ1BQIC9ub2xvZ28gL1czIC9HbSAvR1ggL1pJIC9PZCAvRCAiV0lOMzIiIC9EICJfREVCVUciIC9EICJfQ09OU09MRSIgL0QgIl9NQkNTIiAvRCAiVElYTUxfVVNFX1NUTCIgL0ZSIC9GRCAvR1ogL2MNCisjIFNVQlRSQUNUIENQUCAvWVgNCisjIEFERCBCQVNFIFJTQyAvbCAweDQwOSAvZCAiX0RFQlVHIg0KKyMgQUREIFJTQyAvbCAweDQwOSAvZCAiX0RFQlVHIg0KK0JTQzMyPWJzY21ha2UuZXhlDQorIyBBREQgQkFTRSBCU0MzMiAvbm9sb2dvDQorIyBBREQgQlNDMzIgL25vbG9nbw0KK0xJTkszMj1saW5rLmV4ZQ0KKyMgQUREIEJBU0UgTElOSzMyIGtlcm5lbDMyLmxpYiB1c2VyMzIubGliIGdkaTMyLmxpYiB3aW5zcG9vbC5saWIgY29tZGxnMzIubGliIGFkdmFwaTMyLmxpYiBzaGVsbDMyLmxpYiBvbGUzMi5saWIgb2xlYXV0MzIubGliIHV1aWQubGliIG9kYmMzMi5saWIgb2RiY2NwMzIubGliIGtlcm5lbDMyLmxpYiB1c2VyMzIubGliIGdkaTMyLmxpYiB3aW5zcG9vbC5saWIgY29tZGxnMzIubGliIGFkdmFwaTMyLmxpYiBzaGVsbDMyLmxpYiBvbGUzMi5saWIgb2xlYXV0MzIubGliIHV1aWQubGliIG9kYmMzMi5saWIgb2RiY2NwMzIubGliIC9ub2xvZ28gL3N1YnN5c3RlbTpjb25zb2xlIC9kZWJ1ZyAvbWFjaGluZTpJMzg2IC9wZGJ0eXBlOnNlcHQNCisjIEFERCBMSU5LMzIgLi9EZWJ1Z19TVEwvdGlueXhtbGRfc3RsLmxpYiBrZXJuZWwzMi5saWIgdXNlcjMyLmxpYiBnZGkzMi5saWIgd2luc3Bvb2wubGliIGNvbWRsZzMyLmxpYiBhZHZhcGkzMi5saWIgc2hlbGwzMi5saWIgb2xlMzIubGliIG9sZWF1dDMyLmxpYiB1dWlkLmxpYiBvZGJjMzIubGliIG9kYmNjcDMyLmxpYiBrZXJuZWwzMi5saWIgdXNlcjMyLmxpYiBnZGkzMi5saWIgd2luc3Bvb2wubGliIGNvbWRsZzMyLmxpYiBhZHZhcGkzMi5saWIgc2hlbGwzMi5saWIgb2xlMzIubGliIG9sZWF1dDMyLmxpYiB1dWlkLmxpYiBvZGJjMzIubGliIG9kYmNjcDMyLmxpYiAvbm9sb2dvIC9zdWJzeXN0ZW06Y29uc29sZSAvaW5jcmVtZW50YWw6bm8gL2RlYnVnIC9tYWNoaW5lOkkzODYgL3BkYnR5cGU6c2VwdA0KKw0KKyFFTkRJRiANCisNCisjIEJlZ2luIFRhcmdldA0KKw0KKyMgTmFtZSAidGlueVhtbFRlc3RTVEwgLSBXaW4zMiBSZWxlYXNlIg0KKyMgTmFtZSAidGlueVhtbFRlc3RTVEwgLSBXaW4zMiBEZWJ1ZyINCisjIEJlZ2luIFNvdXJjZSBGaWxlDQorDQorU09VUkNFPS5ceG1sdGVzdC5jcHANCisjIEVuZCBTb3VyY2UgRmlsZQ0KKyMgRW5kIFRhcmdldA0KKyMgRW5kIFByb2plY3QNCmRpZmYgLS1naXQgYS90aW55WG1sVGVzdFNUTC52Y3hwcm9qIGIvdGlueVhtbFRlc3RTVEwudmN4cHJvagpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMGVjYzNmZS4uMDAwMDAwMAotLS0gYS90aW55WG1sVGVzdFNUTC52Y3hwcm9qCisrKyAvZGV2L251bGwKQEAgLTEsMTM1ICswLDAgQEAKLe+7vzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04Ij8+DQotPFByb2plY3QgRGVmYXVsdFRhcmdldHM9IkJ1aWxkIiBUb29sc1ZlcnNpb249IjQuMCIgeG1sbnM9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vZGV2ZWxvcGVyL21zYnVpbGQvMjAwMyI+DQotICA8SXRlbUdyb3VwIExhYmVsPSJQcm9qZWN0Q29uZmlndXJhdGlvbnMiPg0KLSAgICA8UHJvamVjdENvbmZpZ3VyYXRpb24gSW5jbHVkZT0iRGVidWd8V2luMzIiPg0KLSAgICAgIDxDb25maWd1cmF0aW9uPkRlYnVnPC9Db25maWd1cmF0aW9uPg0KLSAgICAgIDxQbGF0Zm9ybT5XaW4zMjwvUGxhdGZvcm0+DQotICAgIDwvUHJvamVjdENvbmZpZ3VyYXRpb24+DQotICAgIDxQcm9qZWN0Q29uZmlndXJhdGlvbiBJbmNsdWRlPSJSZWxlYXNlfFdpbjMyIj4NCi0gICAgICA8Q29uZmlndXJhdGlvbj5SZWxlYXNlPC9Db25maWd1cmF0aW9uPg0KLSAgICAgIDxQbGF0Zm9ybT5XaW4zMjwvUGxhdGZvcm0+DQotICAgIDwvUHJvamVjdENvbmZpZ3VyYXRpb24+DQotICA8L0l0ZW1Hcm91cD4NCi0gIDxQcm9wZXJ0eUdyb3VwIExhYmVsPSJHbG9iYWxzIj4NCi0gICAgPFByb2plY3RHdWlkPns1M0VENTk2NS01QkNBLTQ3QjUtOUVCMC1FREQyMDg4MkYyMkZ9PC9Qcm9qZWN0R3VpZD4NCi0gIDwvUHJvcGVydHlHcm91cD4NCi0gIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxNaWNyb3NvZnQuQ3BwLkRlZmF1bHQucHJvcHMiIC8+DQotICA8UHJvcGVydHlHcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIiBMYWJlbD0iQ29uZmlndXJhdGlvbiI+DQotICAgIDxDb25maWd1cmF0aW9uVHlwZT5BcHBsaWNhdGlvbjwvQ29uZmlndXJhdGlvblR5cGU+DQotICAgIDxVc2VPZk1mYz5mYWxzZTwvVXNlT2ZNZmM+DQotICAgIDxDaGFyYWN0ZXJTZXQ+TXVsdGlCeXRlPC9DaGFyYWN0ZXJTZXQ+DQotICA8L1Byb3BlcnR5R3JvdXA+DQotICA8UHJvcGVydHlHcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyIgTGFiZWw9IkNvbmZpZ3VyYXRpb24iPg0KLSAgICA8Q29uZmlndXJhdGlvblR5cGU+QXBwbGljYXRpb248L0NvbmZpZ3VyYXRpb25UeXBlPg0KLSAgICA8VXNlT2ZNZmM+ZmFsc2U8L1VzZU9mTWZjPg0KLSAgICA8Q2hhcmFjdGVyU2V0Pk11bHRpQnl0ZTwvQ2hhcmFjdGVyU2V0Pg0KLSAgPC9Qcm9wZXJ0eUdyb3VwPg0KLSAgPEltcG9ydCBQcm9qZWN0PSIkKFZDVGFyZ2V0c1BhdGgpXE1pY3Jvc29mdC5DcHAucHJvcHMiIC8+DQotICA8SW1wb3J0R3JvdXAgTGFiZWw9IkV4dGVuc2lvblNldHRpbmdzIj4NCi0gIDwvSW1wb3J0R3JvdXA+DQotICA8SW1wb3J0R3JvdXAgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyIgTGFiZWw9IlByb3BlcnR5U2hlZXRzIj4NCi0gICAgPEltcG9ydCBQcm9qZWN0PSIkKFVzZXJSb290RGlyKVxNaWNyb3NvZnQuQ3BwLiQoUGxhdGZvcm0pLnVzZXIucHJvcHMiIENvbmRpdGlvbj0iZXhpc3RzKCckKFVzZXJSb290RGlyKVxNaWNyb3NvZnQuQ3BwLiQoUGxhdGZvcm0pLnVzZXIucHJvcHMnKSIgTGFiZWw9IkxvY2FsQXBwRGF0YVBsYXRmb3JtIiAvPg0KLSAgICA8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClNaWNyb3NvZnQuQ1BQLlVwZ3JhZGVGcm9tVkM2MC5wcm9wcyIgLz4NCi0gIDwvSW1wb3J0R3JvdXA+DQotICA8SW1wb3J0R3JvdXAgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciIExhYmVsPSJQcm9wZXJ0eVNoZWV0cyI+DQotICAgIDxJbXBvcnQgUHJvamVjdD0iJChVc2VyUm9vdERpcilcTWljcm9zb2Z0LkNwcC4kKFBsYXRmb3JtKS51c2VyLnByb3BzIiBDb25kaXRpb249ImV4aXN0cygnJChVc2VyUm9vdERpcilcTWljcm9zb2Z0LkNwcC4kKFBsYXRmb3JtKS51c2VyLnByb3BzJykiIExhYmVsPSJMb2NhbEFwcERhdGFQbGF0Zm9ybSIgLz4NCi0gICAgPEltcG9ydCBQcm9qZWN0PSIkKFZDVGFyZ2V0c1BhdGgpTWljcm9zb2Z0LkNQUC5VcGdyYWRlRnJvbVZDNjAucHJvcHMiIC8+DQotICA8L0ltcG9ydEdyb3VwPg0KLSAgPFByb3BlcnR5R3JvdXAgTGFiZWw9IlVzZXJNYWNyb3MiIC8+DQotICA8UHJvcGVydHlHcm91cD4NCi0gICAgPF9Qcm9qZWN0RmlsZVZlcnNpb24+MTAuMC4zMDMxOS4xPC9fUHJvamVjdEZpbGVWZXJzaW9uPg0KLSAgICA8TGlua0luY3JlbWVudGFsIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj5mYWxzZTwvTGlua0luY3JlbWVudGFsPg0KLSAgICA8TGlua0luY3JlbWVudGFsIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPmZhbHNlPC9MaW5rSW5jcmVtZW50YWw+DQotICAgIDxJbmNsdWRlUGF0aCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+JChJbmNsdWRlUGF0aCk8L0luY2x1ZGVQYXRoPg0KLSAgICA8TGlicmFyeVBhdGggQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPiQoTGlicmFyeVBhdGgpPC9MaWJyYXJ5UGF0aD4NCi0gICAgPEluY2x1ZGVQYXRoIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPiQoSW5jbHVkZVBhdGgpPC9JbmNsdWRlUGF0aD4NCi0gICAgPExpYnJhcnlQYXRoIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPiQoTGlicmFyeVBhdGgpPC9MaWJyYXJ5UGF0aD4NCi0gICAgPEludERpciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+JChTb2x1dGlvbkRpcikkKENvbmZpZ3VyYXRpb24pJChQcm9qZWN0TmFtZSlcPC9JbnREaXI+DQotICAgIDxPdXREaXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPiQoU29sdXRpb25EaXIpJChDb25maWd1cmF0aW9uKSQoUHJvamVjdE5hbWUpXDwvT3V0RGlyPg0KLSAgICA8T3V0RGlyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPiQoU29sdXRpb25EaXIpJChDb25maWd1cmF0aW9uKSQoUHJvamVjdE5hbWUpXDwvT3V0RGlyPg0KLSAgICA8SW50RGlyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPiQoU29sdXRpb25EaXIpJChDb25maWd1cmF0aW9uKSQoUHJvamVjdE5hbWUpXDwvSW50RGlyPg0KLSAgPC9Qcm9wZXJ0eUdyb3VwPg0KLSAgPEl0ZW1EZWZpbml0aW9uR3JvdXAgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPg0KLSAgICA8TWlkbD4NCi0gICAgICA8VHlwZUxpYnJhcnlOYW1lPi5cdGlueVhtbFRlc3RTVExfX19XaW4zMl9EZWJ1Zy90aW55WG1sVGVzdFNUTC50bGI8L1R5cGVMaWJyYXJ5TmFtZT4NCi0gICAgICA8SGVhZGVyRmlsZU5hbWU+DQotICAgICAgPC9IZWFkZXJGaWxlTmFtZT4NCi0gICAgPC9NaWRsPg0KLSAgICA8Q2xDb21waWxlPg0KLSAgICAgIDxPcHRpbWl6YXRpb24+RGlzYWJsZWQ8L09wdGltaXphdGlvbj4NCi0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+V0lOMzI7X0RFQlVHO19DT05TT0xFO1RJWE1MX1VTRV9TVEw7VFVORTtfQ1JUX1NFQ1VSRV9OT19XQVJOSU5HUzslKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgICAgPE1pbmltYWxSZWJ1aWxkPnRydWU8L01pbmltYWxSZWJ1aWxkPg0KLSAgICAgIDxCYXNpY1J1bnRpbWVDaGVja3M+RW5hYmxlRmFzdENoZWNrczwvQmFzaWNSdW50aW1lQ2hlY2tzPg0KLSAgICAgIDxSdW50aW1lTGlicmFyeT5NdWx0aVRocmVhZGVkRGVidWc8L1J1bnRpbWVMaWJyYXJ5Pg0KLSAgICAgIDxCcm93c2VJbmZvcm1hdGlvbj50cnVlPC9Ccm93c2VJbmZvcm1hdGlvbj4NCi0gICAgICA8V2FybmluZ0xldmVsPkxldmVsNDwvV2FybmluZ0xldmVsPg0KLSAgICAgIDxTdXBwcmVzc1N0YXJ0dXBCYW5uZXI+dHJ1ZTwvU3VwcHJlc3NTdGFydHVwQmFubmVyPg0KLSAgICAgIDxEZWJ1Z0luZm9ybWF0aW9uRm9ybWF0PkVkaXRBbmRDb250aW51ZTwvRGVidWdJbmZvcm1hdGlvbkZvcm1hdD4NCi0gICAgPC9DbENvbXBpbGU+DQotICAgIDxSZXNvdXJjZUNvbXBpbGU+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zPl9ERUJVRzslKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgICAgPEN1bHR1cmU+MHgwNDA5PC9DdWx0dXJlPg0KLSAgICA8L1Jlc291cmNlQ29tcGlsZT4NCi0gICAgPExpbms+DQotICAgICAgPEFkZGl0aW9uYWxEZXBlbmRlbmNpZXM+JShBZGRpdGlvbmFsRGVwZW5kZW5jaWVzKTwvQWRkaXRpb25hbERlcGVuZGVuY2llcz4NCi0gICAgICA8U3VwcHJlc3NTdGFydHVwQmFubmVyPnRydWU8L1N1cHByZXNzU3RhcnR1cEJhbm5lcj4NCi0gICAgICA8R2VuZXJhdGVEZWJ1Z0luZm9ybWF0aW9uPnRydWU8L0dlbmVyYXRlRGVidWdJbmZvcm1hdGlvbj4NCi0gICAgICA8U3ViU3lzdGVtPkNvbnNvbGU8L1N1YlN5c3RlbT4NCi0gICAgICA8UmFuZG9taXplZEJhc2VBZGRyZXNzPmZhbHNlPC9SYW5kb21pemVkQmFzZUFkZHJlc3M+DQotICAgICAgPERhdGFFeGVjdXRpb25QcmV2ZW50aW9uPg0KLSAgICAgIDwvRGF0YUV4ZWN1dGlvblByZXZlbnRpb24+DQotICAgICAgPFRhcmdldE1hY2hpbmU+TWFjaGluZVg4NjwvVGFyZ2V0TWFjaGluZT4NCi0gICAgPC9MaW5rPg0KLSAgICA8QnNjbWFrZT4NCi0gICAgICA8U3VwcHJlc3NTdGFydHVwQmFubmVyPnRydWU8L1N1cHByZXNzU3RhcnR1cEJhbm5lcj4NCi0gICAgPC9Cc2NtYWtlPg0KLSAgPC9JdGVtRGVmaW5pdGlvbkdyb3VwPg0KLSAgPEl0ZW1EZWZpbml0aW9uR3JvdXAgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+DQotICAgIDxNaWRsPg0KLSAgICAgIDxUeXBlTGlicmFyeU5hbWU+Llx0aW55WG1sVGVzdFNUTF9fX1dpbjMyX1JlbGVhc2UvdGlueVhtbFRlc3RTVEwudGxiPC9UeXBlTGlicmFyeU5hbWU+DQotICAgICAgPEhlYWRlckZpbGVOYW1lPg0KLSAgICAgIDwvSGVhZGVyRmlsZU5hbWU+DQotICAgIDwvTWlkbD4NCi0gICAgPENsQ29tcGlsZT4NCi0gICAgICA8T3B0aW1pemF0aW9uPk1heFNwZWVkPC9PcHRpbWl6YXRpb24+DQotICAgICAgPElubGluZUZ1bmN0aW9uRXhwYW5zaW9uPk9ubHlFeHBsaWNpdElubGluZTwvSW5saW5lRnVuY3Rpb25FeHBhbnNpb24+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zPldJTjMyO05ERUJVRztfQ09OU09MRTtUSVhNTF9VU0VfU1RMO19DUlRfU0VDVVJFX05PX1dBUk5JTkdTOyUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgICA8U3RyaW5nUG9vbGluZz50cnVlPC9TdHJpbmdQb29saW5nPg0KLSAgICAgIDxSdW50aW1lTGlicmFyeT5NdWx0aVRocmVhZGVkPC9SdW50aW1lTGlicmFyeT4NCi0gICAgICA8RnVuY3Rpb25MZXZlbExpbmtpbmc+dHJ1ZTwvRnVuY3Rpb25MZXZlbExpbmtpbmc+DQotICAgICAgPFdhcm5pbmdMZXZlbD5MZXZlbDM8L1dhcm5pbmdMZXZlbD4NCi0gICAgICA8U3VwcHJlc3NTdGFydHVwQmFubmVyPnRydWU8L1N1cHByZXNzU3RhcnR1cEJhbm5lcj4NCi0gICAgPC9DbENvbXBpbGU+DQotICAgIDxSZXNvdXJjZUNvbXBpbGU+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zPk5ERUJVRzslKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgICAgPEN1bHR1cmU+MHgwNDA5PC9DdWx0dXJlPg0KLSAgICA8L1Jlc291cmNlQ29tcGlsZT4NCi0gICAgPExpbms+DQotICAgICAgPEFkZGl0aW9uYWxEZXBlbmRlbmNpZXM+JShBZGRpdGlvbmFsRGVwZW5kZW5jaWVzKTwvQWRkaXRpb25hbERlcGVuZGVuY2llcz4NCi0gICAgICA8U3VwcHJlc3NTdGFydHVwQmFubmVyPnRydWU8L1N1cHByZXNzU3RhcnR1cEJhbm5lcj4NCi0gICAgICA8U3ViU3lzdGVtPkNvbnNvbGU8L1N1YlN5c3RlbT4NCi0gICAgICA8UmFuZG9taXplZEJhc2VBZGRyZXNzPmZhbHNlPC9SYW5kb21pemVkQmFzZUFkZHJlc3M+DQotICAgICAgPERhdGFFeGVjdXRpb25QcmV2ZW50aW9uPg0KLSAgICAgIDwvRGF0YUV4ZWN1dGlvblByZXZlbnRpb24+DQotICAgICAgPFRhcmdldE1hY2hpbmU+TWFjaGluZVg4NjwvVGFyZ2V0TWFjaGluZT4NCi0gICAgPC9MaW5rPg0KLSAgICA8QnNjbWFrZT4NCi0gICAgICA8U3VwcHJlc3NTdGFydHVwQmFubmVyPnRydWU8L1N1cHByZXNzU3RhcnR1cEJhbm5lcj4NCi0gICAgPC9Cc2NtYWtlPg0KLSAgPC9JdGVtRGVmaW5pdGlvbkdyb3VwPg0KLSAgPEl0ZW1Hcm91cD4NCi0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSJ4bWx0ZXN0LmNwcCI+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4lKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPiUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgPC9DbENvbXBpbGU+DQotICA8L0l0ZW1Hcm91cD4NCi0gIDxJdGVtR3JvdXA+DQotICAgIDxQcm9qZWN0UmVmZXJlbmNlIEluY2x1ZGU9InRpbnl4bWxTVEwudmN4cHJvaiI+DQotICAgICAgPFByb2plY3Q+e2EzYTg0NzM3LTUwMTctNDU3Ny1iOGEyLTc5NDI5YTI1YjhiNn08L1Byb2plY3Q+DQotICAgICAgPFJlZmVyZW5jZU91dHB1dEFzc2VtYmx5PmZhbHNlPC9SZWZlcmVuY2VPdXRwdXRBc3NlbWJseT4NCi0gICAgPC9Qcm9qZWN0UmVmZXJlbmNlPg0KLSAgPC9JdGVtR3JvdXA+DQotICA8SW1wb3J0IFByb2plY3Q9IiQoVkNUYXJnZXRzUGF0aClcTWljcm9zb2Z0LkNwcC50YXJnZXRzIiAvPg0KLSAgPEltcG9ydEdyb3VwIExhYmVsPSJFeHRlbnNpb25UYXJnZXRzIj4NCi0gIDwvSW1wb3J0R3JvdXA+DQotPC9Qcm9qZWN0PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3RpbnlzdHIuY3BwIGIvdGlueXN0ci5jcHAKaW5kZXggMDY2NTc2OC4uNDEyNTI0MiAxMDA2NDQKLS0tIGEvdGlueXN0ci5jcHAKKysrIGIvdGlueXN0ci5jcHAKQEAgLTEsNSArMSw2IEBACiAvKgogd3d3LnNvdXJjZWZvcmdlLm5ldC9wcm9qZWN0cy90aW55eG1sCitPcmlnaW5hbCBmaWxlIGJ5IFl2ZXMgQmVycXVpbi4KIAogVGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCAnYXMtaXMnLCB3aXRob3V0IGFueSBleHByZXNzIG9yIGltcGxpZWQKIHdhcnJhbnR5LiBJbiBubyBldmVudCB3aWxsIHRoZSBhdXRob3JzIGJlIGhlbGQgbGlhYmxlIGZvciBhbnkKQEAgLTIxLDE3ICsyMiwyMCBAQAogZGlzdHJpYnV0aW9uLgogKi8KIAorLyoKKyAqIFRISVMgRklMRSBXQVMgQUxURVJFRCBCWSBUeWdlIEz4dnNldCwgNy4gQXByaWwgMjAwNS4KKyAqLworCiAKICNpZm5kZWYgVElYTUxfVVNFX1NUTAogCiAjaW5jbHVkZSAidGlueXN0ci5oIgogCiAvLyBFcnJvciB2YWx1ZSBmb3IgZmluZCBwcmltaXRpdmUKLWNvbnN0IFRpWG1sU3RyaW5nOjpzaXplX3R5cGUgVGlYbWxTdHJpbmc6Om5wb3MgPSBzdGF0aWNfY2FzdDwgVGlYbWxTdHJpbmc6OnNpemVfdHlwZSA+KC0xKTsKLQorY29uc3QgVGlYbWxTdHJpbmc6OnNpemVfdHlwZSBUaVhtbFN0cmluZzo6bnBvcyA9IHN0YXRpY19jYXN0PCBzaXplX3R5cGUgPigtMSk7CiAKIC8vIE51bGwgcmVwLgotVGlYbWxTdHJpbmc6OlJlcCBUaVhtbFN0cmluZzo6bnVsbHJlcF8gPSB7IDAsIDAsIHsgJ1wwJyB9IH07CitUaVhtbFN0cmluZzo6UmVwIFRpWG1sU3RyaW5nOjpudWxscmVwXyA9IHsgMCwgMCwgJ1wwJyB9OwogCiAKIHZvaWQgVGlYbWxTdHJpbmc6OnJlc2VydmUgKHNpemVfdHlwZSBjYXApCmRpZmYgLS1naXQgYS90aW55c3RyLmggYi90aW55c3RyLmgKaW5kZXggODljY2EzMy4uYWVkZDJmOSAxMDA2NDQKLS0tIGEvdGlueXN0ci5oCisrKyBiL3RpbnlzdHIuaApAQCAtMSw1ICsxLDYgQEAKIC8qCiB3d3cuc291cmNlZm9yZ2UubmV0L3Byb2plY3RzL3Rpbnl4bWwKK09yaWdpbmFsIGZpbGUgYnkgWXZlcyBCZXJxdWluLgogCiBUaGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkICdhcy1pcycsIHdpdGhvdXQgYW55IGV4cHJlc3Mgb3IgaW1wbGllZAogd2FycmFudHkuIEluIG5vIGV2ZW50IHdpbGwgdGhlIGF1dGhvcnMgYmUgaGVsZCBsaWFibGUgZm9yIGFueQpAQCAtMjEsNiArMjIsMTcgQEAKIGRpc3RyaWJ1dGlvbi4KICovCiAKKy8qCisgKiBUSElTIEZJTEUgV0FTIEFMVEVSRUQgQlkgVHlnZSBMb3ZzZXQsIDcuIEFwcmlsIDIwMDUuCisgKgorICogLSBjb21wbGV0ZWx5IHJld3JpdHRlbi4gY29tcGFjdCwgY2xlYW4sIGFuZCBmYXN0IGltcGxlbWVudGF0aW9uLgorICogLSBzaXplb2YoVGlYbWxTdHJpbmcpID0gcG9pbnRlciBzaXplICg0IGJ5dGVzIG9uIDMyLWJpdCBzeXN0ZW1zKQorICogLSBmaXhlZCByZXNlcnZlKCkgdG8gd29yayBhcyBwZXIgc3BlY2lmaWNhdGlvbi4KKyAqIC0gZml4ZWQgYnVnZ3kgY29tcGFyZXMgb3BlcmF0b3I9PSgpLCBvcGVyYXRvcjwoKSwgYW5kIG9wZXJhdG9yPigpCisgKiAtIGZpeGVkIG9wZXJhdG9yKz0oKSB0byB0YWtlIGEgY29uc3QgcmVmIGFyZ3VtZW50LCBmb2xsb3dpbmcgc3BlYy4KKyAqIC0gYWRkZWQgImNvcHkiIGNvbnN0cnVjdG9yIHdpdGggbGVuZ3RoLCBhbmQgbW9zdCBjb21wYXJlIG9wZXJhdG9ycy4KKyAqIC0gYWRkZWQgc3dhcCgpLCBjbGVhcigpLCBzaXplKCksIGNhcGFjaXR5KCksIG9wZXJhdG9yKygpLgorICovCiAKICNpZm5kZWYgVElYTUxfVVNFX1NUTAogCkBAIC0zMCwyMSArNDIsNiBAQAogI2luY2x1ZGUgPGFzc2VydC5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgogCi0vKglUaGUgc3VwcG9ydCBmb3IgZXhwbGljaXQgaXNuJ3QgdGhhdCB1bml2ZXJzYWwsIGFuZCBpdCBpc24ndCByZWFsbHkKLQlyZXF1aXJlZCAtIGl0IGlzIHVzZWQgdG8gY2hlY2sgdGhhdCB0aGUgVGlYbWxTdHJpbmcgY2xhc3MgaXNuJ3QgaW5jb3JyZWN0bHkKLQl1c2VkLiBCZSBuaWNlIHRvIG9sZCBjb21waWxlcnMgYW5kIG1hY3JvIGl0IGhlcmU6Ci0qLwotI2lmIGRlZmluZWQoX01TQ19WRVIpICYmIChfTVNDX1ZFUiA+PSAxMjAwICkKLQkvLyBNaWNyb3NvZnQgdmlzdWFsIHN0dWRpbywgdmVyc2lvbiA2IGFuZCBoaWdoZXIuCi0JI2RlZmluZSBUSVhNTF9FWFBMSUNJVCBleHBsaWNpdAotI2VsaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgKF9fR05VQ19fID49IDMgKQotCS8vIEdDQyB2ZXJzaW9uIDMgYW5kIGhpZ2hlci5zCi0JI2RlZmluZSBUSVhNTF9FWFBMSUNJVCBleHBsaWNpdAotI2Vsc2UKLQkjZGVmaW5lIFRJWE1MX0VYUExJQ0lUCi0jZW5kaWYKLQotCiAvKgogICAgVGlYbWxTdHJpbmcgaXMgYW4gZW11bGF0aW9uIG9mIGEgc3Vic2V0IG9mIHRoZSBzdGQ6OnN0cmluZyB0ZW1wbGF0ZS4KICAgIEl0cyBwdXJwb3NlIGlzIHRvIGFsbG93IGNvbXBpbGluZyBUaW55WE1MIG9uIGNvbXBpbGVycyB3aXRoIG5vIG9yIHBvb3IgU1RMIHN1cHBvcnQuCkBAIC01Niw3ICs1Myw3IEBACiB7CiAgIHB1YmxpYyA6CiAJLy8gVGhlIHNpemUgdHlwZSB1c2VkCi0gIAl0eXBlZGVmIHNpemVfdCBzaXplX3R5cGU7CisgIAl0eXBlZGVmIHVuc2lnbmVkIGludCBzaXplX3R5cGU7CiAKIAkvLyBFcnJvciB2YWx1ZSBmb3IgZmluZCBwcmltaXRpdmUKIAlzdGF0aWMgY29uc3Qgc2l6ZV90eXBlIG5wb3M7IC8vID0gLTE7CkBAIC02OCwyMSArNjUsMjEgQEAKIAl9CiAKIAkvLyBUaVhtbFN0cmluZyBjb3B5IGNvbnN0cnVjdG9yCi0JVGlYbWxTdHJpbmcgKCBjb25zdCBUaVhtbFN0cmluZyAmIGNvcHkpIDogcmVwXygwKQorCVRpWG1sU3RyaW5nIChjb25zdCBUaVhtbFN0cmluZyAmIGNvcHkpCiAJewogCQlpbml0KGNvcHkubGVuZ3RoKCkpOwogCQltZW1jcHkoc3RhcnQoKSwgY29weS5kYXRhKCksIGxlbmd0aCgpKTsKIAl9CiAKIAkvLyBUaVhtbFN0cmluZyBjb25zdHJ1Y3RvciwgYmFzZWQgb24gYSBzdHJpbmcKLQlUSVhNTF9FWFBMSUNJVCBUaVhtbFN0cmluZyAoIGNvbnN0IGNoYXIgKiBjb3B5KSA6IHJlcF8oMCkKKwlUaVhtbFN0cmluZyAoY29uc3QgY2hhciAqIGNvcHkpCiAJewogCQlpbml0KCBzdGF0aWNfY2FzdDxzaXplX3R5cGU+KCBzdHJsZW4oY29weSkgKSk7CiAJCW1lbWNweShzdGFydCgpLCBjb3B5LCBsZW5ndGgoKSk7CiAJfQogCiAJLy8gVGlYbWxTdHJpbmcgY29uc3RydWN0b3IsIGJhc2VkIG9uIGEgc3RyaW5nCi0JVElYTUxfRVhQTElDSVQgVGlYbWxTdHJpbmcgKCBjb25zdCBjaGFyICogc3RyLCBzaXplX3R5cGUgbGVuKSA6IHJlcF8oMCkKKwlUaVhtbFN0cmluZyAoY29uc3QgY2hhciAqIHN0ciwgc2l6ZV90eXBlIGxlbikKIAl7CiAJCWluaXQobGVuKTsKIAkJbWVtY3B5KHN0YXJ0KCksIHN0ciwgbGVuKTsKQEAgLTk0LDExICs5MSwxMyBAQAogCQlxdWl0KCk7CiAJfQogCisJLy8gPSBvcGVyYXRvcgogCVRpWG1sU3RyaW5nJiBvcGVyYXRvciA9IChjb25zdCBjaGFyICogY29weSkKIAl7CiAJCXJldHVybiBhc3NpZ24oIGNvcHksIChzaXplX3R5cGUpc3RybGVuKGNvcHkpKTsKIAl9CiAKKwkvLyA9IG9wZXJhdG9yCiAJVGlYbWxTdHJpbmcmIG9wZXJhdG9yID0gKGNvbnN0IFRpWG1sU3RyaW5nICYgY29weSkKIAl7CiAJCXJldHVybiBhc3NpZ24oY29weS5zdGFydCgpLCBjb3B5Lmxlbmd0aCgpKTsKQEAgLTIxOCwxNSArMjE3LDcgQEAKIAl7CiAJCWlmIChjYXApCiAJCXsKLQkJCS8vIExlZTogdGhlIG9yaWdpbmFsIGZvcm06Ci0JCQkvLwlyZXBfID0gc3RhdGljX2Nhc3Q8UmVwKj4ob3BlcmF0b3IgbmV3KHNpemVvZihSZXApICsgY2FwKSk7Ci0JCQkvLyBkb2Vzbid0IHdvcmsgaW4gc29tZSBjYXNlcyBvZiBuZXcgYmVpbmcgb3ZlcmxvYWRlZC4gU3dpdGNoaW5nCi0JCQkvLyB0byB0aGUgbm9ybWFsIGFsbG9jYXRpb24sIGFsdGhvdWdoIHVzZSBhbiAnaW50JyBmb3Igc3lzdGVtcwotCQkJLy8gdGhhdCBhcmUgb3Zlcmx5IHBpY2t5IGFib3V0IHN0cnVjdHVyZSBhbGlnbm1lbnQuCi0JCQljb25zdCBzaXplX3R5cGUgYnl0ZXNOZWVkZWQgPSBzaXplb2YoUmVwKSArIGNhcDsKLQkJCWNvbnN0IHNpemVfdHlwZSBpbnRzTmVlZGVkID0gKCBieXRlc05lZWRlZCArIHNpemVvZihpbnQpIC0gMSApIC8gc2l6ZW9mKCBpbnQgKTsgCi0JCQlyZXBfID0gcmVpbnRlcnByZXRfY2FzdDxSZXAqPiggbmV3IGludFsgaW50c05lZWRlZCBdICk7Ci0KKwkJCXJlcF8gPSBzdGF0aWNfY2FzdDxSZXAqPihvcGVyYXRvciBuZXcoc2l6ZW9mKFJlcCkgKyBjYXApKTsKIAkJCXJlcF8tPnN0clsgcmVwXy0+c2l6ZSA9IHN6IF0gPSAnXDAnOwogCQkJcmVwXy0+Y2FwYWNpdHkgPSBjYXA7CiAJCX0KQEAgLTI0MCw5ICsyMzEsNyBAQAogCXsKIAkJaWYgKHJlcF8gIT0gJm51bGxyZXBfKQogCQl7Ci0JCQkvLyBUaGUgcmVwXyBpcyByZWFsbHkgYW4gYXJyYXkgb2YgaW50cy4gKHNlZSB0aGUgYWxsb2NhdG9yLCBhYm92ZSkuCi0JCQkvLyBDYXN0IGl0IGJhY2sgYmVmb3JlIGRlbGV0ZSwgc28gdGhlIGNvbXBpbGVyIHdvbid0IGluY29ycmVjdGx5IGNhbGwgZGVzdHJ1Y3RvcnMuCi0JCQlkZWxldGUgW10gKCByZWludGVycHJldF9jYXN0PGludCo+KCByZXBfICkgKTsKKwkJCW9wZXJhdG9yIGRlbGV0ZShyZXBfKTsKIAkJfQogCX0KIApkaWZmIC0tZ2l0IGEvdGlueXhtbC5jcHAgYi90aW55eG1sLmNwcAppbmRleCA5YzE2MWRmLi41Zjg0ZGVjIDEwMDY0NAotLS0gYS90aW55eG1sLmNwcAorKysgYi90aW55eG1sLmNwcApAQCAtMSw2ICsxLDYgQEAKIC8qCiB3d3cuc291cmNlZm9yZ2UubmV0L3Byb2plY3RzL3Rpbnl4bWwKLU9yaWdpbmFsIGNvZGUgYnkgTGVlIFRob21hc29uICh3d3cuZ3Jpbm5pbmdsaXphcmQuY29tKQorT3JpZ2luYWwgY29kZSAoMi4wIGFuZCBlYXJsaWVyICljb3B5cmlnaHQgKGMpIDIwMDAtMjAwMiBMZWUgVGhvbWFzb24gKHd3dy5ncmlubmluZ2xpemFyZC5jb20pCiAKIFRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgJ2FzLWlzJywgd2l0aG91dCBhbnkgZXhwcmVzcyBvciBpbXBsaWVkCiB3YXJyYW50eS4gSW4gbm8gZXZlbnQgd2lsbCB0aGUgYXV0aG9ycyBiZSBoZWxkIGxpYWJsZSBmb3IgYW55CkBAIC0yMywzMyArMjMsMjMgQEAKICovCiAKICNpbmNsdWRlIDxjdHlwZS5oPgorI2luY2x1ZGUgInRpbnl4bWwuaCIKIAogI2lmZGVmIFRJWE1MX1VTRV9TVEwKICNpbmNsdWRlIDxzc3RyZWFtPgotI2luY2x1ZGUgPGlvc3RyZWFtPgogI2VuZGlmCiAKLSNpbmNsdWRlICJ0aW55eG1sLmgiCi0KLUZJTEUqIFRpWG1sRk9wZW4oIGNvbnN0IGNoYXIqIGZpbGVuYW1lLCBjb25zdCBjaGFyKiBtb2RlICk7CiAKIGJvb2wgVGlYbWxCYXNlOjpjb25kZW5zZVdoaXRlU3BhY2UgPSB0cnVlOwogCi0vLyBNaWNyb3NvZnQgY29tcGlsZXIgc2VjdXJpdHkKLUZJTEUqIFRpWG1sRk9wZW4oIGNvbnN0IGNoYXIqIGZpbGVuYW1lLCBjb25zdCBjaGFyKiBtb2RlICkKK3ZvaWQgVGlYbWxCYXNlOjpQdXRTdHJpbmcoIGNvbnN0IFRJWE1MX1NUUklORyYgc3RyLCBUSVhNTF9PU1RSRUFNKiBzdHJlYW0gKQogewotCSNpZiBkZWZpbmVkKF9NU0NfVkVSKSAmJiAoX01TQ19WRVIgPj0gMTQwMCApCi0JCUZJTEUqIGZwID0gMDsKLQkJZXJybm9fdCBlcnIgPSBmb3Blbl9zKCAmZnAsIGZpbGVuYW1lLCBtb2RlICk7Ci0JCWlmICggIWVyciAmJiBmcCApCi0JCQlyZXR1cm4gZnA7Ci0JCXJldHVybiAwOwotCSNlbHNlCi0JCXJldHVybiBmb3BlbiggZmlsZW5hbWUsIG1vZGUgKTsKLQkjZW5kaWYKKwlUSVhNTF9TVFJJTkcgYnVmZmVyOworCVB1dFN0cmluZyggc3RyLCAmYnVmZmVyICk7CisJKCpzdHJlYW0pIDw8IGJ1ZmZlcjsKIH0KIAotdm9pZCBUaVhtbEJhc2U6OkVuY29kZVN0cmluZyggY29uc3QgVElYTUxfU1RSSU5HJiBzdHIsIFRJWE1MX1NUUklORyogb3V0U3RyaW5nICkKK3ZvaWQgVGlYbWxCYXNlOjpQdXRTdHJpbmcoIGNvbnN0IFRJWE1MX1NUUklORyYgc3RyLCBUSVhNTF9TVFJJTkcqIG91dFN0cmluZyApCiB7CiAJaW50IGk9MDsKIApAQCAtMTMzLDYgKzEyMywyNCBAQAogfQogCiAKKy8vIDwtLSBTdHJhbmdlIGNsYXNzIGZvciBhIGJ1ZyBmaXguIFNlYXJjaCBmb3IgU1RMX1NUUklOR19CVUcKK1RpWG1sQmFzZTo6U3RyaW5nVG9CdWZmZXI6OlN0cmluZ1RvQnVmZmVyKCBjb25zdCBUSVhNTF9TVFJJTkcmIHN0ciApCit7CisJYnVmZmVyID0gbmV3IGNoYXJbIHN0ci5sZW5ndGgoKSsxIF07CisJaWYgKCBidWZmZXIgKQorCXsKKwkJc3RyY3B5KCBidWZmZXIsIHN0ci5jX3N0cigpICk7CisJfQorfQorCisKK1RpWG1sQmFzZTo6U3RyaW5nVG9CdWZmZXI6On5TdHJpbmdUb0J1ZmZlcigpCit7CisJZGVsZXRlIFtdIGJ1ZmZlcjsKK30KKy8vIEVuZCBzdHJhbmdlIGJ1ZyBmaXguIC0tPgorCisKIFRpWG1sTm9kZTo6VGlYbWxOb2RlKCBOb2RlVHlwZSBfdHlwZSApIDogVGlYbWxCYXNlKCkKIHsKIAlwYXJlbnQgPSAwOwpAQCAtMTYyLDcgKzE3MCw2IEBACiB7CiAJdGFyZ2V0LT5TZXRWYWx1ZSAodmFsdWUuY19zdHIoKSApOwogCXRhcmdldC0+dXNlckRhdGEgPSB1c2VyRGF0YTsgCi0JdGFyZ2V0LT5sb2NhdGlvbiA9IGxvY2F0aW9uOwogfQogCiAKQEAgLTE4NSwxNyArMTkyLDYgQEAKIAogVGlYbWxOb2RlKiBUaVhtbE5vZGU6OkxpbmtFbmRDaGlsZCggVGlYbWxOb2RlKiBub2RlICkKIHsKLQlhc3NlcnQoIG5vZGUtPnBhcmVudCA9PSAwIHx8IG5vZGUtPnBhcmVudCA9PSB0aGlzICk7Ci0JYXNzZXJ0KCBub2RlLT5HZXREb2N1bWVudCgpID09IDAgfHwgbm9kZS0+R2V0RG9jdW1lbnQoKSA9PSB0aGlzLT5HZXREb2N1bWVudCgpICk7Ci0KLQlpZiAoIG5vZGUtPlR5cGUoKSA9PSBUaVhtbE5vZGU6OlRJTllYTUxfRE9DVU1FTlQgKQotCXsKLQkJZGVsZXRlIG5vZGU7Ci0JCWlmICggR2V0RG9jdW1lbnQoKSApIAotCQkJR2V0RG9jdW1lbnQoKS0+U2V0RXJyb3IoIFRJWE1MX0VSUk9SX0RPQ1VNRU5UX1RPUF9PTkxZLCAwLCAwLCBUSVhNTF9FTkNPRElOR19VTktOT1dOICk7Ci0JCXJldHVybiAwOwotCX0KLQogCW5vZGUtPnBhcmVudCA9IHRoaXM7CiAKIAlub2RlLT5wcmV2ID0gbGFzdENoaWxkOwpAQCAtMjEzLDEyICsyMDksNiBAQAogCiBUaVhtbE5vZGUqIFRpWG1sTm9kZTo6SW5zZXJ0RW5kQ2hpbGQoIGNvbnN0IFRpWG1sTm9kZSYgYWRkVGhpcyApCiB7Ci0JaWYgKCBhZGRUaGlzLlR5cGUoKSA9PSBUaVhtbE5vZGU6OlRJTllYTUxfRE9DVU1FTlQgKQotCXsKLQkJaWYgKCBHZXREb2N1bWVudCgpICkgCi0JCQlHZXREb2N1bWVudCgpLT5TZXRFcnJvciggVElYTUxfRVJST1JfRE9DVU1FTlRfVE9QX09OTFksIDAsIDAsIFRJWE1MX0VOQ09ESU5HX1VOS05PV04gKTsKLQkJcmV0dXJuIDA7Ci0JfQogCVRpWG1sTm9kZSogbm9kZSA9IGFkZFRoaXMuQ2xvbmUoKTsKIAlpZiAoICFub2RlICkKIAkJcmV0dXJuIDA7CkBAIC0yMjksMTUgKzIxOSw4IEBACiAKIFRpWG1sTm9kZSogVGlYbWxOb2RlOjpJbnNlcnRCZWZvcmVDaGlsZCggVGlYbWxOb2RlKiBiZWZvcmVUaGlzLCBjb25zdCBUaVhtbE5vZGUmIGFkZFRoaXMgKQogewkKLQlpZiAoICFiZWZvcmVUaGlzIHx8IGJlZm9yZVRoaXMtPnBhcmVudCAhPSB0aGlzICkgeworCWlmICggIWJlZm9yZVRoaXMgfHwgYmVmb3JlVGhpcy0+cGFyZW50ICE9IHRoaXMgKQogCQlyZXR1cm4gMDsKLQl9Ci0JaWYgKCBhZGRUaGlzLlR5cGUoKSA9PSBUaVhtbE5vZGU6OlRJTllYTUxfRE9DVU1FTlQgKQotCXsKLQkJaWYgKCBHZXREb2N1bWVudCgpICkgCi0JCQlHZXREb2N1bWVudCgpLT5TZXRFcnJvciggVElYTUxfRVJST1JfRE9DVU1FTlRfVE9QX09OTFksIDAsIDAsIFRJWE1MX0VOQ09ESU5HX1VOS05PV04gKTsKLQkJcmV0dXJuIDA7Ci0JfQogCiAJVGlYbWxOb2RlKiBub2RlID0gYWRkVGhpcy5DbG9uZSgpOwogCWlmICggIW5vZGUgKQpAQCAtMjYyLDE1ICsyNDUsOCBAQAogCiBUaVhtbE5vZGUqIFRpWG1sTm9kZTo6SW5zZXJ0QWZ0ZXJDaGlsZCggVGlYbWxOb2RlKiBhZnRlclRoaXMsIGNvbnN0IFRpWG1sTm9kZSYgYWRkVGhpcyApCiB7Ci0JaWYgKCAhYWZ0ZXJUaGlzIHx8IGFmdGVyVGhpcy0+cGFyZW50ICE9IHRoaXMgKSB7CisJaWYgKCAhYWZ0ZXJUaGlzIHx8IGFmdGVyVGhpcy0+cGFyZW50ICE9IHRoaXMgKQogCQlyZXR1cm4gMDsKLQl9Ci0JaWYgKCBhZGRUaGlzLlR5cGUoKSA9PSBUaVhtbE5vZGU6OlRJTllYTUxfRE9DVU1FTlQgKQotCXsKLQkJaWYgKCBHZXREb2N1bWVudCgpICkgCi0JCQlHZXREb2N1bWVudCgpLT5TZXRFcnJvciggVElYTUxfRVJST1JfRE9DVU1FTlRfVE9QX09OTFksIDAsIDAsIFRJWE1MX0VOQ09ESU5HX1VOS05PV04gKTsKLQkJcmV0dXJuIDA7Ci0JfQogCiAJVGlYbWxOb2RlKiBub2RlID0gYWRkVGhpcy5DbG9uZSgpOwogCWlmICggIW5vZGUgKQpAQCAtMjk1LDIwICsyNzEsOSBAQAogCiBUaVhtbE5vZGUqIFRpWG1sTm9kZTo6UmVwbGFjZUNoaWxkKCBUaVhtbE5vZGUqIHJlcGxhY2VUaGlzLCBjb25zdCBUaVhtbE5vZGUmIHdpdGhUaGlzICkKIHsKLQlpZiAoICFyZXBsYWNlVGhpcyApCi0JCXJldHVybiAwOwotCiAJaWYgKCByZXBsYWNlVGhpcy0+cGFyZW50ICE9IHRoaXMgKQogCQlyZXR1cm4gMDsKIAotCWlmICggd2l0aFRoaXMuVG9Eb2N1bWVudCgpICkgewotCQkvLyBBIGRvY3VtZW50IGNhbiBuZXZlciBiZSBhIGNoaWxkLglUaGFua3MgdG8gTm9hbS4KLQkJVGlYbWxEb2N1bWVudCogZG9jdW1lbnQgPSBHZXREb2N1bWVudCgpOwotCQlpZiAoIGRvY3VtZW50ICkgCi0JCQlkb2N1bWVudC0+U2V0RXJyb3IoIFRJWE1MX0VSUk9SX0RPQ1VNRU5UX1RPUF9PTkxZLCAwLCAwLCBUSVhNTF9FTkNPRElOR19VTktOT1dOICk7Ci0JCXJldHVybiAwOwotCX0KLQogCVRpWG1sTm9kZSogbm9kZSA9IHdpdGhUaGlzLkNsb25lKCk7CiAJaWYgKCAhbm9kZSApCiAJCXJldHVybiAwOwpAQCAtMzM0LDEwICsyOTksNiBAQAogCiBib29sIFRpWG1sTm9kZTo6UmVtb3ZlQ2hpbGQoIFRpWG1sTm9kZSogcmVtb3ZlVGhpcyApCiB7Ci0JaWYgKCAhcmVtb3ZlVGhpcyApIHsKLQkJcmV0dXJuIGZhbHNlOwotCX0KLQogCWlmICggcmVtb3ZlVGhpcy0+cGFyZW50ICE9IHRoaXMgKQogCXsJCiAJCWFzc2VydCggMCApOwpAQCAtMzcwLDYgKzMzMSwxOCBAQAogfQogCiAKK1RpWG1sTm9kZSogVGlYbWxOb2RlOjpGaXJzdENoaWxkKCBjb25zdCBjaGFyICogX3ZhbHVlICkKK3sKKwlUaVhtbE5vZGUqIG5vZGU7CisJZm9yICggbm9kZSA9IGZpcnN0Q2hpbGQ7IG5vZGU7IG5vZGUgPSBub2RlLT5uZXh0ICkKKwl7CisJCWlmICggc3RyY21wKCBub2RlLT5WYWx1ZSgpLCBfdmFsdWUgKSA9PSAwICkKKwkJCXJldHVybiBub2RlOworCX0KKwlyZXR1cm4gMDsKK30KKworCiBjb25zdCBUaVhtbE5vZGUqIFRpWG1sTm9kZTo6TGFzdENoaWxkKCBjb25zdCBjaGFyICogX3ZhbHVlICkgY29uc3QKIHsKIAljb25zdCBUaVhtbE5vZGUqIG5vZGU7CkBAIC0zODEsNiArMzU0LDE2IEBACiAJcmV0dXJuIDA7CiB9CiAKK1RpWG1sTm9kZSogVGlYbWxOb2RlOjpMYXN0Q2hpbGQoIGNvbnN0IGNoYXIgKiBfdmFsdWUgKQoreworCVRpWG1sTm9kZSogbm9kZTsKKwlmb3IgKCBub2RlID0gbGFzdENoaWxkOyBub2RlOyBub2RlID0gbm9kZS0+cHJldiApCisJeworCQlpZiAoIHN0cmNtcCggbm9kZS0+VmFsdWUoKSwgX3ZhbHVlICkgPT0gMCApCisJCQlyZXR1cm4gbm9kZTsKKwl9CisJcmV0dXJuIDA7Cit9CiAKIGNvbnN0IFRpWG1sTm9kZSogVGlYbWxOb2RlOjpJdGVyYXRlQ2hpbGRyZW4oIGNvbnN0IFRpWG1sTm9kZSogcHJldmlvdXMgKSBjb25zdAogewpAQCAtMzk1LDYgKzM3OCwxOCBAQAogCX0KIH0KIAorVGlYbWxOb2RlKiBUaVhtbE5vZGU6Okl0ZXJhdGVDaGlsZHJlbiggVGlYbWxOb2RlKiBwcmV2aW91cyApCit7CisJaWYgKCAhcHJldmlvdXMgKQorCXsKKwkJcmV0dXJuIEZpcnN0Q2hpbGQoKTsKKwl9CisJZWxzZQorCXsKKwkJYXNzZXJ0KCBwcmV2aW91cy0+cGFyZW50ID09IHRoaXMgKTsKKwkJcmV0dXJuIHByZXZpb3VzLT5OZXh0U2libGluZygpOworCX0KK30KIAogY29uc3QgVGlYbWxOb2RlKiBUaVhtbE5vZGU6Okl0ZXJhdGVDaGlsZHJlbiggY29uc3QgY2hhciAqIHZhbCwgY29uc3QgVGlYbWxOb2RlKiBwcmV2aW91cyApIGNvbnN0CiB7CkBAIC00MDksNiArNDA0LDE4IEBACiAJfQogfQogCitUaVhtbE5vZGUqIFRpWG1sTm9kZTo6SXRlcmF0ZUNoaWxkcmVuKCBjb25zdCBjaGFyICogdmFsLCBUaVhtbE5vZGUqIHByZXZpb3VzICkKK3sKKwlpZiAoICFwcmV2aW91cyApCisJeworCQlyZXR1cm4gRmlyc3RDaGlsZCggdmFsICk7CisJfQorCWVsc2UKKwl7CisJCWFzc2VydCggcHJldmlvdXMtPnBhcmVudCA9PSB0aGlzICk7CisJCXJldHVybiBwcmV2aW91cy0+TmV4dFNpYmxpbmcoIHZhbCApOworCX0KK30KIAogY29uc3QgVGlYbWxOb2RlKiBUaVhtbE5vZGU6Ok5leHRTaWJsaW5nKCBjb25zdCBjaGFyICogX3ZhbHVlICkgY29uc3QgCiB7CkBAIC00MjEsNiArNDI4LDE2IEBACiAJcmV0dXJuIDA7CiB9CiAKK1RpWG1sTm9kZSogVGlYbWxOb2RlOjpOZXh0U2libGluZyggY29uc3QgY2hhciAqIF92YWx1ZSApCit7CisJVGlYbWxOb2RlKiBub2RlOworCWZvciAoIG5vZGUgPSBuZXh0OyBub2RlOyBub2RlID0gbm9kZS0+bmV4dCApCisJeworCQlpZiAoIHN0cmNtcCggbm9kZS0+VmFsdWUoKSwgX3ZhbHVlICkgPT0gMCApCisJCQlyZXR1cm4gbm9kZTsKKwl9CisJcmV0dXJuIDA7Cit9CiAKIGNvbnN0IFRpWG1sTm9kZSogVGlYbWxOb2RlOjpQcmV2aW91c1NpYmxpbmcoIGNvbnN0IGNoYXIgKiBfdmFsdWUgKSBjb25zdAogewpAQCAtNDMzLDE1ICs0NTAsMjAgQEAKIAlyZXR1cm4gMDsKIH0KIAorVGlYbWxOb2RlKiBUaVhtbE5vZGU6OlByZXZpb3VzU2libGluZyggY29uc3QgY2hhciAqIF92YWx1ZSApCit7CisJVGlYbWxOb2RlKiBub2RlOworCWZvciAoIG5vZGUgPSBwcmV2OyBub2RlOyBub2RlID0gbm9kZS0+cHJldiApCisJeworCQlpZiAoIHN0cmNtcCggbm9kZS0+VmFsdWUoKSwgX3ZhbHVlICkgPT0gMCApCisJCQlyZXR1cm4gbm9kZTsKKwl9CisJcmV0dXJuIDA7Cit9CiAKIHZvaWQgVGlYbWxFbGVtZW50OjpSZW1vdmVBdHRyaWJ1dGUoIGNvbnN0IGNoYXIgKiBuYW1lICkKIHsKLSAgICAjaWZkZWYgVElYTUxfVVNFX1NUTAotCVRJWE1MX1NUUklORyBzdHIoIG5hbWUgKTsKLQlUaVhtbEF0dHJpYnV0ZSogbm9kZSA9IGF0dHJpYnV0ZVNldC5GaW5kKCBzdHIgKTsKLQkjZWxzZQogCVRpWG1sQXR0cmlidXRlKiBub2RlID0gYXR0cmlidXRlU2V0LkZpbmQoIG5hbWUgKTsKLQkjZW5kaWYKIAlpZiAoIG5vZGUgKQogCXsKIAkJYXR0cmlidXRlU2V0LlJlbW92ZSggbm9kZSApOwpAQCAtNDYzLDYgKzQ4NSwxOSBAQAogCXJldHVybiAwOwogfQogCitUaVhtbEVsZW1lbnQqIFRpWG1sTm9kZTo6Rmlyc3RDaGlsZEVsZW1lbnQoKQoreworCVRpWG1sTm9kZSogbm9kZTsKKworCWZvciAoCW5vZGUgPSBGaXJzdENoaWxkKCk7CisJCQlub2RlOworCQkJbm9kZSA9IG5vZGUtPk5leHRTaWJsaW5nKCkgKQorCXsKKwkJaWYgKCBub2RlLT5Ub0VsZW1lbnQoKSApCisJCQlyZXR1cm4gbm9kZS0+VG9FbGVtZW50KCk7CisJfQorCXJldHVybiAwOworfQogCiBjb25zdCBUaVhtbEVsZW1lbnQqIFRpWG1sTm9kZTo6Rmlyc3RDaGlsZEVsZW1lbnQoIGNvbnN0IGNoYXIgKiBfdmFsdWUgKSBjb25zdAogewpAQCAtNDc4LDE0ICs1MTMsMTMgQEAKIAlyZXR1cm4gMDsKIH0KIAotCi1jb25zdCBUaVhtbEVsZW1lbnQqIFRpWG1sTm9kZTo6TmV4dFNpYmxpbmdFbGVtZW50KCkgY29uc3QKK1RpWG1sRWxlbWVudCogVGlYbWxOb2RlOjpGaXJzdENoaWxkRWxlbWVudCggY29uc3QgY2hhciAqIF92YWx1ZSApCiB7Ci0JY29uc3QgVGlYbWxOb2RlKiBub2RlOworCVRpWG1sTm9kZSogbm9kZTsKIAotCWZvciAoCW5vZGUgPSBOZXh0U2libGluZygpOworCWZvciAoCW5vZGUgPSBGaXJzdENoaWxkKCBfdmFsdWUgKTsKIAkJCW5vZGU7Ci0JCQlub2RlID0gbm9kZS0+TmV4dFNpYmxpbmcoKSApCisJCQlub2RlID0gbm9kZS0+TmV4dFNpYmxpbmcoIF92YWx1ZSApICkKIAl7CiAJCWlmICggbm9kZS0+VG9FbGVtZW50KCkgKQogCQkJcmV0dXJuIG5vZGUtPlRvRWxlbWVudCgpOwpAQCAtNDkzLDE0ICs1MjcsNTUgQEAKIAlyZXR1cm4gMDsKIH0KIAorY29uc3QgVGlYbWxFbGVtZW50KiBUaVhtbE5vZGU6Ok5leHRTaWJsaW5nRWxlbWVudCgpIGNvbnN0Cit7CisJY29uc3QgVGlYbWxOb2RlKiBub2RlOworCisJZm9yICgJbm9kZSA9IE5leHRTaWJsaW5nKCk7CisJbm9kZTsKKwlub2RlID0gbm9kZS0+TmV4dFNpYmxpbmcoKSApCisJeworCQlpZiAoIG5vZGUtPlRvRWxlbWVudCgpICkKKwkJCXJldHVybiBub2RlLT5Ub0VsZW1lbnQoKTsKKwl9CisJcmV0dXJuIDA7Cit9CisKK1RpWG1sRWxlbWVudCogVGlYbWxOb2RlOjpOZXh0U2libGluZ0VsZW1lbnQoKQoreworCVRpWG1sTm9kZSogbm9kZTsKKworCWZvciAoCW5vZGUgPSBOZXh0U2libGluZygpOworCW5vZGU7CisJbm9kZSA9IG5vZGUtPk5leHRTaWJsaW5nKCkgKQorCXsKKwkJaWYgKCBub2RlLT5Ub0VsZW1lbnQoKSApCisJCQlyZXR1cm4gbm9kZS0+VG9FbGVtZW50KCk7CisJfQorCXJldHVybiAwOworfQogCiBjb25zdCBUaVhtbEVsZW1lbnQqIFRpWG1sTm9kZTo6TmV4dFNpYmxpbmdFbGVtZW50KCBjb25zdCBjaGFyICogX3ZhbHVlICkgY29uc3QKIHsKIAljb25zdCBUaVhtbE5vZGUqIG5vZGU7CiAKIAlmb3IgKAlub2RlID0gTmV4dFNpYmxpbmcoIF92YWx1ZSApOwotCQkJbm9kZTsKLQkJCW5vZGUgPSBub2RlLT5OZXh0U2libGluZyggX3ZhbHVlICkgKQorCW5vZGU7CisJbm9kZSA9IG5vZGUtPk5leHRTaWJsaW5nKCBfdmFsdWUgKSApCisJeworCQlpZiAoIG5vZGUtPlRvRWxlbWVudCgpICkKKwkJCXJldHVybiBub2RlLT5Ub0VsZW1lbnQoKTsKKwl9CisJcmV0dXJuIDA7Cit9CisKK1RpWG1sRWxlbWVudCogVGlYbWxOb2RlOjpOZXh0U2libGluZ0VsZW1lbnQoIGNvbnN0IGNoYXIgKiBfdmFsdWUgKQoreworCVRpWG1sTm9kZSogbm9kZTsKKworCWZvciAoCW5vZGUgPSBOZXh0U2libGluZyggX3ZhbHVlICk7CisJbm9kZTsKKwlub2RlID0gbm9kZS0+TmV4dFNpYmxpbmcoIF92YWx1ZSApICkKIAl7CiAJCWlmICggbm9kZS0+VG9FbGVtZW50KCkgKQogCQkJcmV0dXJuIG5vZGUtPlRvRWxlbWVudCgpOwpAQCAtNTIxLDkgKzU5NiwyMCBAQAogCXJldHVybiAwOwogfQogCitUaVhtbERvY3VtZW50KiBUaVhtbE5vZGU6OkdldERvY3VtZW50KCkKK3sKKwlUaVhtbE5vZGUqIG5vZGU7CisKKwlmb3IoIG5vZGUgPSB0aGlzOyBub2RlOyBub2RlID0gbm9kZS0+cGFyZW50ICkKKwl7CisJCWlmICggbm9kZS0+VG9Eb2N1bWVudCgpICkKKwkJCXJldHVybiBub2RlLT5Ub0RvY3VtZW50KCk7CisJfQorCXJldHVybiAwOworfQogCiBUaVhtbEVsZW1lbnQ6OlRpWG1sRWxlbWVudCAoY29uc3QgY2hhciAqIF92YWx1ZSkKLQk6IFRpWG1sTm9kZSggVGlYbWxOb2RlOjpUSU5ZWE1MX0VMRU1FTlQgKQorCTogVGlYbWxOb2RlKCBUaVhtbE5vZGU6OkVMRU1FTlQgKQogewogCWZpcnN0Q2hpbGQgPSBsYXN0Q2hpbGQgPSAwOwogCXZhbHVlID0gX3ZhbHVlOwpAQCAtNTMyLDcgKzYxOCw3IEBACiAKICNpZmRlZiBUSVhNTF9VU0VfU1RMCiBUaVhtbEVsZW1lbnQ6OlRpWG1sRWxlbWVudCggY29uc3Qgc3RkOjpzdHJpbmcmIF92YWx1ZSApIAotCTogVGlYbWxOb2RlKCBUaVhtbE5vZGU6OlRJTllYTUxfRUxFTUVOVCApCisJOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6RUxFTUVOVCApCiB7CiAJZmlyc3RDaGlsZCA9IGxhc3RDaGlsZCA9IDA7CiAJdmFsdWUgPSBfdmFsdWU7CkBAIC01NDEsMTggKzYyNywxNyBAQAogCiAKIFRpWG1sRWxlbWVudDo6VGlYbWxFbGVtZW50KCBjb25zdCBUaVhtbEVsZW1lbnQmIGNvcHkpCi0JOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6VElOWVhNTF9FTEVNRU5UICkKKwk6IFRpWG1sTm9kZSggVGlYbWxOb2RlOjpFTEVNRU5UICkKIHsKIAlmaXJzdENoaWxkID0gbGFzdENoaWxkID0gMDsKIAljb3B5LkNvcHlUbyggdGhpcyApOwkKIH0KIAogCi1UaVhtbEVsZW1lbnQmIFRpWG1sRWxlbWVudDo6b3BlcmF0b3I9KCBjb25zdCBUaVhtbEVsZW1lbnQmIGJhc2UgKQordm9pZCBUaVhtbEVsZW1lbnQ6Om9wZXJhdG9yPSggY29uc3QgVGlYbWxFbGVtZW50JiBiYXNlICkKIHsKIAlDbGVhclRoaXMoKTsKIAliYXNlLkNvcHlUbyggdGhpcyApOwotCXJldHVybiAqdGhpczsKIH0KIAogCkBAIC01NzQsMjM0ICs2NTksMTE1IEBACiB9CiAKIAotY29uc3QgY2hhciogVGlYbWxFbGVtZW50OjpBdHRyaWJ1dGUoIGNvbnN0IGNoYXIqIG5hbWUgKSBjb25zdAorY29uc3QgY2hhciAqIFRpWG1sRWxlbWVudDo6QXR0cmlidXRlKCBjb25zdCBjaGFyICogbmFtZSApIGNvbnN0CiB7CiAJY29uc3QgVGlYbWxBdHRyaWJ1dGUqIG5vZGUgPSBhdHRyaWJ1dGVTZXQuRmluZCggbmFtZSApOworCiAJaWYgKCBub2RlICkKIAkJcmV0dXJuIG5vZGUtPlZhbHVlKCk7CisKIAlyZXR1cm4gMDsKIH0KIAogCi0jaWZkZWYgVElYTUxfVVNFX1NUTAotY29uc3Qgc3RkOjpzdHJpbmcqIFRpWG1sRWxlbWVudDo6QXR0cmlidXRlKCBjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSApIGNvbnN0Citjb25zdCBjaGFyICogVGlYbWxFbGVtZW50OjpBdHRyaWJ1dGUoIGNvbnN0IGNoYXIgKiBuYW1lLCBpbnQqIGkgKSBjb25zdAogewotCWNvbnN0IFRpWG1sQXR0cmlidXRlKiBhdHRyaWIgPSBhdHRyaWJ1dGVTZXQuRmluZCggbmFtZSApOwotCWlmICggYXR0cmliICkKLQkJcmV0dXJuICZhdHRyaWItPlZhbHVlU3RyKCk7Ci0JcmV0dXJuIDA7Ci19Ci0jZW5kaWYKLQotCi1jb25zdCBjaGFyKiBUaVhtbEVsZW1lbnQ6OkF0dHJpYnV0ZSggY29uc3QgY2hhciogbmFtZSwgaW50KiBpICkgY29uc3QKLXsKLQljb25zdCBUaVhtbEF0dHJpYnV0ZSogYXR0cmliID0gYXR0cmlidXRlU2V0LkZpbmQoIG5hbWUgKTsKLQljb25zdCBjaGFyKiByZXN1bHQgPSAwOwotCi0JaWYgKCBhdHRyaWIgKSB7Ci0JCXJlc3VsdCA9IGF0dHJpYi0+VmFsdWUoKTsKLQkJaWYgKCBpICkgewotCQkJYXR0cmliLT5RdWVyeUludFZhbHVlKCBpICk7Ci0JCX0KKwljb25zdCBjaGFyICogcyA9IEF0dHJpYnV0ZSggbmFtZSApOworCWlmICggaSApCisJeworCQlpZiAoIHMgKQorCQkJKmkgPSBhdG9pKCBzICk7CisJCWVsc2UKKwkJCSppID0gMDsKIAl9Ci0JcmV0dXJuIHJlc3VsdDsKKwlyZXR1cm4gczsKIH0KIAogCi0jaWZkZWYgVElYTUxfVVNFX1NUTAotY29uc3Qgc3RkOjpzdHJpbmcqIFRpWG1sRWxlbWVudDo6QXR0cmlidXRlKCBjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSwgaW50KiBpICkgY29uc3QKK2NvbnN0IGNoYXIgKiBUaVhtbEVsZW1lbnQ6OkF0dHJpYnV0ZSggY29uc3QgY2hhciAqIG5hbWUsIGRvdWJsZSogZCApIGNvbnN0CiB7Ci0JY29uc3QgVGlYbWxBdHRyaWJ1dGUqIGF0dHJpYiA9IGF0dHJpYnV0ZVNldC5GaW5kKCBuYW1lICk7Ci0JY29uc3Qgc3RkOjpzdHJpbmcqIHJlc3VsdCA9IDA7Ci0KLQlpZiAoIGF0dHJpYiApIHsKLQkJcmVzdWx0ID0gJmF0dHJpYi0+VmFsdWVTdHIoKTsKLQkJaWYgKCBpICkgewotCQkJYXR0cmliLT5RdWVyeUludFZhbHVlKCBpICk7Ci0JCX0KKwljb25zdCBjaGFyICogcyA9IEF0dHJpYnV0ZSggbmFtZSApOworCWlmICggZCApCisJeworCQlpZiAoIHMgKQorCQkJKmQgPSBhdG9mKCBzICk7CisJCWVsc2UKKwkJCSpkID0gMDsKIAl9Ci0JcmV0dXJuIHJlc3VsdDsKKwlyZXR1cm4gczsKIH0KLSNlbmRpZgotCi0KLWNvbnN0IGNoYXIqIFRpWG1sRWxlbWVudDo6QXR0cmlidXRlKCBjb25zdCBjaGFyKiBuYW1lLCBkb3VibGUqIGQgKSBjb25zdAotewotCWNvbnN0IFRpWG1sQXR0cmlidXRlKiBhdHRyaWIgPSBhdHRyaWJ1dGVTZXQuRmluZCggbmFtZSApOwotCWNvbnN0IGNoYXIqIHJlc3VsdCA9IDA7Ci0KLQlpZiAoIGF0dHJpYiApIHsKLQkJcmVzdWx0ID0gYXR0cmliLT5WYWx1ZSgpOwotCQlpZiAoIGQgKSB7Ci0JCQlhdHRyaWItPlF1ZXJ5RG91YmxlVmFsdWUoIGQgKTsKLQkJfQotCX0KLQlyZXR1cm4gcmVzdWx0OwotfQotCi0KLSNpZmRlZiBUSVhNTF9VU0VfU1RMCi1jb25zdCBzdGQ6OnN0cmluZyogVGlYbWxFbGVtZW50OjpBdHRyaWJ1dGUoIGNvbnN0IHN0ZDo6c3RyaW5nJiBuYW1lLCBkb3VibGUqIGQgKSBjb25zdAotewotCWNvbnN0IFRpWG1sQXR0cmlidXRlKiBhdHRyaWIgPSBhdHRyaWJ1dGVTZXQuRmluZCggbmFtZSApOwotCWNvbnN0IHN0ZDo6c3RyaW5nKiByZXN1bHQgPSAwOwotCi0JaWYgKCBhdHRyaWIgKSB7Ci0JCXJlc3VsdCA9ICZhdHRyaWItPlZhbHVlU3RyKCk7Ci0JCWlmICggZCApIHsKLQkJCWF0dHJpYi0+UXVlcnlEb3VibGVWYWx1ZSggZCApOwotCQl9Ci0JfQotCXJldHVybiByZXN1bHQ7Ci19Ci0jZW5kaWYKIAogCiBpbnQgVGlYbWxFbGVtZW50OjpRdWVyeUludEF0dHJpYnV0ZSggY29uc3QgY2hhciogbmFtZSwgaW50KiBpdmFsICkgY29uc3QKIHsKLQljb25zdCBUaVhtbEF0dHJpYnV0ZSogYXR0cmliID0gYXR0cmlidXRlU2V0LkZpbmQoIG5hbWUgKTsKLQlpZiAoICFhdHRyaWIgKQotCQlyZXR1cm4gVElYTUxfTk9fQVRUUklCVVRFOwotCXJldHVybiBhdHRyaWItPlF1ZXJ5SW50VmFsdWUoIGl2YWwgKTsKLX0KLQotCi1pbnQgVGlYbWxFbGVtZW50OjpRdWVyeVVuc2lnbmVkQXR0cmlidXRlKCBjb25zdCBjaGFyKiBuYW1lLCB1bnNpZ25lZCogdmFsdWUgKSBjb25zdAotewogCWNvbnN0IFRpWG1sQXR0cmlidXRlKiBub2RlID0gYXR0cmlidXRlU2V0LkZpbmQoIG5hbWUgKTsKIAlpZiAoICFub2RlICkKIAkJcmV0dXJuIFRJWE1MX05PX0FUVFJJQlVURTsKIAotCWludCBpdmFsID0gMDsKLQlpbnQgcmVzdWx0ID0gbm9kZS0+UXVlcnlJbnRWYWx1ZSggJml2YWwgKTsKLQkqdmFsdWUgPSAodW5zaWduZWQpaXZhbDsKLQlyZXR1cm4gcmVzdWx0OworCXJldHVybiBub2RlLT5RdWVyeUludFZhbHVlKCBpdmFsICk7CiB9CiAKIAotaW50IFRpWG1sRWxlbWVudDo6UXVlcnlCb29sQXR0cmlidXRlKCBjb25zdCBjaGFyKiBuYW1lLCBib29sKiBidmFsICkgY29uc3QKLXsKLQljb25zdCBUaVhtbEF0dHJpYnV0ZSogbm9kZSA9IGF0dHJpYnV0ZVNldC5GaW5kKCBuYW1lICk7Ci0JaWYgKCAhbm9kZSApCi0JCXJldHVybiBUSVhNTF9OT19BVFRSSUJVVEU7Ci0JCi0JaW50IHJlc3VsdCA9IFRJWE1MX1dST05HX1RZUEU7Ci0JaWYgKCAgICBTdHJpbmdFcXVhbCggbm9kZS0+VmFsdWUoKSwgInRydWUiLCB0cnVlLCBUSVhNTF9FTkNPRElOR19VTktOT1dOICkgCi0JCSB8fCBTdHJpbmdFcXVhbCggbm9kZS0+VmFsdWUoKSwgInllcyIsIHRydWUsIFRJWE1MX0VOQ09ESU5HX1VOS05PV04gKSAKLQkJIHx8IFN0cmluZ0VxdWFsKCBub2RlLT5WYWx1ZSgpLCAiMSIsIHRydWUsIFRJWE1MX0VOQ09ESU5HX1VOS05PV04gKSApIAotCXsKLQkJKmJ2YWwgPSB0cnVlOwotCQlyZXN1bHQgPSBUSVhNTF9TVUNDRVNTOwotCX0KLQllbHNlIGlmICggICAgU3RyaW5nRXF1YWwoIG5vZGUtPlZhbHVlKCksICJmYWxzZSIsIHRydWUsIFRJWE1MX0VOQ09ESU5HX1VOS05PV04gKSAKLQkJCSAgfHwgU3RyaW5nRXF1YWwoIG5vZGUtPlZhbHVlKCksICJubyIsIHRydWUsIFRJWE1MX0VOQ09ESU5HX1VOS05PV04gKSAKLQkJCSAgfHwgU3RyaW5nRXF1YWwoIG5vZGUtPlZhbHVlKCksICIwIiwgdHJ1ZSwgVElYTUxfRU5DT0RJTkdfVU5LTk9XTiApICkgCi0JewotCQkqYnZhbCA9IGZhbHNlOwotCQlyZXN1bHQgPSBUSVhNTF9TVUNDRVNTOwotCX0KLQlyZXR1cm4gcmVzdWx0OwotfQotCi0KLQotI2lmZGVmIFRJWE1MX1VTRV9TVEwKLWludCBUaVhtbEVsZW1lbnQ6OlF1ZXJ5SW50QXR0cmlidXRlKCBjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSwgaW50KiBpdmFsICkgY29uc3QKLXsKLQljb25zdCBUaVhtbEF0dHJpYnV0ZSogYXR0cmliID0gYXR0cmlidXRlU2V0LkZpbmQoIG5hbWUgKTsKLQlpZiAoICFhdHRyaWIgKQotCQlyZXR1cm4gVElYTUxfTk9fQVRUUklCVVRFOwotCXJldHVybiBhdHRyaWItPlF1ZXJ5SW50VmFsdWUoIGl2YWwgKTsKLX0KLSNlbmRpZgotCi0KIGludCBUaVhtbEVsZW1lbnQ6OlF1ZXJ5RG91YmxlQXR0cmlidXRlKCBjb25zdCBjaGFyKiBuYW1lLCBkb3VibGUqIGR2YWwgKSBjb25zdAogewotCWNvbnN0IFRpWG1sQXR0cmlidXRlKiBhdHRyaWIgPSBhdHRyaWJ1dGVTZXQuRmluZCggbmFtZSApOwotCWlmICggIWF0dHJpYiApCisJY29uc3QgVGlYbWxBdHRyaWJ1dGUqIG5vZGUgPSBhdHRyaWJ1dGVTZXQuRmluZCggbmFtZSApOworCWlmICggIW5vZGUgKQogCQlyZXR1cm4gVElYTUxfTk9fQVRUUklCVVRFOwotCXJldHVybiBhdHRyaWItPlF1ZXJ5RG91YmxlVmFsdWUoIGR2YWwgKTsKLX0KIAotCi0jaWZkZWYgVElYTUxfVVNFX1NUTAotaW50IFRpWG1sRWxlbWVudDo6UXVlcnlEb3VibGVBdHRyaWJ1dGUoIGNvbnN0IHN0ZDo6c3RyaW5nJiBuYW1lLCBkb3VibGUqIGR2YWwgKSBjb25zdAotewotCWNvbnN0IFRpWG1sQXR0cmlidXRlKiBhdHRyaWIgPSBhdHRyaWJ1dGVTZXQuRmluZCggbmFtZSApOwotCWlmICggIWF0dHJpYiApCi0JCXJldHVybiBUSVhNTF9OT19BVFRSSUJVVEU7Ci0JcmV0dXJuIGF0dHJpYi0+UXVlcnlEb3VibGVWYWx1ZSggZHZhbCApOworCXJldHVybiBub2RlLT5RdWVyeURvdWJsZVZhbHVlKCBkdmFsICk7CiB9Ci0jZW5kaWYKIAogCiB2b2lkIFRpWG1sRWxlbWVudDo6U2V0QXR0cmlidXRlKCBjb25zdCBjaGFyICogbmFtZSwgaW50IHZhbCApCiB7CQotCVRpWG1sQXR0cmlidXRlKiBhdHRyaWIgPSBhdHRyaWJ1dGVTZXQuRmluZE9yQ3JlYXRlKCBuYW1lICk7Ci0JaWYgKCBhdHRyaWIgKSB7Ci0JCWF0dHJpYi0+U2V0SW50VmFsdWUoIHZhbCApOwotCX0KKwljaGFyIGJ1Zls2NF07CisJI2lmIGRlZmluZWQoVElYTUxfU05QUklOVEYpCQkKKwkJVElYTUxfU05QUklOVEYoIGJ1Ziwgc2l6ZW9mKGJ1ZiksICIlZCIsIHZhbCApOworCSNlbHNlCisJCXNwcmludGYoIGJ1ZiwgIiVkIiwgdmFsICk7CisJI2VuZGlmCisJU2V0QXR0cmlidXRlKCBuYW1lLCBidWYgKTsKIH0KIAogCi0jaWZkZWYgVElYTUxfVVNFX1NUTAotdm9pZCBUaVhtbEVsZW1lbnQ6OlNldEF0dHJpYnV0ZSggY29uc3Qgc3RkOjpzdHJpbmcmIG5hbWUsIGludCB2YWwgKQotewkKLQlUaVhtbEF0dHJpYnV0ZSogYXR0cmliID0gYXR0cmlidXRlU2V0LkZpbmRPckNyZWF0ZSggbmFtZSApOwotCWlmICggYXR0cmliICkgewotCQlhdHRyaWItPlNldEludFZhbHVlKCB2YWwgKTsKLQl9Ci19Ci0jZW5kaWYKLQotCiB2b2lkIFRpWG1sRWxlbWVudDo6U2V0RG91YmxlQXR0cmlidXRlKCBjb25zdCBjaGFyICogbmFtZSwgZG91YmxlIHZhbCApCiB7CQotCVRpWG1sQXR0cmlidXRlKiBhdHRyaWIgPSBhdHRyaWJ1dGVTZXQuRmluZE9yQ3JlYXRlKCBuYW1lICk7Ci0JaWYgKCBhdHRyaWIgKSB7Ci0JCWF0dHJpYi0+U2V0RG91YmxlVmFsdWUoIHZhbCApOwotCX0KKwljaGFyIGJ1ZlsyNTZdOworCSNpZiBkZWZpbmVkKFRJWE1MX1NOUFJJTlRGKQkJCisJCVRJWE1MX1NOUFJJTlRGKCBidWYsIHNpemVvZihidWYpLCAiJWYiLCB2YWwgKTsKKwkjZWxzZQorCQlzcHJpbnRmKCBidWYsICIlZiIsIHZhbCApOworCSNlbmRpZgorCVNldEF0dHJpYnV0ZSggbmFtZSwgYnVmICk7CiB9CiAKIAotI2lmZGVmIFRJWE1MX1VTRV9TVEwKLXZvaWQgVGlYbWxFbGVtZW50OjpTZXREb3VibGVBdHRyaWJ1dGUoIGNvbnN0IHN0ZDo6c3RyaW5nJiBuYW1lLCBkb3VibGUgdmFsICkKLXsJCi0JVGlYbWxBdHRyaWJ1dGUqIGF0dHJpYiA9IGF0dHJpYnV0ZVNldC5GaW5kT3JDcmVhdGUoIG5hbWUgKTsKLQlpZiAoIGF0dHJpYiApIHsKLQkJYXR0cmliLT5TZXREb3VibGVWYWx1ZSggdmFsICk7Ci0JfQotfQotI2VuZGlmIAotCi0KLXZvaWQgVGlYbWxFbGVtZW50OjpTZXRBdHRyaWJ1dGUoIGNvbnN0IGNoYXIgKiBjbmFtZSwgY29uc3QgY2hhciAqIGN2YWx1ZSApCit2b2lkIFRpWG1sRWxlbWVudDo6U2V0QXR0cmlidXRlKCBjb25zdCBjaGFyICogbmFtZSwgY29uc3QgY2hhciAqIF92YWx1ZSApCiB7Ci0JVGlYbWxBdHRyaWJ1dGUqIGF0dHJpYiA9IGF0dHJpYnV0ZVNldC5GaW5kT3JDcmVhdGUoIGNuYW1lICk7Ci0JaWYgKCBhdHRyaWIgKSB7Ci0JCWF0dHJpYi0+U2V0VmFsdWUoIGN2YWx1ZSApOworCVRpWG1sQXR0cmlidXRlKiBub2RlID0gYXR0cmlidXRlU2V0LkZpbmQoIG5hbWUgKTsKKwlpZiAoIG5vZGUgKQorCXsKKwkJbm9kZS0+U2V0VmFsdWUoIF92YWx1ZSApOworCQlyZXR1cm47CisJfQorCisJVGlYbWxBdHRyaWJ1dGUqIGF0dHJpYiA9IG5ldyBUaVhtbEF0dHJpYnV0ZSggbmFtZSwgX3ZhbHVlICk7CisJaWYgKCBhdHRyaWIgKQorCXsKKwkJYXR0cmlidXRlU2V0LkFkZCggYXR0cmliICk7CisJfQorCWVsc2UKKwl7CisJCVRpWG1sRG9jdW1lbnQqIGRvY3VtZW50ID0gR2V0RG9jdW1lbnQoKTsKKwkJaWYgKCBkb2N1bWVudCApIGRvY3VtZW50LT5TZXRFcnJvciggVElYTUxfRVJST1JfT1VUX09GX01FTU9SWSwgMCwgMCwgVElYTUxfRU5DT0RJTkdfVU5LTk9XTiApOwogCX0KIH0KIAotCi0jaWZkZWYgVElYTUxfVVNFX1NUTAotdm9pZCBUaVhtbEVsZW1lbnQ6OlNldEF0dHJpYnV0ZSggY29uc3Qgc3RkOjpzdHJpbmcmIF9uYW1lLCBjb25zdCBzdGQ6OnN0cmluZyYgX3ZhbHVlICkKLXsKLQlUaVhtbEF0dHJpYnV0ZSogYXR0cmliID0gYXR0cmlidXRlU2V0LkZpbmRPckNyZWF0ZSggX25hbWUgKTsKLQlpZiAoIGF0dHJpYiApIHsKLQkJYXR0cmliLT5TZXRWYWx1ZSggX3ZhbHVlICk7Ci0JfQotfQotI2VuZGlmCi0KLQogdm9pZCBUaVhtbEVsZW1lbnQ6OlByaW50KCBGSUxFKiBjZmlsZSwgaW50IGRlcHRoICkgY29uc3QKIHsKIAlpbnQgaTsKLQlhc3NlcnQoIGNmaWxlICk7Ci0JZm9yICggaT0wOyBpPGRlcHRoOyBpKysgKSB7CisJZm9yICggaT0wOyBpPGRlcHRoOyBpKysgKQorCXsKIAkJZnByaW50ZiggY2ZpbGUsICIgICAgIiApOwogCX0KIApAQCAtODQyLDEzICs4MDgsNDIgQEAKIAkJCW5vZGUtPlByaW50KCBjZmlsZSwgZGVwdGgrMSApOwogCQl9CiAJCWZwcmludGYoIGNmaWxlLCAiXG4iICk7Ci0JCWZvciggaT0wOyBpPGRlcHRoOyArK2kgKSB7Ci0JCQlmcHJpbnRmKCBjZmlsZSwgIiAgICAiICk7Ci0JCX0KKwkJZm9yKCBpPTA7IGk8ZGVwdGg7ICsraSApCisJCWZwcmludGYoIGNmaWxlLCAiICAgICIgKTsKIAkJZnByaW50ZiggY2ZpbGUsICI8LyVzPiIsIHZhbHVlLmNfc3RyKCkgKTsKIAl9CiB9CiAKK3ZvaWQgVGlYbWxFbGVtZW50OjpTdHJlYW1PdXQoIFRJWE1MX09TVFJFQU0gKiBzdHJlYW0gKSBjb25zdAoreworCSgqc3RyZWFtKSA8PCAiPCIgPDwgdmFsdWU7CisKKwljb25zdCBUaVhtbEF0dHJpYnV0ZSogYXR0cmliOworCWZvciAoIGF0dHJpYiA9IGF0dHJpYnV0ZVNldC5GaXJzdCgpOyBhdHRyaWI7IGF0dHJpYiA9IGF0dHJpYi0+TmV4dCgpICkKKwl7CQorCQkoKnN0cmVhbSkgPDwgIiAiOworCQlhdHRyaWItPlN0cmVhbU91dCggc3RyZWFtICk7CisJfQorCisJLy8gSWYgdGhpcyBub2RlIGhhcyBjaGlsZHJlbiwgZ2l2ZSBpdCBhIGNsb3NpbmcgdGFnLiBFbHNlCisJLy8gbWFrZSBpdCBhbiBlbXB0eSB0YWcuCisJVGlYbWxOb2RlKiBub2RlOworCWlmICggZmlyc3RDaGlsZCApCisJeyAJCQorCQkoKnN0cmVhbSkgPDwgIj4iOworCisJCWZvciAoIG5vZGUgPSBmaXJzdENoaWxkOyBub2RlOyBub2RlPW5vZGUtPk5leHRTaWJsaW5nKCkgKQorCQl7CisJCQlub2RlLT5TdHJlYW1PdXQoIHN0cmVhbSApOworCQl9CisJCSgqc3RyZWFtKSA8PCAiPC8iIDw8IHZhbHVlIDw8ICI+IjsKKwl9CisJZWxzZQorCXsKKwkJKCpzdHJlYW0pIDw8ICIgLz4iOworCX0KK30KKwogCiB2b2lkIFRpWG1sRWxlbWVudDo6Q29weVRvKCBUaVhtbEVsZW1lbnQqIHRhcmdldCApIGNvbnN0CiB7CkBAIC04NzIsMTkgKzg2Nyw2IEBACiAJfQogfQogCi1ib29sIFRpWG1sRWxlbWVudDo6QWNjZXB0KCBUaVhtbFZpc2l0b3IqIHZpc2l0b3IgKSBjb25zdAotewotCWlmICggdmlzaXRvci0+VmlzaXRFbnRlciggKnRoaXMsIGF0dHJpYnV0ZVNldC5GaXJzdCgpICkgKSAKLQl7Ci0JCWZvciAoIGNvbnN0IFRpWG1sTm9kZSogbm9kZT1GaXJzdENoaWxkKCk7IG5vZGU7IG5vZGU9bm9kZS0+TmV4dFNpYmxpbmcoKSApCi0JCXsKLQkJCWlmICggIW5vZGUtPkFjY2VwdCggdmlzaXRvciApICkKLQkJCQlicmVhazsKLQkJfQotCX0KLQlyZXR1cm4gdmlzaXRvci0+VmlzaXRFeGl0KCAqdGhpcyApOwotfQotCiAKIFRpWG1sTm9kZSogVGlYbWxFbGVtZW50OjpDbG9uZSgpIGNvbnN0CiB7CkBAIC05MTAsMTQgKzg5MiwxNCBAQAogfQogCiAKLVRpWG1sRG9jdW1lbnQ6OlRpWG1sRG9jdW1lbnQoKSA6IFRpWG1sTm9kZSggVGlYbWxOb2RlOjpUSU5ZWE1MX0RPQ1VNRU5UICkKK1RpWG1sRG9jdW1lbnQ6OlRpWG1sRG9jdW1lbnQoKSA6IFRpWG1sTm9kZSggVGlYbWxOb2RlOjpET0NVTUVOVCApCiB7CiAJdGFic2l6ZSA9IDQ7CiAJdXNlTWljcm9zb2Z0Qk9NID0gZmFsc2U7CiAJQ2xlYXJFcnJvcigpOwogfQogCi1UaVhtbERvY3VtZW50OjpUaVhtbERvY3VtZW50KCBjb25zdCBjaGFyICogZG9jdW1lbnROYW1lICkgOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6VElOWVhNTF9ET0NVTUVOVCApCitUaVhtbERvY3VtZW50OjpUaVhtbERvY3VtZW50KCBjb25zdCBjaGFyICogZG9jdW1lbnROYW1lICkgOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6RE9DVU1FTlQgKQogewogCXRhYnNpemUgPSA0OwogCXVzZU1pY3Jvc29mdEJPTSA9IGZhbHNlOwpAQCAtOTI3LDcgKzkwOSw3IEBACiAKIAogI2lmZGVmIFRJWE1MX1VTRV9TVEwKLVRpWG1sRG9jdW1lbnQ6OlRpWG1sRG9jdW1lbnQoIGNvbnN0IHN0ZDo6c3RyaW5nJiBkb2N1bWVudE5hbWUgKSA6IFRpWG1sTm9kZSggVGlYbWxOb2RlOjpUSU5ZWE1MX0RPQ1VNRU5UICkKK1RpWG1sRG9jdW1lbnQ6OlRpWG1sRG9jdW1lbnQoIGNvbnN0IHN0ZDo6c3RyaW5nJiBkb2N1bWVudE5hbWUgKSA6IFRpWG1sTm9kZSggVGlYbWxOb2RlOjpET0NVTUVOVCApCiB7CiAJdGFic2l6ZSA9IDQ7CiAJdXNlTWljcm9zb2Z0Qk9NID0gZmFsc2U7CkBAIC05MzcsMTkxICs5MTksMjAwIEBACiAjZW5kaWYKIAogCi1UaVhtbERvY3VtZW50OjpUaVhtbERvY3VtZW50KCBjb25zdCBUaVhtbERvY3VtZW50JiBjb3B5ICkgOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6VElOWVhNTF9ET0NVTUVOVCApCitUaVhtbERvY3VtZW50OjpUaVhtbERvY3VtZW50KCBjb25zdCBUaVhtbERvY3VtZW50JiBjb3B5ICkgOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6RE9DVU1FTlQgKQogewogCWNvcHkuQ29weVRvKCB0aGlzICk7CiB9CiAKIAotVGlYbWxEb2N1bWVudCYgVGlYbWxEb2N1bWVudDo6b3BlcmF0b3I9KCBjb25zdCBUaVhtbERvY3VtZW50JiBjb3B5ICkKK3ZvaWQgVGlYbWxEb2N1bWVudDo6b3BlcmF0b3I9KCBjb25zdCBUaVhtbERvY3VtZW50JiBjb3B5ICkKIHsKIAlDbGVhcigpOwogCWNvcHkuQ29weVRvKCB0aGlzICk7Ci0JcmV0dXJuICp0aGlzOwogfQogCiAKIGJvb2wgVGlYbWxEb2N1bWVudDo6TG9hZEZpbGUoIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKQogewotCXJldHVybiBMb2FkRmlsZSggVmFsdWUoKSwgZW5jb2RpbmcgKTsKKwkvLyBTZWUgU1RMX1NUUklOR19CVUcgYmVsb3cuCisJU3RyaW5nVG9CdWZmZXIgYnVmKCB2YWx1ZSApOworCisJaWYgKCBidWYuYnVmZmVyICYmIExvYWRGaWxlKCBidWYuYnVmZmVyLCBlbmNvZGluZyApICkKKwkJcmV0dXJuIHRydWU7CisKKwlyZXR1cm4gZmFsc2U7CiB9CiAKIAogYm9vbCBUaVhtbERvY3VtZW50OjpTYXZlRmlsZSgpIGNvbnN0CiB7Ci0JcmV0dXJuIFNhdmVGaWxlKCBWYWx1ZSgpICk7CisJLy8gU2VlIFNUTF9TVFJJTkdfQlVHIGJlbG93LgorCVN0cmluZ1RvQnVmZmVyIGJ1ZiggdmFsdWUgKTsKKworCWlmICggYnVmLmJ1ZmZlciAmJiBTYXZlRmlsZSggYnVmLmJ1ZmZlciApICkKKwkJcmV0dXJuIHRydWU7CisKKwlyZXR1cm4gZmFsc2U7CiB9CiAKLWJvb2wgVGlYbWxEb2N1bWVudDo6TG9hZEZpbGUoIGNvbnN0IGNoYXIqIF9maWxlbmFtZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApCitib29sIFRpWG1sRG9jdW1lbnQ6OkxvYWRGaWxlKCBjb25zdCBjaGFyKiBmaWxlbmFtZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApCiB7Ci0JVElYTUxfU1RSSU5HIGZpbGVuYW1lKCBfZmlsZW5hbWUgKTsKLQl2YWx1ZSA9IGZpbGVuYW1lOwotCi0JLy8gcmVhZGluZyBpbiBiaW5hcnkgbW9kZSBzbyB0aGF0IHRpbnl4bWwgY2FuIG5vcm1hbGl6ZSB0aGUgRU9MCi0JRklMRSogZmlsZSA9IFRpWG1sRk9wZW4oIHZhbHVlLmNfc3RyICgpLCAicmIiICk7CQotCi0JaWYgKCBmaWxlICkKLQl7Ci0JCWJvb2wgcmVzdWx0ID0gTG9hZEZpbGUoIGZpbGUsIGVuY29kaW5nICk7Ci0JCWZjbG9zZSggZmlsZSApOwotCQlyZXR1cm4gcmVzdWx0OwotCX0KLQllbHNlCi0JewotCQlTZXRFcnJvciggVElYTUxfRVJST1JfT1BFTklOR19GSUxFLCAwLCAwLCBUSVhNTF9FTkNPRElOR19VTktOT1dOICk7Ci0JCXJldHVybiBmYWxzZTsKLQl9Ci19Ci0KLWJvb2wgVGlYbWxEb2N1bWVudDo6TG9hZEZpbGUoIEZJTEUqIGZpbGUsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKQotewotCWlmICggIWZpbGUgKSAKLQl7Ci0JCVNldEVycm9yKCBUSVhNTF9FUlJPUl9PUEVOSU5HX0ZJTEUsIDAsIDAsIFRJWE1MX0VOQ09ESU5HX1VOS05PV04gKTsKLQkJcmV0dXJuIGZhbHNlOwotCX0KLQogCS8vIERlbGV0ZSB0aGUgZXhpc3RpbmcgZGF0YToKIAlDbGVhcigpOwogCWxvY2F0aW9uLkNsZWFyKCk7CiAKLQkvLyBHZXQgdGhlIGZpbGUgc2l6ZSwgc28gd2UgY2FuIHByZS1hbGxvY2F0ZSB0aGUgc3RyaW5nLiBIVUdFIHNwZWVkIGltcGFjdC4KLQlsb25nIGxlbmd0aCA9IDA7Ci0JZnNlZWsoIGZpbGUsIDAsIFNFRUtfRU5EICk7Ci0JbGVuZ3RoID0gZnRlbGwoIGZpbGUgKTsKLQlmc2VlayggZmlsZSwgMCwgU0VFS19TRVQgKTsKKwkvLyBUaGVyZSB3YXMgYSByZWFsbHkgdGVycmlmeWluZyBsaXR0bGUgYnVnIGhlcmUuIFRoZSBjb2RlOgorCS8vCQl2YWx1ZSA9IGZpbGVuYW1lCisJLy8gaW4gdGhlIFNUTCBjYXNlLCBjYXVzZSB0aGUgYXNzaWdubWVudCBtZXRob2Qgb2YgdGhlIHN0ZDo6c3RyaW5nIHRvCisJLy8gYmUgY2FsbGVkLiBXaGF0IGlzIHN0cmFuZ2UsIGlzIHRoYXQgdGhlIHN0ZDo6c3RyaW5nIGhhZCB0aGUgc2FtZQorCS8vIGFkZHJlc3MgYXMgaXQncyBjX3N0cigpIG1ldGhvZCwgYW5kIHNvIGJhZCB0aGluZ3MgaGFwcGVuLiBMb29rcworCS8vIGxpa2UgYSBidWcgaW4gdGhlIE1pY3Jvc29mdCBTVEwgaW1wbGVtZW50YXRpb24uCisJLy8gU2VlIFNUTF9TVFJJTkdfQlVHIGFib3ZlLgorCS8vIEZpeGVkIHdpdGggdGhlIFN0cmluZ1RvQnVmZmVyIGNsYXNzLgorCXZhbHVlID0gZmlsZW5hbWU7CiAKLQkvLyBTdHJhbmdlIGNhc2UsIGJ1dCBnb29kIHRvIGhhbmRsZSB1cCBmcm9udC4KLQlpZiAoIGxlbmd0aCA8PSAwICkKKwkvLyByZWFkaW5nIGluIGJpbmFyeSBtb2RlIHNvIHRoYXQgdGlueXhtbCBjYW4gbm9ybWFsaXplIHRoZSBFT0wKKwlGSUxFKiBmaWxlID0gZm9wZW4oIHZhbHVlLmNfc3RyICgpLCAicmIiICk7CQorCisJaWYgKCBmaWxlICkKIAl7Ci0JCVNldEVycm9yKCBUSVhNTF9FUlJPUl9ET0NVTUVOVF9FTVBUWSwgMCwgMCwgVElYTUxfRU5DT0RJTkdfVU5LTk9XTiApOwotCQlyZXR1cm4gZmFsc2U7Ci0JfQorCQkvLyBHZXQgdGhlIGZpbGUgc2l6ZSwgc28gd2UgY2FuIHByZS1hbGxvY2F0ZSB0aGUgc3RyaW5nLiBIVUdFIHNwZWVkIGltcGFjdC4KKwkJbG9uZyBsZW5ndGggPSAwOworCQlmc2VlayggZmlsZSwgMCwgU0VFS19FTkQgKTsKKwkJbGVuZ3RoID0gZnRlbGwoIGZpbGUgKTsKKwkJZnNlZWsoIGZpbGUsIDAsIFNFRUtfU0VUICk7CiAKLQkvLyBTdWJ0bGUgYnVnIGhlcmUuIFRpbnlYbWwgZGlkIHVzZSBmZ2V0cy4gQnV0IGZyb20gdGhlIFhNTCBzcGVjOgotCS8vIDIuMTEgRW5kLW9mLUxpbmUgSGFuZGxpbmcKLQkvLyA8c25pcD4KLQkvLyA8cXVvdGU+Ci0JLy8gLi4udGhlIFhNTCBwcm9jZXNzb3IgTVVTVCBiZWhhdmUgYXMgaWYgaXQgbm9ybWFsaXplZCBhbGwgbGluZSBicmVha3MgaW4gZXh0ZXJuYWwgCi0JLy8gcGFyc2VkIGVudGl0aWVzIChpbmNsdWRpbmcgdGhlIGRvY3VtZW50IGVudGl0eSkgb24gaW5wdXQsIGJlZm9yZSBwYXJzaW5nLCBieSB0cmFuc2xhdGluZyAKLQkvLyBib3RoIHRoZSB0d28tY2hhcmFjdGVyIHNlcXVlbmNlICN4RCAjeEEgYW5kIGFueSAjeEQgdGhhdCBpcyBub3QgZm9sbG93ZWQgYnkgI3hBIHRvIAotCS8vIGEgc2luZ2xlICN4QSBjaGFyYWN0ZXIuCi0JLy8gPC9xdW90ZT4KLQkvLwotCS8vIEl0IGlzIG5vdCBjbGVhciBmZ2V0cyBkb2VzIHRoYXQsIGFuZCBjZXJ0YWlubHkgaXNuJ3QgY2xlYXIgaXQgd29ya3MgY3Jvc3MgcGxhdGZvcm0uIAotCS8vIEdlbmVyYWxseSwgeW91IGV4cGVjdCBmZ2V0cyB0byB0cmFuc2xhdGUgZnJvbSB0aGUgY29udmVudGlvbiBvZiB0aGUgT1MgdG8gdGhlIGMvdW5peAotCS8vIGNvbnZlbnRpb24sIGFuZCBub3Qgd29yayBnZW5lcmFsbHkuCisJCS8vIFN0cmFuZ2UgY2FzZSwgYnV0IGdvb2QgdG8gaGFuZGxlIHVwIGZyb250LgorCQlpZiAoIGxlbmd0aCA9PSAwICkKKwkJeworCQkJZmNsb3NlKCBmaWxlICk7CisJCQlyZXR1cm4gZmFsc2U7CisJCX0KIAotCS8qCi0Jd2hpbGUoIGZnZXRzKCBidWYsIHNpemVvZihidWYpLCBmaWxlICkgKQotCXsKLQkJZGF0YSArPSBidWY7Ci0JfQotCSovCisJCS8vIElmIHdlIGhhdmUgYSBmaWxlLCBhc3N1bWUgaXQgaXMgYWxsIG9uZSBiaWcgWE1MIGZpbGUsIGFuZCByZWFkIGl0IGluLgorCQkvLyBUaGUgZG9jdW1lbnQgcGFyc2VyIG1heSBkZWNpZGUgdGhlIGRvY3VtZW50IGVuZHMgc29vbmVyIHRoYW4gdGhlIGVudGlyZSBmaWxlLCBob3dldmVyLgorCQlUSVhNTF9TVFJJTkcgZGF0YTsKKwkJZGF0YS5yZXNlcnZlKCBsZW5ndGggKTsKIAotCWNoYXIqIGJ1ZiA9IG5ldyBjaGFyWyBsZW5ndGgrMSBdOwotCWJ1ZlswXSA9IDA7CisJCS8vIFN1YnRsZSBidWcgaGVyZS4gVGlueVhtbCBkaWQgdXNlIGZnZXRzLiBCdXQgZnJvbSB0aGUgWE1MIHNwZWM6CisJCS8vIDIuMTEgRW5kLW9mLUxpbmUgSGFuZGxpbmcKKwkJLy8gPHNuaXA+CisJCS8vIDxxdW90ZT4KKwkJLy8gLi4udGhlIFhNTCBwcm9jZXNzb3IgTVVTVCBiZWhhdmUgYXMgaWYgaXQgbm9ybWFsaXplZCBhbGwgbGluZSBicmVha3MgaW4gZXh0ZXJuYWwgCisJCS8vIHBhcnNlZCBlbnRpdGllcyAoaW5jbHVkaW5nIHRoZSBkb2N1bWVudCBlbnRpdHkpIG9uIGlucHV0LCBiZWZvcmUgcGFyc2luZywgYnkgdHJhbnNsYXRpbmcgCisJCS8vIGJvdGggdGhlIHR3by1jaGFyYWN0ZXIgc2VxdWVuY2UgI3hEICN4QSBhbmQgYW55ICN4RCB0aGF0IGlzIG5vdCBmb2xsb3dlZCBieSAjeEEgdG8gCisJCS8vIGEgc2luZ2xlICN4QSBjaGFyYWN0ZXIuCisJCS8vIDwvcXVvdGU+CisJCS8vCisJCS8vIEl0IGlzIG5vdCBjbGVhciBmZ2V0cyBkb2VzIHRoYXQsIGFuZCBjZXJ0YWlubHkgaXNuJ3QgY2xlYXIgaXQgd29ya3MgY3Jvc3MgcGxhdGZvcm0uIAorCQkvLyBHZW5lcmFsbHksIHlvdSBleHBlY3QgZmdldHMgdG8gdHJhbnNsYXRlIGZyb20gdGhlIGNvbnZlbnRpb24gb2YgdGhlIE9TIHRvIHRoZSBjL3VuaXgKKwkJLy8gY29udmVudGlvbiwgYW5kIG5vdCB3b3JrIGdlbmVyYWxseS4KIAotCWlmICggZnJlYWQoIGJ1ZiwgbGVuZ3RoLCAxLCBmaWxlICkgIT0gMSApIHsKLQkJZGVsZXRlIFtdIGJ1ZjsKLQkJU2V0RXJyb3IoIFRJWE1MX0VSUk9SX09QRU5JTkdfRklMRSwgMCwgMCwgVElYTUxfRU5DT0RJTkdfVU5LTk9XTiApOwotCQlyZXR1cm4gZmFsc2U7Ci0JfQorCQkvKgorCQl3aGlsZSggZmdldHMoIGJ1Ziwgc2l6ZW9mKGJ1ZiksIGZpbGUgKSApCisJCXsKKwkJCWRhdGEgKz0gYnVmOworCQl9CisJCSovCiAKLQkvLyBQcm9jZXNzIHRoZSBidWZmZXIgaW4gcGxhY2UgdG8gbm9ybWFsaXplIG5ldyBsaW5lcy4gKFNlZSBjb21tZW50IGFib3ZlLikKLQkvLyBDb3BpZXMgZnJvbSB0aGUgJ3AnIHRvICdxJyBwb2ludGVyLCB3aGVyZSBwIGNhbiBhZHZhbmNlIGZhc3RlciBpZgotCS8vIGEgbmV3bGluZS1jYXJyaWFnZSByZXR1cm4gaXMgaGl0LgotCS8vCi0JLy8gV2lraXBlZGlhOgotCS8vIFN5c3RlbXMgYmFzZWQgb24gQVNDSUkgb3IgYSBjb21wYXRpYmxlIGNoYXJhY3RlciBzZXQgdXNlIGVpdGhlciBMRiAgKExpbmUgZmVlZCwgJ1xuJywgMHgwQSwgMTAgaW4gZGVjaW1hbCkgb3IgCi0JLy8gQ1IgKENhcnJpYWdlIHJldHVybiwgJ1xyJywgMHgwRCwgMTMgaW4gZGVjaW1hbCkgaW5kaXZpZHVhbGx5LCBvciBDUiBmb2xsb3dlZCBieSBMRiAoQ1IrTEYsIDB4MEQgMHgwQSkuLi4KLQkvLwkJKiBMRjogICAgTXVsdGljcywgVW5peCBhbmQgVW5peC1saWtlIHN5c3RlbXMgKEdOVS9MaW51eCwgQUlYLCBYZW5peCwgTWFjIE9TIFgsIEZyZWVCU0QsIGV0Yy4pLCBCZU9TLCBBbWlnYSwgUklTQyBPUywgYW5kIG90aGVycwotICAgIC8vCQkqIENSK0xGOiBERUMgUlQtMTEgYW5kIG1vc3Qgb3RoZXIgZWFybHkgbm9uLVVuaXgsIG5vbi1JQk0gT1NlcywgQ1AvTSwgTVAvTSwgRE9TLCBPUy8yLCBNaWNyb3NvZnQgV2luZG93cywgU3ltYmlhbiBPUwotICAgIC8vCQkqIENSOiAgICBDb21tb2RvcmUgOC1iaXQgbWFjaGluZXMsIEFwcGxlIElJIGZhbWlseSwgTWFjIE9TIHVwIHRvIHZlcnNpb24gOSBhbmQgT1MtOQorCQljaGFyKiBidWYgPSBuZXcgY2hhclsgbGVuZ3RoKzEgXTsKKwkJYnVmWzBdID0gMDsKIAotCWNvbnN0IGNoYXIqIHAgPSBidWY7CS8vIHRoZSByZWFkIGhlYWQKLQljaGFyKiBxID0gYnVmOwkJCS8vIHRoZSB3cml0ZSBoZWFkCi0JY29uc3QgY2hhciBDUiA9IDB4MGQ7Ci0JY29uc3QgY2hhciBMRiA9IDB4MGE7CisJCWlmICggZnJlYWQoIGJ1ZiwgbGVuZ3RoLCAxLCBmaWxlICkgIT0gMSApIHsKKwkJLy9pZiAoIGZyZWFkKCBidWYsIDEsIGxlbmd0aCwgZmlsZSApICE9IChzaXplX3QpbGVuZ3RoICkgeworCQkJU2V0RXJyb3IoIFRJWE1MX0VSUk9SX09QRU5JTkdfRklMRSwgMCwgMCwgVElYTUxfRU5DT0RJTkdfVU5LTk9XTiApOworCQkJZmNsb3NlKCBmaWxlICk7CisJCQlyZXR1cm4gZmFsc2U7CisJCX0KKwkJZmNsb3NlKCBmaWxlICk7CiAKLQlidWZbbGVuZ3RoXSA9IDA7Ci0Jd2hpbGUoICpwICkgewotCQlhc3NlcnQoIHAgPCAoYnVmK2xlbmd0aCkgKTsKLQkJYXNzZXJ0KCBxIDw9IChidWYrbGVuZ3RoKSApOwotCQlhc3NlcnQoIHEgPD0gcCApOworCQljb25zdCBjaGFyKiBsYXN0UG9zID0gYnVmOworCQljb25zdCBjaGFyKiBwID0gYnVmOwogCi0JCWlmICggKnAgPT0gQ1IgKSB7Ci0JCQkqcSsrID0gTEY7Ci0JCQlwKys7Ci0JCQlpZiAoICpwID09IExGICkgewkJLy8gY2hlY2sgZm9yIENSK0xGIChhbmQgc2tpcCBMRikKLQkJCQlwKys7CisJCWJ1ZltsZW5ndGhdID0gMDsKKwkJd2hpbGUoICpwICkgeworCQkJYXNzZXJ0KCBwIDwgKGJ1ZitsZW5ndGgpICk7CisJCQlpZiAoICpwID09IDB4YSApIHsKKwkJCQkvLyBOZXdsaW5lIGNoYXJhY3Rlci4gTm8gc3BlY2lhbCBydWxlcyBmb3IgdGhpcy4gQXBwZW5kIGFsbCB0aGUgY2hhcmFjdGVycworCQkJCS8vIHNpbmNlIHRoZSBsYXN0IHN0cmluZywgYW5kIGluY2x1ZGUgdGhlIG5ld2xpbmUuCisJCQkJZGF0YS5hcHBlbmQoIGxhc3RQb3MsIHAtbGFzdFBvcysxICk7CS8vIGFwcGVuZCwgaW5jbHVkZSB0aGUgbmV3bGluZQorCQkJCSsrcDsJCQkJCQkJCQkvLyBtb3ZlIHBhc3QgdGhlIG5ld2xpbmUKKwkJCQlsYXN0UG9zID0gcDsJCQkJCQkJLy8gYW5kIHBvaW50IHRvIHRoZSBuZXcgYnVmZmVyIChtYXkgYmUgMCkKKwkJCQlhc3NlcnQoIHAgPD0gKGJ1ZitsZW5ndGgpICk7CisJCQl9CisJCQllbHNlIGlmICggKnAgPT0gMHhkICkgeworCQkJCS8vIENhcnJpYWdlIHJldHVybi4gQXBwZW5kIHdoYXQgd2UgaGF2ZSBzbyBmYXIsIHRoZW4KKwkJCQkvLyBoYW5kbGUgbW92aW5nIGZvcndhcmQgaW4gdGhlIGJ1ZmZlci4KKwkJCQlpZiAoIChwLWxhc3RQb3MpID4gMCApIHsKKwkJCQkJZGF0YS5hcHBlbmQoIGxhc3RQb3MsIHAtbGFzdFBvcyApOwkvLyBkbyBub3QgYWRkIHRoZSBDUgorCQkJCX0KKwkJCQlkYXRhICs9IChjaGFyKTB4YTsJCQkJCQkvLyBhIHByb3BlciBuZXdsaW5lCisKKwkJCQlpZiAoICoocCsxKSA9PSAweGEgKSB7CisJCQkJCS8vIENhcnJpYWdlIHJldHVybiAtIG5ldyBsaW5lIHNlcXVlbmNlCisJCQkJCXAgKz0gMjsKKwkJCQkJbGFzdFBvcyA9IHA7CisJCQkJCWFzc2VydCggcCA8PSAoYnVmK2xlbmd0aCkgKTsKKwkJCQl9CisJCQkJZWxzZSB7CisJCQkJCS8vIGl0IHdhcyBmb2xsb3dlZCBieSBzb21ldGhpbmcgZWxzZS4uLnRoYXQgaXMgcHJlc3VtYWJseSBjaGFyYWN0ZXJzIGFnYWluLgorCQkJCQkrK3A7CisJCQkJCWxhc3RQb3MgPSBwOworCQkJCQlhc3NlcnQoIHAgPD0gKGJ1ZitsZW5ndGgpICk7CisJCQkJfQorCQkJfQorCQkJZWxzZSB7CisJCQkJKytwOwogCQkJfQogCQl9Ci0JCWVsc2UgewotCQkJKnErKyA9ICpwKys7Ci0JCX0KKwkJLy8gSGFuZGxlIGFueSBsZWZ0IG92ZXIgY2hhcmFjdGVycy4KKwkJaWYgKCBwLWxhc3RQb3MgKSB7CisJCQlkYXRhLmFwcGVuZCggbGFzdFBvcywgcC1sYXN0UG9zICk7CisJCX0JCQorCQlkZWxldGUgW10gYnVmOworCQlidWYgPSAwOworCisJCVBhcnNlKCBkYXRhLmNfc3RyKCksIDAsIGVuY29kaW5nICk7CisKKwkJaWYgKCAgRXJyb3IoKSApCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgIGVsc2UKKwkJCXJldHVybiB0cnVlOwogCX0KLQlhc3NlcnQoIHEgPD0gKGJ1ZitsZW5ndGgpICk7Ci0JKnEgPSAwOwotCi0JUGFyc2UoIGJ1ZiwgMCwgZW5jb2RpbmcgKTsKLQotCWRlbGV0ZSBbXSBidWY7Ci0JcmV0dXJuICFFcnJvcigpOworCVNldEVycm9yKCBUSVhNTF9FUlJPUl9PUEVOSU5HX0ZJTEUsIDAsIDAsIFRJWE1MX0VOQ09ESU5HX1VOS05PV04gKTsKKwlyZXR1cm4gZmFsc2U7CiB9CiAKLQogYm9vbCBUaVhtbERvY3VtZW50OjpTYXZlRmlsZSggY29uc3QgY2hhciAqIGZpbGVuYW1lICkgY29uc3QKIHsKIAkvLyBUaGUgb2xkIGMgc3R1ZmYgbGl2ZXMgb24uLi4KLQlGSUxFKiBmcCA9IFRpWG1sRk9wZW4oIGZpbGVuYW1lLCAidyIgKTsKKwlGSUxFKiBmcCA9IGZvcGVuKCBmaWxlbmFtZSwgInciICk7CiAJaWYgKCBmcCApCiAJewotCQlib29sIHJlc3VsdCA9IFNhdmVGaWxlKCBmcCApOworCQlpZiAoIHVzZU1pY3Jvc29mdEJPTSApIAorCQl7CisJCQljb25zdCB1bnNpZ25lZCBjaGFyIFRJWE1MX1VURl9MRUFEXzAgPSAweGVmVTsKKwkJCWNvbnN0IHVuc2lnbmVkIGNoYXIgVElYTUxfVVRGX0xFQURfMSA9IDB4YmJVOworCQkJY29uc3QgdW5zaWduZWQgY2hhciBUSVhNTF9VVEZfTEVBRF8yID0gMHhiZlU7CisKKwkJCWZwdXRjKCBUSVhNTF9VVEZfTEVBRF8wLCBmcCApOworCQkJZnB1dGMoIFRJWE1MX1VURl9MRUFEXzEsIGZwICk7CisJCQlmcHV0YyggVElYTUxfVVRGX0xFQURfMiwgZnAgKTsKKwkJfQorCQlQcmludCggZnAsIDAgKTsKIAkJZmNsb3NlKCBmcCApOwotCQlyZXR1cm4gcmVzdWx0OworCQlyZXR1cm4gdHJ1ZTsKIAl9CiAJcmV0dXJuIGZhbHNlOwogfQogCiAKLWJvb2wgVGlYbWxEb2N1bWVudDo6U2F2ZUZpbGUoIEZJTEUqIGZwICkgY29uc3QKLXsKLQlpZiAoIHVzZU1pY3Jvc29mdEJPTSApIAotCXsKLQkJY29uc3QgdW5zaWduZWQgY2hhciBUSVhNTF9VVEZfTEVBRF8wID0gMHhlZlU7Ci0JCWNvbnN0IHVuc2lnbmVkIGNoYXIgVElYTUxfVVRGX0xFQURfMSA9IDB4YmJVOwotCQljb25zdCB1bnNpZ25lZCBjaGFyIFRJWE1MX1VURl9MRUFEXzIgPSAweGJmVTsKLQotCQlmcHV0YyggVElYTUxfVVRGX0xFQURfMCwgZnAgKTsKLQkJZnB1dGMoIFRJWE1MX1VURl9MRUFEXzEsIGZwICk7Ci0JCWZwdXRjKCBUSVhNTF9VVEZfTEVBRF8yLCBmcCApOwotCX0KLQlQcmludCggZnAsIDAgKTsKLQlyZXR1cm4gKGZlcnJvcihmcCkgPT0gMCk7Ci19Ci0KLQogdm9pZCBUaVhtbERvY3VtZW50OjpDb3B5VG8oIFRpWG1sRG9jdW1lbnQqIHRhcmdldCApIGNvbnN0CiB7CiAJVGlYbWxOb2RlOjpDb3B5VG8oIHRhcmdldCApOwogCiAJdGFyZ2V0LT5lcnJvciA9IGVycm9yOwotCXRhcmdldC0+ZXJyb3JJZCA9IGVycm9ySWQ7Ci0JdGFyZ2V0LT5lcnJvckRlc2MgPSBlcnJvckRlc2M7Ci0JdGFyZ2V0LT50YWJzaXplID0gdGFic2l6ZTsKLQl0YXJnZXQtPmVycm9yTG9jYXRpb24gPSBlcnJvckxvY2F0aW9uOwotCXRhcmdldC0+dXNlTWljcm9zb2Z0Qk9NID0gdXNlTWljcm9zb2Z0Qk9NOworCXRhcmdldC0+ZXJyb3JEZXNjID0gZXJyb3JEZXNjLmNfc3RyICgpOwogCiAJVGlYbWxOb2RlKiBub2RlID0gMDsKIAlmb3IgKCBub2RlID0gZmlyc3RDaGlsZDsgbm9kZTsgbm9kZSA9IG5vZGUtPk5leHRTaWJsaW5nKCkgKQpAQCAtMTE0NCwyNiArMTEzNSwyNyBAQAogCiB2b2lkIFRpWG1sRG9jdW1lbnQ6OlByaW50KCBGSUxFKiBjZmlsZSwgaW50IGRlcHRoICkgY29uc3QKIHsKLQlhc3NlcnQoIGNmaWxlICk7Ci0JZm9yICggY29uc3QgVGlYbWxOb2RlKiBub2RlPUZpcnN0Q2hpbGQoKTsgbm9kZTsgbm9kZT1ub2RlLT5OZXh0U2libGluZygpICkKKwljb25zdCBUaVhtbE5vZGUqIG5vZGU7CisJZm9yICggbm9kZT1GaXJzdENoaWxkKCk7IG5vZGU7IG5vZGU9bm9kZS0+TmV4dFNpYmxpbmcoKSApCiAJewogCQlub2RlLT5QcmludCggY2ZpbGUsIGRlcHRoICk7CiAJCWZwcmludGYoIGNmaWxlLCAiXG4iICk7CiAJfQogfQogCi0KLWJvb2wgVGlYbWxEb2N1bWVudDo6QWNjZXB0KCBUaVhtbFZpc2l0b3IqIHZpc2l0b3IgKSBjb25zdAordm9pZCBUaVhtbERvY3VtZW50OjpTdHJlYW1PdXQoIFRJWE1MX09TVFJFQU0gKiBvdXQgKSBjb25zdAogewotCWlmICggdmlzaXRvci0+VmlzaXRFbnRlciggKnRoaXMgKSApCisJY29uc3QgVGlYbWxOb2RlKiBub2RlOworCWZvciAoIG5vZGU9Rmlyc3RDaGlsZCgpOyBub2RlOyBub2RlPW5vZGUtPk5leHRTaWJsaW5nKCkgKQogCXsKLQkJZm9yICggY29uc3QgVGlYbWxOb2RlKiBub2RlPUZpcnN0Q2hpbGQoKTsgbm9kZTsgbm9kZT1ub2RlLT5OZXh0U2libGluZygpICkKLQkJewotCQkJaWYgKCAhbm9kZS0+QWNjZXB0KCB2aXNpdG9yICkgKQotCQkJCWJyZWFrOwotCQl9CisJCW5vZGUtPlN0cmVhbU91dCggb3V0ICk7CisKKwkJLy8gU3BlY2lhbCBydWxlIGZvciBzdHJlYW1zOiBzdG9wIGFmdGVyIHRoZSByb290IGVsZW1lbnQuCisJCS8vIFRoZSBzdHJlYW0gaW4gY29kZSB3aWxsIG9ubHkgcmVhZCBvbmUgZWxlbWVudCwgc28gZG9uJ3QKKwkJLy8gd3JpdGUgbW9yZSB0aGFuIG9uZS4KKwkJaWYgKCBub2RlLT5Ub0VsZW1lbnQoKSApCisJCQlicmVhazsKIAl9Ci0JcmV0dXJuIHZpc2l0b3ItPlZpc2l0RXhpdCggKnRoaXMgKTsKIH0KIAogCkBAIC0xMTc2LDcgKzExNjgsNiBAQAogCXJldHVybiBuZXh0OwogfQogCi0vKgogVGlYbWxBdHRyaWJ1dGUqIFRpWG1sQXR0cmlidXRlOjpOZXh0KCkKIHsKIAkvLyBXZSBhcmUgdXNpbmcga25vd2xlZGdlIG9mIHRoZSBzZW50aW5lbC4gVGhlIHNlbnRpbmVsCkBAIC0xMTg1LDcgKzExNzYsNiBAQAogCQlyZXR1cm4gMDsKIAlyZXR1cm4gbmV4dDsKIH0KLSovCiAKIGNvbnN0IFRpWG1sQXR0cmlidXRlKiBUaVhtbEF0dHJpYnV0ZTo6UHJldmlvdXMoKSBjb25zdAogewpAQCAtMTE5Niw3ICsxMTg2LDYgQEAKIAlyZXR1cm4gcHJldjsKIH0KIAotLyoKIFRpWG1sQXR0cmlidXRlKiBUaVhtbEF0dHJpYnV0ZTo6UHJldmlvdXMoKQogewogCS8vIFdlIGFyZSB1c2luZyBrbm93bGVkZ2Ugb2YgdGhlIHNlbnRpbmVsLiBUaGUgc2VudGluZWwKQEAgLTEyMDUsNDQgKzExOTQsNDkgQEAKIAkJcmV0dXJuIDA7CiAJcmV0dXJuIHByZXY7CiB9Ci0qLwogCi12b2lkIFRpWG1sQXR0cmlidXRlOjpQcmludCggRklMRSogY2ZpbGUsIGludCAvKmRlcHRoKi8sIFRJWE1MX1NUUklORyogc3RyICkgY29uc3QKK3ZvaWQgVGlYbWxBdHRyaWJ1dGU6OlByaW50KCBGSUxFKiBjZmlsZSwgaW50IC8qZGVwdGgqLyApIGNvbnN0CiB7CiAJVElYTUxfU1RSSU5HIG4sIHY7CiAKLQlFbmNvZGVTdHJpbmcoIG5hbWUsICZuICk7Ci0JRW5jb2RlU3RyaW5nKCB2YWx1ZSwgJnYgKTsKKwlQdXRTdHJpbmcoIG5hbWUsICZuICk7CisJUHV0U3RyaW5nKCB2YWx1ZSwgJnYgKTsKIAotCWlmICh2YWx1ZS5maW5kICgnXCInKSA9PSBUSVhNTF9TVFJJTkc6Om5wb3MpIHsKLQkJaWYgKCBjZmlsZSApIHsKLQkJCWZwcmludGYgKGNmaWxlLCAiJXM9XCIlc1wiIiwgbi5jX3N0cigpLCB2LmNfc3RyKCkgKTsKLQkJfQotCQlpZiAoIHN0ciApIHsKLQkJCSgqc3RyKSArPSBuOyAoKnN0cikgKz0gIj1cIiI7ICgqc3RyKSArPSB2OyAoKnN0cikgKz0gIlwiIjsKLQkJfQotCX0KLQllbHNlIHsKLQkJaWYgKCBjZmlsZSApIHsKLQkJCWZwcmludGYgKGNmaWxlLCAiJXM9JyVzJyIsIG4uY19zdHIoKSwgdi5jX3N0cigpICk7Ci0JCX0KLQkJaWYgKCBzdHIgKSB7Ci0JCQkoKnN0cikgKz0gbjsgKCpzdHIpICs9ICI9JyI7ICgqc3RyKSArPSB2OyAoKnN0cikgKz0gIiciOwotCQl9Ci0JfQorCWlmICh2YWx1ZS5maW5kICgnXCInKSA9PSBUSVhNTF9TVFJJTkc6Om5wb3MpCisJCWZwcmludGYgKGNmaWxlLCAiJXM9XCIlc1wiIiwgbi5jX3N0cigpLCB2LmNfc3RyKCkgKTsKKwllbHNlCisJCWZwcmludGYgKGNmaWxlLCAiJXM9JyVzJyIsIG4uY19zdHIoKSwgdi5jX3N0cigpICk7CiB9CiAKIAordm9pZCBUaVhtbEF0dHJpYnV0ZTo6U3RyZWFtT3V0KCBUSVhNTF9PU1RSRUFNICogc3RyZWFtICkgY29uc3QKK3sKKwlpZiAodmFsdWUuZmluZCggJ1wiJyApICE9IFRJWE1MX1NUUklORzo6bnBvcykKKwl7CisJCVB1dFN0cmluZyggbmFtZSwgc3RyZWFtICk7CisJCSgqc3RyZWFtKSA8PCAiPSIgPDwgIiciOworCQlQdXRTdHJpbmcoIHZhbHVlLCBzdHJlYW0gKTsKKwkJKCpzdHJlYW0pIDw8ICInIjsKKwl9CisJZWxzZQorCXsKKwkJUHV0U3RyaW5nKCBuYW1lLCBzdHJlYW0gKTsKKwkJKCpzdHJlYW0pIDw8ICI9IiA8PCAiXCIiOworCQlQdXRTdHJpbmcoIHZhbHVlLCBzdHJlYW0gKTsKKwkJKCpzdHJlYW0pIDw8ICJcIiI7CisJfQorfQorCiBpbnQgVGlYbWxBdHRyaWJ1dGU6OlF1ZXJ5SW50VmFsdWUoIGludCogaXZhbCApIGNvbnN0CiB7Ci0JaWYgKCBUSVhNTF9TU0NBTkYoIHZhbHVlLmNfc3RyKCksICIlZCIsIGl2YWwgKSA9PSAxICkKKwlpZiAoIHNzY2FuZiggdmFsdWUuY19zdHIoKSwgIiVkIiwgaXZhbCApID09IDEgKQogCQlyZXR1cm4gVElYTUxfU1VDQ0VTUzsKIAlyZXR1cm4gVElYTUxfV1JPTkdfVFlQRTsKIH0KIAogaW50IFRpWG1sQXR0cmlidXRlOjpRdWVyeURvdWJsZVZhbHVlKCBkb3VibGUqIGR2YWwgKSBjb25zdAogewotCWlmICggVElYTUxfU1NDQU5GKCB2YWx1ZS5jX3N0cigpLCAiJWxmIiwgZHZhbCApID09IDEgKQorCWlmICggc3NjYW5mKCB2YWx1ZS5jX3N0cigpLCAiJWxmIiwgZHZhbCApID09IDEgKQogCQlyZXR1cm4gVElYTUxfU1VDQ0VTUzsKIAlyZXR1cm4gVElYTUxfV1JPTkdfVFlQRTsKIH0KQEAgLTEyNjIsOSArMTI1Niw5IEBACiB7CiAJY2hhciBidWYgWzI1Nl07CiAJI2lmIGRlZmluZWQoVElYTUxfU05QUklOVEYpCQkKLQkJVElYTUxfU05QUklOVEYoIGJ1Ziwgc2l6ZW9mKGJ1ZiksICIlZyIsIF92YWx1ZSk7CisJCVRJWE1MX1NOUFJJTlRGKCBidWYsIHNpemVvZihidWYpLCAiJWxmIiwgX3ZhbHVlKTsKIAkjZWxzZQotCQlzcHJpbnRmIChidWYsICIlZyIsIF92YWx1ZSk7CisJCXNwcmludGYgKGJ1ZiwgIiVsZiIsIF92YWx1ZSk7CiAJI2VuZGlmCiAJU2V0VmFsdWUgKGJ1Zik7CiB9CkBAIC0xMjgwLDMwICsxMjc0LDM2IEBACiB9CiAKIAotVGlYbWxDb21tZW50OjpUaVhtbENvbW1lbnQoIGNvbnN0IFRpWG1sQ29tbWVudCYgY29weSApIDogVGlYbWxOb2RlKCBUaVhtbE5vZGU6OlRJTllYTUxfQ09NTUVOVCApCitUaVhtbENvbW1lbnQ6OlRpWG1sQ29tbWVudCggY29uc3QgVGlYbWxDb21tZW50JiBjb3B5ICkgOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6Q09NTUVOVCApCiB7CiAJY29weS5Db3B5VG8oIHRoaXMgKTsKIH0KIAogCi1UaVhtbENvbW1lbnQmIFRpWG1sQ29tbWVudDo6b3BlcmF0b3I9KCBjb25zdCBUaVhtbENvbW1lbnQmIGJhc2UgKQordm9pZCBUaVhtbENvbW1lbnQ6Om9wZXJhdG9yPSggY29uc3QgVGlYbWxDb21tZW50JiBiYXNlICkKIHsKIAlDbGVhcigpOwogCWJhc2UuQ29weVRvKCB0aGlzICk7Ci0JcmV0dXJuICp0aGlzOwogfQogCiAKIHZvaWQgVGlYbWxDb21tZW50OjpQcmludCggRklMRSogY2ZpbGUsIGludCBkZXB0aCApIGNvbnN0CiB7Ci0JYXNzZXJ0KCBjZmlsZSApOwogCWZvciAoIGludCBpPTA7IGk8ZGVwdGg7IGkrKyApCiAJewotCQlmcHJpbnRmKCBjZmlsZSwgICIgICAgIiApOworCQlmcHV0cyggIiAgICAiLCBjZmlsZSApOwogCX0KIAlmcHJpbnRmKCBjZmlsZSwgIjwhLS0lcy0tPiIsIHZhbHVlLmNfc3RyKCkgKTsKIH0KIAordm9pZCBUaVhtbENvbW1lbnQ6OlN0cmVhbU91dCggVElYTUxfT1NUUkVBTSAqIHN0cmVhbSApIGNvbnN0Cit7CisJKCpzdHJlYW0pIDw8ICI8IS0tIjsKKwkvL1B1dFN0cmluZyggdmFsdWUsIHN0cmVhbSApOworCSgqc3RyZWFtKSA8PCB2YWx1ZTsKKwkoKnN0cmVhbSkgPDwgIi0tPiI7Cit9CisKIAogdm9pZCBUaVhtbENvbW1lbnQ6OkNvcHlUbyggVGlYbWxDb21tZW50KiB0YXJnZXQgKSBjb25zdAogewpAQCAtMTMxMSwxMiArMTMxMSw2IEBACiB9CiAKIAotYm9vbCBUaVhtbENvbW1lbnQ6OkFjY2VwdCggVGlYbWxWaXNpdG9yKiB2aXNpdG9yICkgY29uc3QKLXsKLQlyZXR1cm4gdmlzaXRvci0+VmlzaXQoICp0aGlzICk7Ci19Ci0KLQogVGlYbWxOb2RlKiBUaVhtbENvbW1lbnQ6OkNsb25lKCkgY29uc3QKIHsKIAlUaVhtbENvbW1lbnQqIGNsb25lID0gbmV3IFRpWG1sQ29tbWVudCgpOwpAQCAtMTMzMSw3ICsxMzI1LDYgQEAKIAogdm9pZCBUaVhtbFRleHQ6OlByaW50KCBGSUxFKiBjZmlsZSwgaW50IGRlcHRoICkgY29uc3QKIHsKLQlhc3NlcnQoIGNmaWxlICk7CiAJaWYgKCBjZGF0YSApCiAJewogCQlpbnQgaTsKQEAgLTEzMzksMTcgKzEzMzIsMzggQEAKIAkJZm9yICggaT0wOyBpPGRlcHRoOyBpKysgKSB7CiAJCQlmcHJpbnRmKCBjZmlsZSwgIiAgICAiICk7CiAJCX0KLQkJZnByaW50ZiggY2ZpbGUsICI8IVtDREFUQVslc11dPlxuIiwgdmFsdWUuY19zdHIoKSApOwkvLyB1bmZvcm1hdHRlZCBvdXRwdXQKKwkJZnByaW50ZiggY2ZpbGUsICI8IVtDREFUQVtcbiIgKTsKKworCQlmcHJpbnRmKCBjZmlsZSwgIiVzIiwgdmFsdWUuY19zdHIoKSApOwkvLyB1bmZvcm1hdHRlZCBvdXRwdXQKKworCQlmcHJpbnRmKCBjZmlsZSwgIlxuIiApOworCQlmb3IgKCBpPTA7IGk8ZGVwdGg7IGkrKyApIHsKKwkJCWZwcmludGYoIGNmaWxlLCAiICAgICIgKTsKKwkJfQorCQlmcHJpbnRmKCBjZmlsZSwgIl1dPlxuIiApOwogCX0KIAllbHNlCiAJewogCQlUSVhNTF9TVFJJTkcgYnVmZmVyOwotCQlFbmNvZGVTdHJpbmcoIHZhbHVlLCAmYnVmZmVyICk7CisJCVB1dFN0cmluZyggdmFsdWUsICZidWZmZXIgKTsKIAkJZnByaW50ZiggY2ZpbGUsICIlcyIsIGJ1ZmZlci5jX3N0cigpICk7CiAJfQogfQogCiAKK3ZvaWQgVGlYbWxUZXh0OjpTdHJlYW1PdXQoIFRJWE1MX09TVFJFQU0gKiBzdHJlYW0gKSBjb25zdAoreworCWlmICggY2RhdGEgKQorCXsKKwkJKCpzdHJlYW0pIDw8ICI8IVtDREFUQVsiIDw8IHZhbHVlIDw8ICJdXT4iOworCX0KKwllbHNlCisJeworCQlQdXRTdHJpbmcoIHZhbHVlLCBzdHJlYW0gKTsKKwl9Cit9CisKKwogdm9pZCBUaVhtbFRleHQ6OkNvcHlUbyggVGlYbWxUZXh0KiB0YXJnZXQgKSBjb25zdAogewogCVRpWG1sTm9kZTo6Q29weVRvKCB0YXJnZXQgKTsKQEAgLTEzNTcsMTIgKzEzNzEsNiBAQAogfQogCiAKLWJvb2wgVGlYbWxUZXh0OjpBY2NlcHQoIFRpWG1sVmlzaXRvciogdmlzaXRvciApIGNvbnN0Ci17Ci0JcmV0dXJuIHZpc2l0b3ItPlZpc2l0KCAqdGhpcyApOwotfQotCi0KIFRpWG1sTm9kZSogVGlYbWxUZXh0OjpDbG9uZSgpIGNvbnN0CiB7CQogCVRpWG1sVGV4dCogY2xvbmUgPSAwOwpAQCAtMTM3OSw3ICsxMzg3LDcgQEAKIFRpWG1sRGVjbGFyYXRpb246OlRpWG1sRGVjbGFyYXRpb24oIGNvbnN0IGNoYXIgKiBfdmVyc2lvbiwKIAkJCQkJCQkJCWNvbnN0IGNoYXIgKiBfZW5jb2RpbmcsCiAJCQkJCQkJCQljb25zdCBjaGFyICogX3N0YW5kYWxvbmUgKQotCTogVGlYbWxOb2RlKCBUaVhtbE5vZGU6OlRJTllYTUxfREVDTEFSQVRJT04gKQorCTogVGlYbWxOb2RlKCBUaVhtbE5vZGU6OkRFQ0xBUkFUSU9OICkKIHsKIAl2ZXJzaW9uID0gX3ZlcnNpb247CiAJZW5jb2RpbmcgPSBfZW5jb2Rpbmc7CkBAIC0xMzkxLDcgKzEzOTksNyBAQAogVGlYbWxEZWNsYXJhdGlvbjo6VGlYbWxEZWNsYXJhdGlvbigJY29uc3Qgc3RkOjpzdHJpbmcmIF92ZXJzaW9uLAogCQkJCQkJCQkJY29uc3Qgc3RkOjpzdHJpbmcmIF9lbmNvZGluZywKIAkJCQkJCQkJCWNvbnN0IHN0ZDo6c3RyaW5nJiBfc3RhbmRhbG9uZSApCi0JOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6VElOWVhNTF9ERUNMQVJBVElPTiApCisJOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6REVDTEFSQVRJT04gKQogewogCXZlcnNpb24gPSBfdmVyc2lvbjsKIAllbmNvZGluZyA9IF9lbmNvZGluZzsKQEAgLTE0MDEsMzkgKzE0MDksNTUgQEAKIAogCiBUaVhtbERlY2xhcmF0aW9uOjpUaVhtbERlY2xhcmF0aW9uKCBjb25zdCBUaVhtbERlY2xhcmF0aW9uJiBjb3B5ICkKLQk6IFRpWG1sTm9kZSggVGlYbWxOb2RlOjpUSU5ZWE1MX0RFQ0xBUkFUSU9OICkKKwk6IFRpWG1sTm9kZSggVGlYbWxOb2RlOjpERUNMQVJBVElPTiApCiB7CiAJY29weS5Db3B5VG8oIHRoaXMgKTsJCiB9CiAKIAotVGlYbWxEZWNsYXJhdGlvbiYgVGlYbWxEZWNsYXJhdGlvbjo6b3BlcmF0b3I9KCBjb25zdCBUaVhtbERlY2xhcmF0aW9uJiBjb3B5ICkKK3ZvaWQgVGlYbWxEZWNsYXJhdGlvbjo6b3BlcmF0b3I9KCBjb25zdCBUaVhtbERlY2xhcmF0aW9uJiBjb3B5ICkKIHsKIAlDbGVhcigpOwogCWNvcHkuQ29weVRvKCB0aGlzICk7Ci0JcmV0dXJuICp0aGlzOwogfQogCiAKLXZvaWQgVGlYbWxEZWNsYXJhdGlvbjo6UHJpbnQoIEZJTEUqIGNmaWxlLCBpbnQgLypkZXB0aCovLCBUSVhNTF9TVFJJTkcqIHN0ciApIGNvbnN0Cit2b2lkIFRpWG1sRGVjbGFyYXRpb246OlByaW50KCBGSUxFKiBjZmlsZSwgaW50IC8qZGVwdGgqLyApIGNvbnN0CiB7Ci0JaWYgKCBjZmlsZSApIGZwcmludGYoIGNmaWxlLCAiPD94bWwgIiApOwotCWlmICggc3RyICkJICgqc3RyKSArPSAiPD94bWwgIjsKKwlmcHJpbnRmIChjZmlsZSwgIjw/eG1sICIpOwogCi0JaWYgKCAhdmVyc2lvbi5lbXB0eSgpICkgewotCQlpZiAoIGNmaWxlICkgZnByaW50ZiAoY2ZpbGUsICJ2ZXJzaW9uPVwiJXNcIiAiLCB2ZXJzaW9uLmNfc3RyICgpKTsKLQkJaWYgKCBzdHIgKSB7ICgqc3RyKSArPSAidmVyc2lvbj1cIiI7ICgqc3RyKSArPSB2ZXJzaW9uOyAoKnN0cikgKz0gIlwiICI7IH0KKwlpZiAoICF2ZXJzaW9uLmVtcHR5KCkgKQorCQlmcHJpbnRmIChjZmlsZSwgInZlcnNpb249XCIlc1wiICIsIHZlcnNpb24uY19zdHIgKCkpOworCWlmICggIWVuY29kaW5nLmVtcHR5KCkgKQorCQlmcHJpbnRmIChjZmlsZSwgImVuY29kaW5nPVwiJXNcIiAiLCBlbmNvZGluZy5jX3N0ciAoKSk7CisJaWYgKCAhc3RhbmRhbG9uZS5lbXB0eSgpICkKKwkJZnByaW50ZiAoY2ZpbGUsICJzdGFuZGFsb25lPVwiJXNcIiAiLCBzdGFuZGFsb25lLmNfc3RyICgpKTsKKwlmcHJpbnRmIChjZmlsZSwgIj8+Iik7Cit9CisKK3ZvaWQgVGlYbWxEZWNsYXJhdGlvbjo6U3RyZWFtT3V0KCBUSVhNTF9PU1RSRUFNICogc3RyZWFtICkgY29uc3QKK3sKKwkoKnN0cmVhbSkgPDwgIjw/eG1sICI7CisKKwlpZiAoICF2ZXJzaW9uLmVtcHR5KCkgKQorCXsKKwkJKCpzdHJlYW0pIDw8ICJ2ZXJzaW9uPVwiIjsKKwkJUHV0U3RyaW5nKCB2ZXJzaW9uLCBzdHJlYW0gKTsKKwkJKCpzdHJlYW0pIDw8ICJcIiAiOwogCX0KLQlpZiAoICFlbmNvZGluZy5lbXB0eSgpICkgewotCQlpZiAoIGNmaWxlICkgZnByaW50ZiAoY2ZpbGUsICJlbmNvZGluZz1cIiVzXCIgIiwgZW5jb2RpbmcuY19zdHIgKCkpOwotCQlpZiAoIHN0ciApIHsgKCpzdHIpICs9ICJlbmNvZGluZz1cIiI7ICgqc3RyKSArPSBlbmNvZGluZzsgKCpzdHIpICs9ICJcIiAiOyB9CisJaWYgKCAhZW5jb2RpbmcuZW1wdHkoKSApCisJeworCQkoKnN0cmVhbSkgPDwgImVuY29kaW5nPVwiIjsKKwkJUHV0U3RyaW5nKCBlbmNvZGluZywgc3RyZWFtICk7CisJCSgqc3RyZWFtICkgPDwgIlwiICI7CiAJfQotCWlmICggIXN0YW5kYWxvbmUuZW1wdHkoKSApIHsKLQkJaWYgKCBjZmlsZSApIGZwcmludGYgKGNmaWxlLCAic3RhbmRhbG9uZT1cIiVzXCIgIiwgc3RhbmRhbG9uZS5jX3N0ciAoKSk7Ci0JCWlmICggc3RyICkgeyAoKnN0cikgKz0gInN0YW5kYWxvbmU9XCIiOyAoKnN0cikgKz0gc3RhbmRhbG9uZTsgKCpzdHIpICs9ICJcIiAiOyB9CisJaWYgKCAhc3RhbmRhbG9uZS5lbXB0eSgpICkKKwl7CisJCSgqc3RyZWFtKSA8PCAic3RhbmRhbG9uZT1cIiI7CisJCVB1dFN0cmluZyggc3RhbmRhbG9uZSwgc3RyZWFtICk7CisJCSgqc3RyZWFtKSA8PCAiXCIgIjsKIAl9Ci0JaWYgKCBjZmlsZSApIGZwcmludGYoIGNmaWxlLCAiPz4iICk7Ci0JaWYgKCBzdHIgKQkgKCpzdHIpICs9ICI/PiI7CisJKCpzdHJlYW0pIDw8ICI/PiI7CiB9CiAKIApAQCAtMTQ0NywxMiArMTQ3MSw2IEBACiB9CiAKIAotYm9vbCBUaVhtbERlY2xhcmF0aW9uOjpBY2NlcHQoIFRpWG1sVmlzaXRvciogdmlzaXRvciApIGNvbnN0Ci17Ci0JcmV0dXJuIHZpc2l0b3ItPlZpc2l0KCAqdGhpcyApOwotfQotCi0KIFRpWG1sTm9kZSogVGlYbWxEZWNsYXJhdGlvbjo6Q2xvbmUoKSBjb25zdAogewkKIAlUaVhtbERlY2xhcmF0aW9uKiBjbG9uZSA9IG5ldyBUaVhtbERlY2xhcmF0aW9uKCk7CkBAIC0xNDczLDE1ICsxNDkxLDE1IEBACiB9CiAKIAotdm9pZCBUaVhtbFVua25vd246OkNvcHlUbyggVGlYbWxVbmtub3duKiB0YXJnZXQgKSBjb25zdAordm9pZCBUaVhtbFVua25vd246OlN0cmVhbU91dCggVElYTUxfT1NUUkVBTSAqIHN0cmVhbSApIGNvbnN0CiB7Ci0JVGlYbWxOb2RlOjpDb3B5VG8oIHRhcmdldCApOworCSgqc3RyZWFtKSA8PCAiPCIgPDwgdmFsdWUgPDwgIj4iOwkJLy8gRG9uJ3QgdXNlIGVudGl0aWVzIGhlcmUhIEl0IGlzIHVua25vd24uCiB9CiAKIAotYm9vbCBUaVhtbFVua25vd246OkFjY2VwdCggVGlYbWxWaXNpdG9yKiB2aXNpdG9yICkgY29uc3QKK3ZvaWQgVGlYbWxVbmtub3duOjpDb3B5VG8oIFRpWG1sVW5rbm93biogdGFyZ2V0ICkgY29uc3QKIHsKLQlyZXR1cm4gdmlzaXRvci0+VmlzaXQoICp0aGlzICk7CisJVGlYbWxOb2RlOjpDb3B5VG8oIHRhcmdldCApOwogfQogCiAKQEAgLTE1MTMsMTEgKzE1MzEsNyBAQAogCiB2b2lkIFRpWG1sQXR0cmlidXRlU2V0OjpBZGQoIFRpWG1sQXR0cmlidXRlKiBhZGRNZSApCiB7Ci0gICAgI2lmZGVmIFRJWE1MX1VTRV9TVEwKLQlhc3NlcnQoICFGaW5kKCBUSVhNTF9TVFJJTkcoIGFkZE1lLT5OYW1lKCkgKSApICk7CS8vIFNob3VsZG4ndCBiZSBtdWx0aXBseSBhZGRpbmcgdG8gdGhlIHNldC4KLQkjZWxzZQogCWFzc2VydCggIUZpbmQoIGFkZE1lLT5OYW1lKCkgKSApOwkvLyBTaG91bGRuJ3QgYmUgbXVsdGlwbHkgYWRkaW5nIHRvIHRoZSBzZXQuCi0JI2VuZGlmCiAKIAlhZGRNZS0+bmV4dCA9ICZzZW50aW5lbDsKIAlhZGRNZS0+cHJldiA9IHNlbnRpbmVsLnByZXY7CkBAIC0xNTQ0LDExICsxNTU4LDExIEBACiAJYXNzZXJ0KCAwICk7CQkvLyB3ZSB0cmllZCB0byByZW1vdmUgYSBub24tbGlua2VkIGF0dHJpYnV0ZS4KIH0KIAotCi0jaWZkZWYgVElYTUxfVVNFX1NUTAotVGlYbWxBdHRyaWJ1dGUqIFRpWG1sQXR0cmlidXRlU2V0OjpGaW5kKCBjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSApIGNvbnN0Citjb25zdCBUaVhtbEF0dHJpYnV0ZSogVGlYbWxBdHRyaWJ1dGVTZXQ6OkZpbmQoIGNvbnN0IGNoYXIgKiBuYW1lICkgY29uc3QKIHsKLQlmb3IoIFRpWG1sQXR0cmlidXRlKiBub2RlID0gc2VudGluZWwubmV4dDsgbm9kZSAhPSAmc2VudGluZWw7IG5vZGUgPSBub2RlLT5uZXh0ICkKKwljb25zdCBUaVhtbEF0dHJpYnV0ZSogbm9kZTsKKworCWZvciggbm9kZSA9IHNlbnRpbmVsLm5leHQ7IG5vZGUgIT0gJnNlbnRpbmVsOyBub2RlID0gbm9kZS0+bmV4dCApCiAJewogCQlpZiAoIG5vZGUtPm5hbWUgPT0gbmFtZSApCiAJCQlyZXR1cm4gbm9kZTsKQEAgLTE1NTYsNDQgKzE1NzAsMjAgQEAKIAlyZXR1cm4gMDsKIH0KIAotVGlYbWxBdHRyaWJ1dGUqIFRpWG1sQXR0cmlidXRlU2V0OjpGaW5kT3JDcmVhdGUoIGNvbnN0IHN0ZDo6c3RyaW5nJiBfbmFtZSApCitUaVhtbEF0dHJpYnV0ZSoJVGlYbWxBdHRyaWJ1dGVTZXQ6OkZpbmQoIGNvbnN0IGNoYXIgKiBuYW1lICkKIHsKLQlUaVhtbEF0dHJpYnV0ZSogYXR0cmliID0gRmluZCggX25hbWUgKTsKLQlpZiAoICFhdHRyaWIgKSB7Ci0JCWF0dHJpYiA9IG5ldyBUaVhtbEF0dHJpYnV0ZSgpOwotCQlBZGQoIGF0dHJpYiApOwotCQlhdHRyaWItPlNldE5hbWUoIF9uYW1lICk7Ci0JfQotCXJldHVybiBhdHRyaWI7Ci19Ci0jZW5kaWYKKwlUaVhtbEF0dHJpYnV0ZSogbm9kZTsKIAotCi1UaVhtbEF0dHJpYnV0ZSogVGlYbWxBdHRyaWJ1dGVTZXQ6OkZpbmQoIGNvbnN0IGNoYXIqIG5hbWUgKSBjb25zdAotewotCWZvciggVGlYbWxBdHRyaWJ1dGUqIG5vZGUgPSBzZW50aW5lbC5uZXh0OyBub2RlICE9ICZzZW50aW5lbDsgbm9kZSA9IG5vZGUtPm5leHQgKQorCWZvciggbm9kZSA9IHNlbnRpbmVsLm5leHQ7IG5vZGUgIT0gJnNlbnRpbmVsOyBub2RlID0gbm9kZS0+bmV4dCApCiAJewotCQlpZiAoIHN0cmNtcCggbm9kZS0+bmFtZS5jX3N0cigpLCBuYW1lICkgPT0gMCApCisJCWlmICggbm9kZS0+bmFtZSA9PSBuYW1lICkKIAkJCXJldHVybiBub2RlOwogCX0KIAlyZXR1cm4gMDsKIH0KIAotCi1UaVhtbEF0dHJpYnV0ZSogVGlYbWxBdHRyaWJ1dGVTZXQ6OkZpbmRPckNyZWF0ZSggY29uc3QgY2hhciogX25hbWUgKQotewotCVRpWG1sQXR0cmlidXRlKiBhdHRyaWIgPSBGaW5kKCBfbmFtZSApOwotCWlmICggIWF0dHJpYiApIHsKLQkJYXR0cmliID0gbmV3IFRpWG1sQXR0cmlidXRlKCk7Ci0JCUFkZCggYXR0cmliICk7Ci0JCWF0dHJpYi0+U2V0TmFtZSggX25hbWUgKTsKLQl9Ci0JcmV0dXJuIGF0dHJpYjsKLX0KLQotCiAjaWZkZWYgVElYTUxfVVNFX1NUTAkKLXN0ZDo6aXN0cmVhbSYgb3BlcmF0b3I+PiAoc3RkOjppc3RyZWFtICYgaW4sIFRpWG1sTm9kZSAmIGJhc2UpCitUSVhNTF9JU1RSRUFNICYgb3BlcmF0b3IgPj4gKFRJWE1MX0lTVFJFQU0gJiBpbiwgVGlYbWxOb2RlICYgYmFzZSkKIHsKIAlUSVhNTF9TVFJJTkcgdGFnOwogCXRhZy5yZXNlcnZlKCA4ICogMTAwMCApOwpAQCAtMTYwNSwyNiArMTU5NSwyMSBAQAogI2VuZGlmCiAKIAotI2lmZGVmIFRJWE1MX1VTRV9TVEwJCi1zdGQ6Om9zdHJlYW0mIG9wZXJhdG9yPDwgKHN0ZDo6b3N0cmVhbSAmIG91dCwgY29uc3QgVGlYbWxOb2RlICYgYmFzZSkKK1RJWE1MX09TVFJFQU0gJiBvcGVyYXRvcjw8IChUSVhNTF9PU1RSRUFNICYgb3V0LCBjb25zdCBUaVhtbE5vZGUgJiBiYXNlKQogewotCVRpWG1sUHJpbnRlciBwcmludGVyOwotCXByaW50ZXIuU2V0U3RyZWFtUHJpbnRpbmcoKTsKLQliYXNlLkFjY2VwdCggJnByaW50ZXIgKTsKLQlvdXQgPDwgcHJpbnRlci5TdHIoKTsKLQorCWJhc2UuU3RyZWFtT3V0ICgmIG91dCk7CiAJcmV0dXJuIG91dDsKIH0KIAogCi1zdGQ6OnN0cmluZyYgb3BlcmF0b3I8PCAoc3RkOjpzdHJpbmcmIG91dCwgY29uc3QgVGlYbWxOb2RlJiBiYXNlICkKKyNpZmRlZiBUSVhNTF9VU0VfU1RMCQorc3RkOjpzdHJpbmcgJiBvcGVyYXRvcjw8IChzdGQ6OnN0cmluZyYgb3V0LCBjb25zdCBUaVhtbE5vZGUmIGJhc2UgKQogewotCVRpWG1sUHJpbnRlciBwcmludGVyOwotCXByaW50ZXIuU2V0U3RyZWFtUHJpbnRpbmcoKTsKLQliYXNlLkFjY2VwdCggJnByaW50ZXIgKTsKLQlvdXQuYXBwZW5kKCBwcmludGVyLlN0cigpICk7Ci0KLQlyZXR1cm4gb3V0OworICAgc3RkOjpvc3RyaW5nc3RyZWFtIG9zX3N0cmVhbSggc3RkOjpvc3RyaW5nc3RyZWFtOjpvdXQgKTsKKyAgIGJhc2UuU3RyZWFtT3V0KCAmb3Nfc3RyZWFtICk7CisgICAKKyAgIG91dC5hcHBlbmQoIG9zX3N0cmVhbS5zdHIoKSApOworICAgcmV0dXJuIG91dDsKIH0KICNlbmRpZgogCkBAIC0xNzUxLDEzNiArMTczNiwzIEBACiAJfQogCXJldHVybiBUaVhtbEhhbmRsZSggMCApOwogfQotCi0KLWJvb2wgVGlYbWxQcmludGVyOjpWaXNpdEVudGVyKCBjb25zdCBUaVhtbERvY3VtZW50JiApCi17Ci0JcmV0dXJuIHRydWU7Ci19Ci0KLWJvb2wgVGlYbWxQcmludGVyOjpWaXNpdEV4aXQoIGNvbnN0IFRpWG1sRG9jdW1lbnQmICkKLXsKLQlyZXR1cm4gdHJ1ZTsKLX0KLQotYm9vbCBUaVhtbFByaW50ZXI6OlZpc2l0RW50ZXIoIGNvbnN0IFRpWG1sRWxlbWVudCYgZWxlbWVudCwgY29uc3QgVGlYbWxBdHRyaWJ1dGUqIGZpcnN0QXR0cmlidXRlICkKLXsKLQlEb0luZGVudCgpOwotCWJ1ZmZlciArPSAiPCI7Ci0JYnVmZmVyICs9IGVsZW1lbnQuVmFsdWUoKTsKLQotCWZvciggY29uc3QgVGlYbWxBdHRyaWJ1dGUqIGF0dHJpYiA9IGZpcnN0QXR0cmlidXRlOyBhdHRyaWI7IGF0dHJpYiA9IGF0dHJpYi0+TmV4dCgpICkKLQl7Ci0JCWJ1ZmZlciArPSAiICI7Ci0JCWF0dHJpYi0+UHJpbnQoIDAsIDAsICZidWZmZXIgKTsKLQl9Ci0KLQlpZiAoICFlbGVtZW50LkZpcnN0Q2hpbGQoKSApIAotCXsKLQkJYnVmZmVyICs9ICIgLz4iOwotCQlEb0xpbmVCcmVhaygpOwotCX0KLQllbHNlIAotCXsKLQkJYnVmZmVyICs9ICI+IjsKLQkJaWYgKCAgICBlbGVtZW50LkZpcnN0Q2hpbGQoKS0+VG9UZXh0KCkKLQkJCSAgJiYgZWxlbWVudC5MYXN0Q2hpbGQoKSA9PSBlbGVtZW50LkZpcnN0Q2hpbGQoKQotCQkJICAmJiBlbGVtZW50LkZpcnN0Q2hpbGQoKS0+VG9UZXh0KCktPkNEQVRBKCkgPT0gZmFsc2UgKQotCQl7Ci0JCQlzaW1wbGVUZXh0UHJpbnQgPSB0cnVlOwotCQkJLy8gbm8gRG9MaW5lQnJlYWsoKSEKLQkJfQotCQllbHNlCi0JCXsKLQkJCURvTGluZUJyZWFrKCk7Ci0JCX0KLQl9Ci0JKytkZXB0aDsJCi0JcmV0dXJuIHRydWU7Ci19Ci0KLQotYm9vbCBUaVhtbFByaW50ZXI6OlZpc2l0RXhpdCggY29uc3QgVGlYbWxFbGVtZW50JiBlbGVtZW50ICkKLXsKLQktLWRlcHRoOwotCWlmICggIWVsZW1lbnQuRmlyc3RDaGlsZCgpICkgCi0JewotCQkvLyBub3RoaW5nLgotCX0KLQllbHNlIAotCXsKLQkJaWYgKCBzaW1wbGVUZXh0UHJpbnQgKQotCQl7Ci0JCQlzaW1wbGVUZXh0UHJpbnQgPSBmYWxzZTsKLQkJfQotCQllbHNlCi0JCXsKLQkJCURvSW5kZW50KCk7Ci0JCX0KLQkJYnVmZmVyICs9ICI8LyI7Ci0JCWJ1ZmZlciArPSBlbGVtZW50LlZhbHVlKCk7Ci0JCWJ1ZmZlciArPSAiPiI7Ci0JCURvTGluZUJyZWFrKCk7Ci0JfQotCXJldHVybiB0cnVlOwotfQotCi0KLWJvb2wgVGlYbWxQcmludGVyOjpWaXNpdCggY29uc3QgVGlYbWxUZXh0JiB0ZXh0ICkKLXsKLQlpZiAoIHRleHQuQ0RBVEEoKSApCi0JewotCQlEb0luZGVudCgpOwotCQlidWZmZXIgKz0gIjwhW0NEQVRBWyI7Ci0JCWJ1ZmZlciArPSB0ZXh0LlZhbHVlKCk7Ci0JCWJ1ZmZlciArPSAiXV0+IjsKLQkJRG9MaW5lQnJlYWsoKTsKLQl9Ci0JZWxzZSBpZiAoIHNpbXBsZVRleHRQcmludCApCi0JewotCQlUSVhNTF9TVFJJTkcgc3RyOwotCQlUaVhtbEJhc2U6OkVuY29kZVN0cmluZyggdGV4dC5WYWx1ZVRTdHIoKSwgJnN0ciApOwotCQlidWZmZXIgKz0gc3RyOwotCX0KLQllbHNlCi0JewotCQlEb0luZGVudCgpOwotCQlUSVhNTF9TVFJJTkcgc3RyOwotCQlUaVhtbEJhc2U6OkVuY29kZVN0cmluZyggdGV4dC5WYWx1ZVRTdHIoKSwgJnN0ciApOwotCQlidWZmZXIgKz0gc3RyOwotCQlEb0xpbmVCcmVhaygpOwotCX0KLQlyZXR1cm4gdHJ1ZTsKLX0KLQotCi1ib29sIFRpWG1sUHJpbnRlcjo6VmlzaXQoIGNvbnN0IFRpWG1sRGVjbGFyYXRpb24mIGRlY2xhcmF0aW9uICkKLXsKLQlEb0luZGVudCgpOwotCWRlY2xhcmF0aW9uLlByaW50KCAwLCAwLCAmYnVmZmVyICk7Ci0JRG9MaW5lQnJlYWsoKTsKLQlyZXR1cm4gdHJ1ZTsKLX0KLQotCi1ib29sIFRpWG1sUHJpbnRlcjo6VmlzaXQoIGNvbnN0IFRpWG1sQ29tbWVudCYgY29tbWVudCApCi17Ci0JRG9JbmRlbnQoKTsKLQlidWZmZXIgKz0gIjwhLS0iOwotCWJ1ZmZlciArPSBjb21tZW50LlZhbHVlKCk7Ci0JYnVmZmVyICs9ICItLT4iOwotCURvTGluZUJyZWFrKCk7Ci0JcmV0dXJuIHRydWU7Ci19Ci0KLQotYm9vbCBUaVhtbFByaW50ZXI6OlZpc2l0KCBjb25zdCBUaVhtbFVua25vd24mIHVua25vd24gKQotewotCURvSW5kZW50KCk7Ci0JYnVmZmVyICs9ICI8IjsKLQlidWZmZXIgKz0gdW5rbm93bi5WYWx1ZSgpOwotCWJ1ZmZlciArPSAiPiI7Ci0JRG9MaW5lQnJlYWsoKTsKLQlyZXR1cm4gdHJ1ZTsKLX0KLQpkaWZmIC0tZ2l0IGEvdGlueXhtbC5kc3cgYi90aW55eG1sLmRzdwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kMDlkMGVlCi0tLSAvZGV2L251bGwKKysrIGIvdGlueXhtbC5kc3cKQEAgLTAsMCArMSw3MSBAQAorTWljcm9zb2Z0IERldmVsb3BlciBTdHVkaW8gV29ya3NwYWNlIEZpbGUsIEZvcm1hdCBWZXJzaW9uIDYuMDANCisjIFdBUk5JTkc6IERPIE5PVCBFRElUIE9SIERFTEVURSBUSElTIFdPUktTUEFDRSBGSUxFIQ0KKw0KKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCisNCitQcm9qZWN0OiAidGlueVhtbFRlc3QiPS5cdGlueVhtbFRlc3QuZHNwIC0gUGFja2FnZSBPd25lcj08ND4NCisNCitQYWNrYWdlPTw1Pg0KK3t7ew0KK319fQ0KKw0KK1BhY2thZ2U9PDQ+DQore3t7DQorICAgIEJlZ2luIFByb2plY3QgRGVwZW5kZW5jeQ0KKyAgICBQcm9qZWN0X0RlcF9OYW1lIHRpbnl4bWwNCisgICAgRW5kIFByb2plY3QgRGVwZW5kZW5jeQ0KK319fQ0KKw0KKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCisNCitQcm9qZWN0OiAidGlueVhtbFRlc3RTVEwiPS5cdGlueVhtbFRlc3RTVEwuZHNwIC0gUGFja2FnZSBPd25lcj08ND4NCisNCitQYWNrYWdlPTw1Pg0KK3t7ew0KK319fQ0KKw0KK1BhY2thZ2U9PDQ+DQore3t7DQorICAgIEJlZ2luIFByb2plY3QgRGVwZW5kZW5jeQ0KKyAgICBQcm9qZWN0X0RlcF9OYW1lIHRpbnl4bWxTVEwNCisgICAgRW5kIFByb2plY3QgRGVwZW5kZW5jeQ0KK319fQ0KKw0KKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCisNCitQcm9qZWN0OiAidGlueXhtbCI9Llx0aW55eG1sX2xpYi5kc3AgLSBQYWNrYWdlIE93bmVyPTw0Pg0KKw0KK1BhY2thZ2U9PDU+DQore3t7DQorfX19DQorDQorUGFja2FnZT08ND4NCit7e3sNCit9fX0NCisNCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQorDQorUHJvamVjdDogInRpbnl4bWxTVEwiPS5cdGlueXhtbFNUTC5kc3AgLSBQYWNrYWdlIE93bmVyPTw0Pg0KKw0KK1BhY2thZ2U9PDU+DQore3t7DQorfX19DQorDQorUGFja2FnZT08ND4NCit7e3sNCit9fX0NCisNCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQorDQorR2xvYmFsOg0KKw0KK1BhY2thZ2U9PDU+DQore3t7DQorfX19DQorDQorUGFja2FnZT08Mz4NCit7e3sNCit9fX0NCisNCisjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQorDQpkaWZmIC0tZ2l0IGEvdGlueXhtbC5oIGIvdGlueXhtbC5oCmluZGV4IGEzNTg5ZTUuLjE4Y2Y5NGYgMTAwNjQ0Ci0tLSBhL3Rpbnl4bWwuaAorKysgYi90aW55eG1sLmgKQEAgLTEsNiArMSw2IEBACiAvKgogd3d3LnNvdXJjZWZvcmdlLm5ldC9wcm9qZWN0cy90aW55eG1sCi1PcmlnaW5hbCBjb2RlIGJ5IExlZSBUaG9tYXNvbiAod3d3LmdyaW5uaW5nbGl6YXJkLmNvbSkKK09yaWdpbmFsIGNvZGUgKDIuMCBhbmQgZWFybGllciApY29weXJpZ2h0IChjKSAyMDAwLTIwMDIgTGVlIFRob21hc29uICh3d3cuZ3Jpbm5pbmdsaXphcmQuY29tKQogCiBUaGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVkICdhcy1pcycsIHdpdGhvdXQgYW55IGV4cHJlc3Mgb3IgaW1wbGllZAogd2FycmFudHkuIEluIG5vIGV2ZW50IHdpbGwgdGhlIGF1dGhvcnMgYmUgaGVsZCBsaWFibGUgZm9yIGFueQpAQCAtNDMsNDAgKzQzLDQyIEBACiAjZGVmaW5lIERFQlVHCiAjZW5kaWYKIAorI2lmIGRlZmluZWQoIERFQlVHICkgJiYgZGVmaW5lZCggX01TQ19WRVIgKQorI2luY2x1ZGUgPHdpbmRvd3MuaD4KKyNkZWZpbmUgVElYTUxfTE9HIE91dHB1dERlYnVnU3RyaW5nCisjZWxzZQorI2RlZmluZSBUSVhNTF9MT0cgcHJpbnRmCisjZW5kaWYKKwogI2lmZGVmIFRJWE1MX1VTRV9TVEwKIAkjaW5jbHVkZSA8c3RyaW5nPgogIAkjaW5jbHVkZSA8aW9zdHJlYW0+Ci0JI2luY2x1ZGUgPHNzdHJlYW0+Ci0JI2RlZmluZSBUSVhNTF9TVFJJTkcJCXN0ZDo6c3RyaW5nCisJI2RlZmluZSBUSVhNTF9TVFJJTkcJc3RkOjpzdHJpbmcKKwkjZGVmaW5lIFRJWE1MX0lTVFJFQU0Jc3RkOjppc3RyZWFtCisJI2RlZmluZSBUSVhNTF9PU1RSRUFNCXN0ZDo6b3N0cmVhbQogI2Vsc2UKIAkjaW5jbHVkZSAidGlueXN0ci5oIgotCSNkZWZpbmUgVElYTUxfU1RSSU5HCQlUaVhtbFN0cmluZworCSNkZWZpbmUgVElYTUxfU1RSSU5HCVRpWG1sU3RyaW5nCisJI2RlZmluZSBUSVhNTF9PU1RSRUFNCVRpWG1sT3V0U3RyZWFtCiAjZW5kaWYKIAogLy8gRGVwcmVjYXRlZCBsaWJyYXJ5IGZ1bmN0aW9uIGhlbGwuIENvbXBpbGVycyB3YW50IHRvIHVzZSB0aGUKIC8vIG5ldyBzYWZlIHZlcnNpb25zLiBUaGlzIHByb2JhYmx5IGRvZXNuJ3QgZnVsbHkgYWRkcmVzcyB0aGUgcHJvYmxlbSwKIC8vIGJ1dCBpdCBnZXRzIGNsb3Nlci4gVGhlcmUgYXJlIHRvbyBtYW55IGNvbXBpbGVycyBmb3IgbWUgdG8gZnVsbHkKIC8vIHRlc3QuIElmIHlvdSBnZXQgY29tcGlsYXRpb24gdHJvdWJsZXMsIHVuZGVmaW5lIFRJWE1MX1NBRkUKLSNkZWZpbmUgVElYTUxfU0FGRQogCisjZGVmaW5lIFRJWE1MX1NBRkUJCS8vIFRpbnlYbWwgaXNuJ3QgZnVsbHkgYnVmZmVyIG92ZXJydW4gcHJvdGVjdGVkLCBzYWZlIGNvZGUuIFRoaXMgaXMgd29yayBpbiBwcm9ncmVzcy4KICNpZmRlZiBUSVhNTF9TQUZFCi0JI2lmIGRlZmluZWQoX01TQ19WRVIpICYmIChfTVNDX1ZFUiA+PSAxNDAwICkKLQkJLy8gTWljcm9zb2Z0IHZpc3VhbCBzdHVkaW8sIHZlcnNpb24gMjAwNSBhbmQgaGlnaGVyLgotCQkjZGVmaW5lIFRJWE1MX1NOUFJJTlRGIF9zbnByaW50Zl9zCi0JCSNkZWZpbmUgVElYTUxfU1NDQU5GICAgc3NjYW5mX3MKLQkjZWxpZiBkZWZpbmVkKF9NU0NfVkVSKSAmJiAoX01TQ19WRVIgPj0gMTIwMCApCisJI2lmIGRlZmluZWQoX01TQ19WRVIpICYmIChfTVNDX1ZFUiA+PSAxMjAwICkKIAkJLy8gTWljcm9zb2Z0IHZpc3VhbCBzdHVkaW8sIHZlcnNpb24gNiBhbmQgaGlnaGVyLgogCQkvLyNwcmFnbWEgbWVzc2FnZSggIlVzaW5nIF9zbiogZnVuY3Rpb25zLiIgKQogCQkjZGVmaW5lIFRJWE1MX1NOUFJJTlRGIF9zbnByaW50ZgotCQkjZGVmaW5lIFRJWE1MX1NTQ0FORiAgIHNzY2FuZgorCQkjZGVmaW5lIFRJWE1MX1NOU0NBTkYgIF9zbnNjYW5mCiAJI2VsaWYgZGVmaW5lZChfX0dOVUNfXykgJiYgKF9fR05VQ19fID49IDMgKQogCQkvLyBHQ0MgdmVyc2lvbiAzIGFuZCBoaWdoZXIucwogCQkvLyN3YXJuaW5nKCAiVXNpbmcgc24qIGZ1bmN0aW9ucy4iICkKIAkJI2RlZmluZSBUSVhNTF9TTlBSSU5URiBzbnByaW50ZgotCQkjZGVmaW5lIFRJWE1MX1NTQ0FORiAgIHNzY2FuZgotCSNlbHNlCi0JCSNkZWZpbmUgVElYTUxfU05QUklOVEYgc25wcmludGYKLQkJI2RlZmluZSBUSVhNTF9TU0NBTkYgICBzc2NhbmYKKwkJI2RlZmluZSBUSVhNTF9TTlNDQU5GICBzbnNjYW5mCiAJI2VuZGlmCiAjZW5kaWYJCiAKQEAgLTkwLDggKzkyLDggQEAKIGNsYXNzIFRpWG1sUGFyc2luZ0RhdGE7CiAKIGNvbnN0IGludCBUSVhNTF9NQUpPUl9WRVJTSU9OID0gMjsKLWNvbnN0IGludCBUSVhNTF9NSU5PUl9WRVJTSU9OID0gNjsKLWNvbnN0IGludCBUSVhNTF9QQVRDSF9WRVJTSU9OID0gMjsKK2NvbnN0IGludCBUSVhNTF9NSU5PUl9WRVJTSU9OID0gNDsKK2NvbnN0IGludCBUSVhNTF9QQVRDSF9WRVJTSU9OID0gMDsKIAogLyoJSW50ZXJuYWwgc3RydWN0dXJlIGZvciB0cmFja2luZyBsb2NhdGlvbiBvZiBpdGVtcyAKIAlpbiB0aGUgWE1MIGZpbGUuCkBAIC0xMDYsNTAgKzEwOCw2IEBACiB9OwogCiAKLS8qKgotCUltcGxlbWVudHMgdGhlIGludGVyZmFjZSB0byB0aGUgIlZpc2l0b3IgcGF0dGVybiIgKHNlZSB0aGUgQWNjZXB0KCkgbWV0aG9kLikKLQlJZiB5b3UgY2FsbCB0aGUgQWNjZXB0KCkgbWV0aG9kLCBpdCByZXF1aXJlcyBiZWluZyBwYXNzZWQgYSBUaVhtbFZpc2l0b3IKLQljbGFzcyB0byBoYW5kbGUgY2FsbGJhY2tzLiBGb3Igbm9kZXMgdGhhdCBjb250YWluIG90aGVyIG5vZGVzIChEb2N1bWVudCwgRWxlbWVudCkKLQl5b3Ugd2lsbCBnZXQgY2FsbGVkIHdpdGggYSBWaXNpdEVudGVyL1Zpc2l0RXhpdCBwYWlyLiBOb2RlcyB0aGF0IGFyZSBhbHdheXMgbGVhdmVzCi0JYXJlIHNpbXBseSBjYWxsZWQgd2l0aCBWaXNpdCgpLgotCi0JSWYgeW91IHJldHVybiAndHJ1ZScgZnJvbSBhIFZpc2l0IG1ldGhvZCwgcmVjdXJzaXZlIHBhcnNpbmcgd2lsbCBjb250aW51ZS4gSWYgeW91IHJldHVybgotCWZhbHNlLCA8Yj5ubyBjaGlsZHJlbiBvZiB0aGlzIG5vZGUgb3IgaXRzIHNpYmlsaW5nczwvYj4gd2lsbCBiZSBWaXNpdGVkLgotCi0JQWxsIGZsYXZvcnMgb2YgVmlzaXQgbWV0aG9kcyBoYXZlIGEgZGVmYXVsdCBpbXBsZW1lbnRhdGlvbiB0aGF0IHJldHVybnMgJ3RydWUnIChjb250aW51ZSAKLQl2aXNpdGluZykuIFlvdSBuZWVkIHRvIG9ubHkgb3ZlcnJpZGUgbWV0aG9kcyB0aGF0IGFyZSBpbnRlcmVzdGluZyB0byB5b3UuCi0KLQlHZW5lcmFsbHkgQWNjZXB0KCkgaXMgY2FsbGVkIG9uIHRoZSBUaVhtbERvY3VtZW50LCBhbHRob3VnaCBhbGwgbm9kZXMgc3VwcGVydCBWaXNpdGluZy4KLQotCVlvdSBzaG91bGQgbmV2ZXIgY2hhbmdlIHRoZSBkb2N1bWVudCBmcm9tIGEgY2FsbGJhY2suCi0KLQlAc2EgVGlYbWxOb2RlOjpBY2NlcHQoKQotKi8KLWNsYXNzIFRpWG1sVmlzaXRvcgotewotcHVibGljOgotCXZpcnR1YWwgflRpWG1sVmlzaXRvcigpIHt9Ci0KLQkvLy8gVmlzaXQgYSBkb2N1bWVudC4KLQl2aXJ0dWFsIGJvb2wgVmlzaXRFbnRlciggY29uc3QgVGlYbWxEb2N1bWVudCYgLypkb2MqLyApCQkJeyByZXR1cm4gdHJ1ZTsgfQotCS8vLyBWaXNpdCBhIGRvY3VtZW50LgotCXZpcnR1YWwgYm9vbCBWaXNpdEV4aXQoIGNvbnN0IFRpWG1sRG9jdW1lbnQmIC8qZG9jKi8gKQkJCXsgcmV0dXJuIHRydWU7IH0KLQotCS8vLyBWaXNpdCBhbiBlbGVtZW50LgotCXZpcnR1YWwgYm9vbCBWaXNpdEVudGVyKCBjb25zdCBUaVhtbEVsZW1lbnQmIC8qZWxlbWVudCovLCBjb25zdCBUaVhtbEF0dHJpYnV0ZSogLypmaXJzdEF0dHJpYnV0ZSovICkJeyByZXR1cm4gdHJ1ZTsgfQotCS8vLyBWaXNpdCBhbiBlbGVtZW50LgotCXZpcnR1YWwgYm9vbCBWaXNpdEV4aXQoIGNvbnN0IFRpWG1sRWxlbWVudCYgLyplbGVtZW50Ki8gKQkJeyByZXR1cm4gdHJ1ZTsgfQotCi0JLy8vIFZpc2l0IGEgZGVjbGFyYXRpb24KLQl2aXJ0dWFsIGJvb2wgVmlzaXQoIGNvbnN0IFRpWG1sRGVjbGFyYXRpb24mIC8qZGVjbGFyYXRpb24qLyApCXsgcmV0dXJuIHRydWU7IH0KLQkvLy8gVmlzaXQgYSB0ZXh0IG5vZGUKLQl2aXJ0dWFsIGJvb2wgVmlzaXQoIGNvbnN0IFRpWG1sVGV4dCYgLyp0ZXh0Ki8gKQkJCQkJeyByZXR1cm4gdHJ1ZTsgfQotCS8vLyBWaXNpdCBhIGNvbW1lbnQgbm9kZQotCXZpcnR1YWwgYm9vbCBWaXNpdCggY29uc3QgVGlYbWxDb21tZW50JiAvKmNvbW1lbnQqLyApCQkJeyByZXR1cm4gdHJ1ZTsgfQotCS8vLyBWaXNpdCBhbiB1bmtub3duIG5vZGUKLQl2aXJ0dWFsIGJvb2wgVmlzaXQoIGNvbnN0IFRpWG1sVW5rbm93biYgLyp1bmtub3duKi8gKQkJCXsgcmV0dXJuIHRydWU7IH0KLX07Ci0KIC8vIE9ubHkgdXNlZCBieSBBdHRyaWJ1dGU6OlF1ZXJ5IGZ1bmN0aW9ucwogZW51bSAKIHsgCkBAIC0xOTgsMTUgKzE1NiwxMSBAQAogCWZyaWVuZCBjbGFzcyBUaVhtbERvY3VtZW50OwogCiBwdWJsaWM6Ci0JVGlYbWxCYXNlKCkJOgl1c2VyRGF0YSgwKQkJe30KLQl2aXJ0dWFsIH5UaVhtbEJhc2UoKQkJCXt9CisJVGlYbWxCYXNlKCkJOgl1c2VyRGF0YSgwKSB7fQorCXZpcnR1YWwgflRpWG1sQmFzZSgpCQkJCQl7fQogCi0JLyoqCUFsbCBUaW55WG1sIGNsYXNzZXMgY2FuIHByaW50IHRoZW1zZWx2ZXMgdG8gYSBmaWxlc3RyZWFtCi0JCW9yIHRoZSBzdHJpbmcgY2xhc3MgKFRpWG1sU3RyaW5nIGluIG5vbi1TVEwgbW9kZSwgc3RkOjpzdHJpbmcKLQkJaW4gU1RMIG1vZGUuKSBFaXRoZXIgb3IgYm90aCBjZmlsZSBhbmQgc3RyIGNhbiBiZSBudWxsLgotCQkKLQkJVGhpcyBpcyBhIGZvcm1hdHRlZCBwcmludCwgYW5kIHdpbGwgaW5zZXJ0IAotCQl0YWJzIGFuZCBuZXdsaW5lcy4KKwkvKioJQWxsIFRpbnlYbWwgY2xhc3NlcyBjYW4gcHJpbnQgdGhlbXNlbHZlcyB0byBhIGZpbGVzdHJlYW0uCisJCVRoaXMgaXMgYSBmb3JtYXR0ZWQgcHJpbnQsIGFuZCB3aWxsIGluc2VydCB0YWJzIGFuZCBuZXdsaW5lcy4KIAkJCiAJCShGb3IgYW4gdW5mb3JtYXR0ZWQgc3RyZWFtLCB1c2UgdGhlIDw8IG9wZXJhdG9yLikKIAkqLwpAQCAtMjE2LDcgKzE3MCw3IEBACiAJCW5vdC4gSW4gb3JkZXIgdG8gbWFrZSBldmVyeW9uZSBoYXBweSwgdGhlc2UgZ2xvYmFsLCBzdGF0aWMgZnVuY3Rpb25zCiAJCWFyZSBwcm92aWRlZCB0byBzZXQgd2hldGhlciBvciBub3QgVGlueVhtbCB3aWxsIGNvbmRlbnNlIGFsbCB3aGl0ZSBzcGFjZQogCQlpbnRvIGEgc2luZ2xlIHNwYWNlIG9yIG5vdC4gVGhlIGRlZmF1bHQgaXMgdG8gY29uZGVuc2UuIE5vdGUgY2hhbmdpbmcgdGhpcwotCQl2YWx1ZSBpcyBub3QgdGhyZWFkIHNhZmUuCisJCXZhbHVlcyBpcyBub3QgdGhyZWFkIHNhZmUuCiAJKi8KIAlzdGF0aWMgdm9pZCBTZXRDb25kZW5zZVdoaXRlU3BhY2UoIGJvb2wgY29uZGVuc2UgKQkJeyBjb25kZW5zZVdoaXRlU3BhY2UgPSBjb25kZW5zZTsgfQogCkBAIC0yNDQsOSArMTk4LDggQEAKIAlpbnQgUm93KCkgY29uc3QJCQl7IHJldHVybiBsb2NhdGlvbi5yb3cgKyAxOyB9CiAJaW50IENvbHVtbigpIGNvbnN0CQl7IHJldHVybiBsb2NhdGlvbi5jb2wgKyAxOyB9CS8vLzwgU2VlIFJvdygpCiAKLQl2b2lkICBTZXRVc2VyRGF0YSggdm9pZCogdXNlciApCQkJeyB1c2VyRGF0YSA9IHVzZXI7IH0JLy8vPCBTZXQgYSBwb2ludGVyIHRvIGFyYml0cmFyeSB1c2VyIGRhdGEuCi0Jdm9pZCogR2V0VXNlckRhdGEoKQkJCQkJCXsgcmV0dXJuIHVzZXJEYXRhOyB9CS8vLzwgR2V0IGEgcG9pbnRlciB0byBhcmJpdHJhcnkgdXNlciBkYXRhLgotCWNvbnN0IHZvaWQqIEdldFVzZXJEYXRhKCkgY29uc3QgCQl7IHJldHVybiB1c2VyRGF0YTsgfQkvLy88IEdldCBhIHBvaW50ZXIgdG8gYXJiaXRyYXJ5IHVzZXIgZGF0YS4KKwl2b2lkICBTZXRVc2VyRGF0YSggdm9pZCogdXNlciApCQkJeyB1c2VyRGF0YSA9IHVzZXI7IH0KKwl2b2lkKiBHZXRVc2VyRGF0YSgpCQkJCQkJeyByZXR1cm4gdXNlckRhdGE7IH0KIAogCS8vIFRhYmxlIHRoYXQgcmV0dXJzLCBmb3IgYSBnaXZlbiBsZWFkIGJ5dGUsIHRoZSB0b3RhbCBudW1iZXIgb2YgYnl0ZXMKIAkvLyBpbiB0aGUgVVRGLTggc2VxdWVuY2UuCkBAIC0yNTYsMTYgKzIwOSwxMiBAQAogCQkJCQkJCQlUaVhtbFBhcnNpbmdEYXRhKiBkYXRhLCAKIAkJCQkJCQkJVGlYbWxFbmNvZGluZyBlbmNvZGluZyAvKj0gVElYTUxfRU5DT0RJTkdfVU5LTk9XTiAqLyApID0gMDsKIAotCS8qKiBFeHBhbmRzIGVudGl0aWVzIGluIGEgc3RyaW5nLiBOb3RlIHRoaXMgc2hvdWxkIG5vdCBjb250aWFuIHRoZSB0YWcncyAnPCcsICc+JywgZXRjLCAKLQkJb3IgdGhleSB3aWxsIGJlIHRyYW5zZm9ybWVkIGludG8gZW50aXRpZXMhCi0JKi8KLQlzdGF0aWMgdm9pZCBFbmNvZGVTdHJpbmcoIGNvbnN0IFRJWE1MX1NUUklORyYgc3RyLCBUSVhNTF9TVFJJTkcqIG91dCApOwotCiAJZW51bQogCXsKIAkJVElYTUxfTk9fRVJST1IgPSAwLAogCQlUSVhNTF9FUlJPUiwKIAkJVElYTUxfRVJST1JfT1BFTklOR19GSUxFLAorCQlUSVhNTF9FUlJPUl9PVVRfT0ZfTUVNT1JZLAogCQlUSVhNTF9FUlJPUl9QQVJTSU5HX0VMRU1FTlQsCiAJCVRJWE1MX0VSUk9SX0ZBSUxFRF9UT19SRUFEX0VMRU1FTlRfTkFNRSwKIAkJVElYTUxfRVJST1JfUkVBRElOR19FTEVNRU5UX1ZBTFVFLApAQCAtMjc4LDI5ICsyMjcsMzMgQEAKIAkJVElYTUxfRVJST1JfRE9DVU1FTlRfRU1QVFksCiAJCVRJWE1MX0VSUk9SX0VNQkVEREVEX05VTEwsCiAJCVRJWE1MX0VSUk9SX1BBUlNJTkdfQ0RBVEEsCi0JCVRJWE1MX0VSUk9SX0RPQ1VNRU5UX1RPUF9PTkxZLAogCiAJCVRJWE1MX0VSUk9SX1NUUklOR19DT1VOVAogCX07CiAKIHByb3RlY3RlZDoKIAotCXN0YXRpYyBjb25zdCBjaGFyKiBTa2lwV2hpdGVTcGFjZSggY29uc3QgY2hhciosIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKKwkvLyBTZWUgU1RMX1NUUklOR19CVUcKKwkvLyBVdGlsaXR5IGNsYXNzIHRvIG92ZXJjb21lIGEgYnVnLgorCWNsYXNzIFN0cmluZ1RvQnVmZmVyCisJeworCSAgcHVibGljOgorCQlTdHJpbmdUb0J1ZmZlciggY29uc3QgVElYTUxfU1RSSU5HJiBzdHIgKTsKKwkJflN0cmluZ1RvQnVmZmVyKCk7CisJCWNoYXIqIGJ1ZmZlcjsKKwl9OwogCi0JaW5saW5lIHN0YXRpYyBib29sIElzV2hpdGVTcGFjZSggY2hhciBjICkJCQorCXN0YXRpYyBjb25zdCBjaGFyKglTa2lwV2hpdGVTcGFjZSggY29uc3QgY2hhciosIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKKwlpbmxpbmUgc3RhdGljIGJvb2wJSXNXaGl0ZVNwYWNlKCBjaGFyIGMgKQkJCiAJeyAKIAkJcmV0dXJuICggaXNzcGFjZSggKHVuc2lnbmVkIGNoYXIpIGMgKSB8fCBjID09ICdcbicgfHwgYyA9PSAnXHInICk7IAogCX0KLQlpbmxpbmUgc3RhdGljIGJvb2wgSXNXaGl0ZVNwYWNlKCBpbnQgYyApCi0JewotCQlpZiAoIGMgPCAyNTYgKQotCQkJcmV0dXJuIElzV2hpdGVTcGFjZSggKGNoYXIpIGMgKTsKLQkJcmV0dXJuIGZhbHNlOwkvLyBBZ2Fpbiwgb25seSB0cnVseSBjb3JyZWN0IGZvciBFbmdsaXNoL0xhdGluLi4uYnV0IHVzdWFsbHkgd29ya3MuCi0JfQorCisJdmlydHVhbCB2b2lkIFN0cmVhbU91dCAoVElYTUxfT1NUUkVBTSAqKSBjb25zdCA9IDA7CiAKIAkjaWZkZWYgVElYTUxfVVNFX1NUTAotCXN0YXRpYyBib29sCVN0cmVhbVdoaXRlU3BhY2UoIHN0ZDo6aXN0cmVhbSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKTsKLQlzdGF0aWMgYm9vbCBTdHJlYW1Ubyggc3RkOjppc3RyZWFtICogaW4sIGludCBjaGFyYWN0ZXIsIFRJWE1MX1NUUklORyAqIHRhZyApOworCSAgICBzdGF0aWMgYm9vbAlTdHJlYW1XaGl0ZVNwYWNlKCBUSVhNTF9JU1RSRUFNICogaW4sIFRJWE1MX1NUUklORyAqIHRhZyApOworCSAgICBzdGF0aWMgYm9vbCBTdHJlYW1UbyggVElYTUxfSVNUUkVBTSAqIGluLCBpbnQgY2hhcmFjdGVyLCBUSVhNTF9TVFJJTkcgKiB0YWcgKTsKIAkjZW5kaWYKIAogCS8qCVJlYWRzIGFuIFhNTCBuYW1lIGludG8gdGhlIHN0cmluZyBwcm92aWRlZC4gUmV0dXJucwpAQCAtMzI5LDcgKzI4Miw3IEBACiAJCWFzc2VydCggcCApOwogCQlpZiAoIGVuY29kaW5nID09IFRJWE1MX0VOQ09ESU5HX1VURjggKQogCQl7Ci0JCQkqbGVuZ3RoID0gdXRmOEJ5dGVUYWJsZVsgKigoY29uc3QgdW5zaWduZWQgY2hhciopcCkgXTsKKwkJCSpsZW5ndGggPSB1dGY4Qnl0ZVRhYmxlWyAqKCh1bnNpZ25lZCBjaGFyKilwKSBdOwogCQkJYXNzZXJ0KCAqbGVuZ3RoID49IDAgJiYgKmxlbmd0aCA8IDUgKTsKIAkJfQogCQllbHNlCkBAIC0zNjAsNiArMzEzLDEyIEBACiAJCX0KIAl9CiAKKwkvLyBQdXRzIGEgc3RyaW5nIHRvIGEgc3RyZWFtLCBleHBhbmRpbmcgZW50aXRpZXMgYXMgaXQgZ29lcy4KKwkvLyBOb3RlIHRoaXMgc2hvdWxkIG5vdCBjb250aWFuIHRoZSAnPCcsICc+JywgZXRjLCBvciB0aGV5IHdpbGwgYmUgdHJhbnNmb3JtZWQgaW50byBlbnRpdGllcyEKKwlzdGF0aWMgdm9pZCBQdXRTdHJpbmcoIGNvbnN0IFRJWE1MX1NUUklORyYgc3RyLCBUSVhNTF9PU1RSRUFNKiBvdXQgKTsKKworCXN0YXRpYyB2b2lkIFB1dFN0cmluZyggY29uc3QgVElYTUxfU1RSSU5HJiBzdHIsIFRJWE1MX1NUUklORyogb3V0ICk7CisKIAkvLyBSZXR1cm4gdHJ1ZSBpZiB0aGUgbmV4dCBjaGFyYWN0ZXJzIGluIHRoZSBzdHJlYW0gYXJlIGFueSBvZiB0aGUgZW5kVGFnIHNlcXVlbmNlcy4KIAkvLyBJZ25vcmUgY2FzZSBvbmx5IHdvcmtzIGZvciBlbmdsaXNoLCBhbmQgc2hvdWxkIG9ubHkgYmUgcmVsaWVkIG9uIHdoZW4gY29tcGFyaW5nCiAJLy8gdG8gRW5nbGlzaCB3b3JkczogU3RyaW5nRXF1YWwoIHAsICJ2ZXJzaW9uIiwgdHJ1ZSApIGlzIGZpbmUuCkBAIC00NTQsNiArNDEzLDkgQEAKIAkJLy8vIEFwcGVuZHMgdGhlIFhNTCBub2RlIG9yIGF0dHJpYnV0ZSB0byBhIHN0ZDo6c3RyaW5nLgogCQlmcmllbmQgc3RkOjpzdHJpbmcmIG9wZXJhdG9yPDwgKHN0ZDo6c3RyaW5nJiBvdXQsIGNvbnN0IFRpWG1sTm9kZSYgYmFzZSApOwogCisJI2Vsc2UKKwkgICAgLy8gVXNlZCBpbnRlcm5hbGx5LCBub3QgcGFydCBvZiB0aGUgcHVibGljIEFQSS4KKwkgICAgZnJpZW5kIFRJWE1MX09TVFJFQU0mIG9wZXJhdG9yPDwgKFRJWE1MX09TVFJFQU0mIG91dCwgY29uc3QgVGlYbWxOb2RlJiBiYXNlKTsKIAkjZW5kaWYKIAogCS8qKiBUaGUgdHlwZXMgb2YgWE1MIG5vZGVzIHN1cHBvcnRlZCBieSBUaW55WG1sLiAoQWxsIHRoZQpAQCAtNDYxLDEzICs0MjMsMTMgQEAKIAkqLwogCWVudW0gTm9kZVR5cGUKIAl7Ci0JCVRJTllYTUxfRE9DVU1FTlQsCi0JCVRJTllYTUxfRUxFTUVOVCwKLQkJVElOWVhNTF9DT01NRU5ULAotCQlUSU5ZWE1MX1VOS05PV04sCi0JCVRJTllYTUxfVEVYVCwKLQkJVElOWVhNTF9ERUNMQVJBVElPTiwKLQkJVElOWVhNTF9UWVBFQ09VTlQKKwkJRE9DVU1FTlQsCisJCUVMRU1FTlQsCisJCUNPTU1FTlQsCisJCVVOS05PV04sCisJCVRFWFQsCisJCURFQ0xBUkFUSU9OLAorCQlUWVBFQ09VTlQKIAl9OwogCiAJdmlydHVhbCB+VGlYbWxOb2RlKCk7CkBAIC00OTQsOCArNDU2LDYgQEAKIAljb25zdCBzdGQ6OnN0cmluZyYgVmFsdWVTdHIoKSBjb25zdCB7IHJldHVybiB2YWx1ZTsgfQogCSNlbmRpZgogCi0JY29uc3QgVElYTUxfU1RSSU5HJiBWYWx1ZVRTdHIoKSBjb25zdCB7IHJldHVybiB2YWx1ZTsgfQotCiAJLyoqIENoYW5nZXMgdGhlIHZhbHVlIG9mIHRoZSBub2RlLiBEZWZpbmVkIGFzOgogCQlAdmVyYmF0aW0KIAkJRG9jdW1lbnQ6CWZpbGVuYW1lIG9mIHRoZSB4bWwgZmlsZQpAQCAtNTA5LDcgKzQ2OSwxMSBAQAogCiAgICAgI2lmZGVmIFRJWE1MX1VTRV9TVEwKIAkvLy8gU1RMIHN0ZDo6c3RyaW5nIGZvcm0uCi0Jdm9pZCBTZXRWYWx1ZSggY29uc3Qgc3RkOjpzdHJpbmcmIF92YWx1ZSApCXsgdmFsdWUgPSBfdmFsdWU7IH0KKwl2b2lkIFNldFZhbHVlKCBjb25zdCBzdGQ6OnN0cmluZyYgX3ZhbHVlICkgICAgCisJewkgIAorCQlTdHJpbmdUb0J1ZmZlciBidWYoIF92YWx1ZSApOworCQlTZXRWYWx1ZSggYnVmLmJ1ZmZlciA/IGJ1Zi5idWZmZXIgOiAiIiApOyAgICAJCisJfQkKIAkjZW5kaWYKIAogCS8vLyBEZWxldGUgYWxsIHRoZSBjaGlsZHJlbiBvZiB0aGlzIG5vZGUuIERvZXMgbm90IGFmZmVjdCAndGhpcycuCkBAIC01MTksMjIgKzQ4MywxNSBAQAogCVRpWG1sTm9kZSogUGFyZW50KCkJCQkJCQkJeyByZXR1cm4gcGFyZW50OyB9CiAJY29uc3QgVGlYbWxOb2RlKiBQYXJlbnQoKSBjb25zdAkJCQl7IHJldHVybiBwYXJlbnQ7IH0KIAotCWNvbnN0IFRpWG1sTm9kZSogRmlyc3RDaGlsZCgpCWNvbnN0CQl7IHJldHVybiBmaXJzdENoaWxkOyB9CS8vLzwgVGhlIGZpcnN0IGNoaWxkIG9mIHRoaXMgbm9kZS4gV2lsbCBiZSBudWxsIGlmIHRoZXJlIGFyZSBubyBjaGlsZHJlbi4KLQlUaVhtbE5vZGUqIEZpcnN0Q2hpbGQoKQkJCQkJCXsgcmV0dXJuIGZpcnN0Q2hpbGQ7IH0KKwljb25zdCBUaVhtbE5vZGUqIEZpcnN0Q2hpbGQoKQljb25zdAl7IHJldHVybiBmaXJzdENoaWxkOyB9CQkvLy88IFRoZSBmaXJzdCBjaGlsZCBvZiB0aGlzIG5vZGUuIFdpbGwgYmUgbnVsbCBpZiB0aGVyZSBhcmUgbm8gY2hpbGRyZW4uCisJVGlYbWxOb2RlKiBGaXJzdENoaWxkKCkJCQkJCXsgcmV0dXJuIGZpcnN0Q2hpbGQ7IH0KIAljb25zdCBUaVhtbE5vZGUqIEZpcnN0Q2hpbGQoIGNvbnN0IGNoYXIgKiB2YWx1ZSApIGNvbnN0OwkJCS8vLzwgVGhlIGZpcnN0IGNoaWxkIG9mIHRoaXMgbm9kZSB3aXRoIHRoZSBtYXRjaGluZyAndmFsdWUnLiBXaWxsIGJlIG51bGwgaWYgbm9uZSBmb3VuZC4KLQkvLy8gVGhlIGZpcnN0IGNoaWxkIG9mIHRoaXMgbm9kZSB3aXRoIHRoZSBtYXRjaGluZyAndmFsdWUnLiBXaWxsIGJlIG51bGwgaWYgbm9uZSBmb3VuZC4KLQlUaVhtbE5vZGUqIEZpcnN0Q2hpbGQoIGNvbnN0IGNoYXIgKiBfdmFsdWUgKSB7Ci0JCS8vIENhbGwgdGhyb3VnaCB0byB0aGUgY29uc3QgdmVyc2lvbiAtIHNhZmUgc2luY2Ugbm90aGluZyBpcyBjaGFuZ2VkLiBFeGl0aW5nIHN5bnRheDogY2FzdCB0aGlzIHRvIGEgY29uc3QgKGFsd2F5cyBzYWZlKQotCQkvLyBjYWxsIHRoZSBtZXRob2QsIGNhc3QgdGhlIHJldHVybiBiYWNrIHRvIG5vbi1jb25zdC4KLQkJcmV0dXJuIGNvbnN0X2Nhc3Q8IFRpWG1sTm9kZSogPiAoKGNvbnN0X2Nhc3Q8IGNvbnN0IFRpWG1sTm9kZSogPih0aGlzKSktPkZpcnN0Q2hpbGQoIF92YWx1ZSApKTsKLQl9CisJVGlYbWxOb2RlKiBGaXJzdENoaWxkKCBjb25zdCBjaGFyICogdmFsdWUgKTsJCQkJCQkvLy88IFRoZSBmaXJzdCBjaGlsZCBvZiB0aGlzIG5vZGUgd2l0aCB0aGUgbWF0Y2hpbmcgJ3ZhbHVlJy4gV2lsbCBiZSBudWxsIGlmIG5vbmUgZm91bmQuCisKIAljb25zdCBUaVhtbE5vZGUqIExhc3RDaGlsZCgpIGNvbnN0CXsgcmV0dXJuIGxhc3RDaGlsZDsgfQkJLy8vIFRoZSBsYXN0IGNoaWxkIG9mIHRoaXMgbm9kZS4gV2lsbCBiZSBudWxsIGlmIHRoZXJlIGFyZSBubyBjaGlsZHJlbi4KIAlUaVhtbE5vZGUqIExhc3RDaGlsZCgpCXsgcmV0dXJuIGxhc3RDaGlsZDsgfQotCQogCWNvbnN0IFRpWG1sTm9kZSogTGFzdENoaWxkKCBjb25zdCBjaGFyICogdmFsdWUgKSBjb25zdDsJCQkvLy8gVGhlIGxhc3QgY2hpbGQgb2YgdGhpcyBub2RlIG1hdGNoaW5nICd2YWx1ZScuIFdpbGwgYmUgbnVsbCBpZiB0aGVyZSBhcmUgbm8gY2hpbGRyZW4uCi0JVGlYbWxOb2RlKiBMYXN0Q2hpbGQoIGNvbnN0IGNoYXIgKiBfdmFsdWUgKSB7Ci0JCXJldHVybiBjb25zdF9jYXN0PCBUaVhtbE5vZGUqID4gKChjb25zdF9jYXN0PCBjb25zdCBUaVhtbE5vZGUqID4odGhpcykpLT5MYXN0Q2hpbGQoIF92YWx1ZSApKTsKLQl9CisJVGlYbWxOb2RlKiBMYXN0Q2hpbGQoIGNvbnN0IGNoYXIgKiB2YWx1ZSApOwkKIAogICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMCiAJY29uc3QgVGlYbWxOb2RlKiBGaXJzdENoaWxkKCBjb25zdCBzdGQ6OnN0cmluZyYgX3ZhbHVlICkgY29uc3QJewlyZXR1cm4gRmlyc3RDaGlsZCAoX3ZhbHVlLmNfc3RyICgpKTsJfQkvLy88IFNUTCBzdGQ6OnN0cmluZyBmb3JtLgpAQCAtNTYwLDE5ICs1MTcsMTUgQEAKIAkJZmlyc3QuIEl0ZXJhdGVDaGlsZHJlbiB3aWxsIHJldHVybiBudWxsIHdoZW4gZG9uZS4KIAkqLwogCWNvbnN0IFRpWG1sTm9kZSogSXRlcmF0ZUNoaWxkcmVuKCBjb25zdCBUaVhtbE5vZGUqIHByZXZpb3VzICkgY29uc3Q7Ci0JVGlYbWxOb2RlKiBJdGVyYXRlQ2hpbGRyZW4oIGNvbnN0IFRpWG1sTm9kZSogcHJldmlvdXMgKSB7Ci0JCXJldHVybiBjb25zdF9jYXN0PCBUaVhtbE5vZGUqID4oIChjb25zdF9jYXN0PCBjb25zdCBUaVhtbE5vZGUqID4odGhpcykpLT5JdGVyYXRlQ2hpbGRyZW4oIHByZXZpb3VzICkgKTsKLQl9CisJVGlYbWxOb2RlKiBJdGVyYXRlQ2hpbGRyZW4oIFRpWG1sTm9kZSogcHJldmlvdXMgKTsKIAogCS8vLyBUaGlzIGZsYXZvciBvZiBJdGVyYXRlQ2hpbGRyZW4gc2VhcmNoZXMgZm9yIGNoaWxkcmVuIHdpdGggYSBwYXJ0aWN1bGFyICd2YWx1ZScKIAljb25zdCBUaVhtbE5vZGUqIEl0ZXJhdGVDaGlsZHJlbiggY29uc3QgY2hhciAqIHZhbHVlLCBjb25zdCBUaVhtbE5vZGUqIHByZXZpb3VzICkgY29uc3Q7Ci0JVGlYbWxOb2RlKiBJdGVyYXRlQ2hpbGRyZW4oIGNvbnN0IGNoYXIgKiBfdmFsdWUsIGNvbnN0IFRpWG1sTm9kZSogcHJldmlvdXMgKSB7Ci0JCXJldHVybiBjb25zdF9jYXN0PCBUaVhtbE5vZGUqID4oIChjb25zdF9jYXN0PCBjb25zdCBUaVhtbE5vZGUqID4odGhpcykpLT5JdGVyYXRlQ2hpbGRyZW4oIF92YWx1ZSwgcHJldmlvdXMgKSApOwotCX0KKwlUaVhtbE5vZGUqIEl0ZXJhdGVDaGlsZHJlbiggY29uc3QgY2hhciAqIHZhbHVlLCBUaVhtbE5vZGUqIHByZXZpb3VzICk7CiAKICAgICAjaWZkZWYgVElYTUxfVVNFX1NUTAogCWNvbnN0IFRpWG1sTm9kZSogSXRlcmF0ZUNoaWxkcmVuKCBjb25zdCBzdGQ6OnN0cmluZyYgX3ZhbHVlLCBjb25zdCBUaVhtbE5vZGUqIHByZXZpb3VzICkgY29uc3QJewlyZXR1cm4gSXRlcmF0ZUNoaWxkcmVuIChfdmFsdWUuY19zdHIgKCksIHByZXZpb3VzKTsJfQkvLy88IFNUTCBzdGQ6OnN0cmluZyBmb3JtLgotCVRpWG1sTm9kZSogSXRlcmF0ZUNoaWxkcmVuKCBjb25zdCBzdGQ6OnN0cmluZyYgX3ZhbHVlLCBjb25zdCBUaVhtbE5vZGUqIHByZXZpb3VzICkgewlyZXR1cm4gSXRlcmF0ZUNoaWxkcmVuIChfdmFsdWUuY19zdHIgKCksIHByZXZpb3VzKTsJfQkvLy88IFNUTCBzdGQ6OnN0cmluZyBmb3JtLgorCVRpWG1sTm9kZSogSXRlcmF0ZUNoaWxkcmVuKCBjb25zdCBzdGQ6OnN0cmluZyYgX3ZhbHVlLCBUaVhtbE5vZGUqIHByZXZpb3VzICkgewlyZXR1cm4gSXRlcmF0ZUNoaWxkcmVuIChfdmFsdWUuY19zdHIgKCksIHByZXZpb3VzKTsJfQkvLy88IFNUTCBzdGQ6OnN0cmluZyBmb3JtLgogCSNlbmRpZgogCiAJLyoqIEFkZCBhIG5ldyBub2RlIHJlbGF0ZWQgdG8gdGhpcy4gQWRkcyBhIGNoaWxkIHBhc3QgdGhlIExhc3RDaGlsZC4KQEAgLTYxNiw5ICs1NjksNyBAQAogCiAJLy8vIE5hdmlnYXRlIHRvIGEgc2libGluZyBub2RlLgogCWNvbnN0IFRpWG1sTm9kZSogUHJldmlvdXNTaWJsaW5nKCBjb25zdCBjaGFyICogKSBjb25zdDsKLQlUaVhtbE5vZGUqIFByZXZpb3VzU2libGluZyggY29uc3QgY2hhciAqX3ByZXYgKSB7Ci0JCXJldHVybiBjb25zdF9jYXN0PCBUaVhtbE5vZGUqID4oIChjb25zdF9jYXN0PCBjb25zdCBUaVhtbE5vZGUqID4odGhpcykpLT5QcmV2aW91c1NpYmxpbmcoIF9wcmV2ICkgKTsKLQl9CisJVGlYbWxOb2RlKiBQcmV2aW91c1NpYmxpbmcoIGNvbnN0IGNoYXIgKiApOwogCiAgICAgI2lmZGVmIFRJWE1MX1VTRV9TVEwKIAljb25zdCBUaVhtbE5vZGUqIFByZXZpb3VzU2libGluZyggY29uc3Qgc3RkOjpzdHJpbmcmIF92YWx1ZSApIGNvbnN0CXsJcmV0dXJuIFByZXZpb3VzU2libGluZyAoX3ZhbHVlLmNfc3RyICgpKTsJfQkvLy88IFNUTCBzdGQ6OnN0cmluZyBmb3JtLgpAQCAtNjMzLDI3ICs1ODQsMjEgQEAKIAogCS8vLyBOYXZpZ2F0ZSB0byBhIHNpYmxpbmcgbm9kZSB3aXRoIHRoZSBnaXZlbiAndmFsdWUnLgogCWNvbnN0IFRpWG1sTm9kZSogTmV4dFNpYmxpbmcoIGNvbnN0IGNoYXIgKiApIGNvbnN0OwotCVRpWG1sTm9kZSogTmV4dFNpYmxpbmcoIGNvbnN0IGNoYXIqIF9uZXh0ICkgewotCQlyZXR1cm4gY29uc3RfY2FzdDwgVGlYbWxOb2RlKiA+KCAoY29uc3RfY2FzdDwgY29uc3QgVGlYbWxOb2RlKiA+KHRoaXMpKS0+TmV4dFNpYmxpbmcoIF9uZXh0ICkgKTsKLQl9CisJVGlYbWxOb2RlKiBOZXh0U2libGluZyggY29uc3QgY2hhciAqICk7CiAKIAkvKiogQ29udmVuaWVuY2UgZnVuY3Rpb24gdG8gZ2V0IHRocm91Z2ggZWxlbWVudHMuCiAJCUNhbGxzIE5leHRTaWJsaW5nIGFuZCBUb0VsZW1lbnQuIFdpbGwgc2tpcCBhbGwgbm9uLUVsZW1lbnQKIAkJbm9kZXMuIFJldHVybnMgMCBpZiB0aGVyZSBpcyBub3QgYW5vdGhlciBlbGVtZW50LgogCSovCiAJY29uc3QgVGlYbWxFbGVtZW50KiBOZXh0U2libGluZ0VsZW1lbnQoKSBjb25zdDsKLQlUaVhtbEVsZW1lbnQqIE5leHRTaWJsaW5nRWxlbWVudCgpIHsKLQkJcmV0dXJuIGNvbnN0X2Nhc3Q8IFRpWG1sRWxlbWVudCogPiggKGNvbnN0X2Nhc3Q8IGNvbnN0IFRpWG1sTm9kZSogPih0aGlzKSktPk5leHRTaWJsaW5nRWxlbWVudCgpICk7Ci0JfQorCVRpWG1sRWxlbWVudCogTmV4dFNpYmxpbmdFbGVtZW50KCk7CiAKIAkvKiogQ29udmVuaWVuY2UgZnVuY3Rpb24gdG8gZ2V0IHRocm91Z2ggZWxlbWVudHMuCiAJCUNhbGxzIE5leHRTaWJsaW5nIGFuZCBUb0VsZW1lbnQuIFdpbGwgc2tpcCBhbGwgbm9uLUVsZW1lbnQKIAkJbm9kZXMuIFJldHVybnMgMCBpZiB0aGVyZSBpcyBub3QgYW5vdGhlciBlbGVtZW50LgogCSovCiAJY29uc3QgVGlYbWxFbGVtZW50KiBOZXh0U2libGluZ0VsZW1lbnQoIGNvbnN0IGNoYXIgKiApIGNvbnN0OwotCVRpWG1sRWxlbWVudCogTmV4dFNpYmxpbmdFbGVtZW50KCBjb25zdCBjaGFyICpfbmV4dCApIHsKLQkJcmV0dXJuIGNvbnN0X2Nhc3Q8IFRpWG1sRWxlbWVudCogPiggKGNvbnN0X2Nhc3Q8IGNvbnN0IFRpWG1sTm9kZSogPih0aGlzKSktPk5leHRTaWJsaW5nRWxlbWVudCggX25leHQgKSApOwotCX0KKwlUaVhtbEVsZW1lbnQqIE5leHRTaWJsaW5nRWxlbWVudCggY29uc3QgY2hhciAqICk7CiAKICAgICAjaWZkZWYgVElYTUxfVVNFX1NUTAogCWNvbnN0IFRpWG1sRWxlbWVudCogTmV4dFNpYmxpbmdFbGVtZW50KCBjb25zdCBzdGQ6OnN0cmluZyYgX3ZhbHVlKSBjb25zdAl7CXJldHVybiBOZXh0U2libGluZ0VsZW1lbnQgKF92YWx1ZS5jX3N0ciAoKSk7CX0JLy8vPCBTVEwgc3RkOjpzdHJpbmcgZm9ybS4KQEAgLTY2MiwxNSArNjA3LDExIEBACiAKIAkvLy8gQ29udmVuaWVuY2UgZnVuY3Rpb24gdG8gZ2V0IHRocm91Z2ggZWxlbWVudHMuCiAJY29uc3QgVGlYbWxFbGVtZW50KiBGaXJzdENoaWxkRWxlbWVudCgpCWNvbnN0OwotCVRpWG1sRWxlbWVudCogRmlyc3RDaGlsZEVsZW1lbnQoKSB7Ci0JCXJldHVybiBjb25zdF9jYXN0PCBUaVhtbEVsZW1lbnQqID4oIChjb25zdF9jYXN0PCBjb25zdCBUaVhtbE5vZGUqID4odGhpcykpLT5GaXJzdENoaWxkRWxlbWVudCgpICk7Ci0JfQorCVRpWG1sRWxlbWVudCogRmlyc3RDaGlsZEVsZW1lbnQoKTsKIAogCS8vLyBDb252ZW5pZW5jZSBmdW5jdGlvbiB0byBnZXQgdGhyb3VnaCBlbGVtZW50cy4KLQljb25zdCBUaVhtbEVsZW1lbnQqIEZpcnN0Q2hpbGRFbGVtZW50KCBjb25zdCBjaGFyICogX3ZhbHVlICkgY29uc3Q7Ci0JVGlYbWxFbGVtZW50KiBGaXJzdENoaWxkRWxlbWVudCggY29uc3QgY2hhciAqIF92YWx1ZSApIHsKLQkJcmV0dXJuIGNvbnN0X2Nhc3Q8IFRpWG1sRWxlbWVudCogPiggKGNvbnN0X2Nhc3Q8IGNvbnN0IFRpWG1sTm9kZSogPih0aGlzKSktPkZpcnN0Q2hpbGRFbGVtZW50KCBfdmFsdWUgKSApOwotCX0KKwljb25zdCBUaVhtbEVsZW1lbnQqIEZpcnN0Q2hpbGRFbGVtZW50KCBjb25zdCBjaGFyICogdmFsdWUgKSBjb25zdDsKKwlUaVhtbEVsZW1lbnQqIEZpcnN0Q2hpbGRFbGVtZW50KCBjb25zdCBjaGFyICogdmFsdWUgKTsKIAogICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMCiAJY29uc3QgVGlYbWxFbGVtZW50KiBGaXJzdENoaWxkRWxlbWVudCggY29uc3Qgc3RkOjpzdHJpbmcmIF92YWx1ZSApIGNvbnN0CXsJcmV0dXJuIEZpcnN0Q2hpbGRFbGVtZW50IChfdmFsdWUuY19zdHIgKCkpOwl9CS8vLzwgU1RMIHN0ZDo6c3RyaW5nIGZvcm0uCkBAIC02NzgsNjUgKzYxOSwzOSBAQAogCSNlbmRpZgogCiAJLyoqIFF1ZXJ5IHRoZSB0eXBlIChhcyBhbiBlbnVtZXJhdGVkIHZhbHVlLCBhYm92ZSkgb2YgdGhpcyBub2RlLgotCQlUaGUgcG9zc2libGUgdHlwZXMgYXJlOiBUSU5ZWE1MX0RPQ1VNRU5ULCBUSU5ZWE1MX0VMRU1FTlQsIFRJTllYTUxfQ09NTUVOVCwKLQkJCQkJCQkJVElOWVhNTF9VTktOT1dOLCBUSU5ZWE1MX1RFWFQsIGFuZCBUSU5ZWE1MX0RFQ0xBUkFUSU9OLgorCQlUaGUgcG9zc2libGUgdHlwZXMgYXJlOiBET0NVTUVOVCwgRUxFTUVOVCwgQ09NTUVOVCwKKwkJCQkJCQkJVU5LTk9XTiwgVEVYVCwgYW5kIERFQ0xBUkFUSU9OLgogCSovCi0JaW50IFR5cGUoKSBjb25zdAl7IHJldHVybiB0eXBlOyB9CisJdmlydHVhbCBpbnQgVHlwZSgpIGNvbnN0CXsgcmV0dXJuIHR5cGU7IH0KIAogCS8qKiBSZXR1cm4gYSBwb2ludGVyIHRvIHRoZSBEb2N1bWVudCB0aGlzIG5vZGUgbGl2ZXMgaW4uCiAJCVJldHVybnMgbnVsbCBpZiBub3QgaW4gYSBkb2N1bWVudC4KIAkqLwogCWNvbnN0IFRpWG1sRG9jdW1lbnQqIEdldERvY3VtZW50KCkgY29uc3Q7Ci0JVGlYbWxEb2N1bWVudCogR2V0RG9jdW1lbnQoKSB7Ci0JCXJldHVybiBjb25zdF9jYXN0PCBUaVhtbERvY3VtZW50KiA+KCAoY29uc3RfY2FzdDwgY29uc3QgVGlYbWxOb2RlKiA+KHRoaXMpKS0+R2V0RG9jdW1lbnQoKSApOwotCX0KKwlUaVhtbERvY3VtZW50KiBHZXREb2N1bWVudCgpOwogCiAJLy8vIFJldHVybnMgdHJ1ZSBpZiB0aGlzIG5vZGUgaGFzIG5vIGNoaWxkcmVuLgogCWJvb2wgTm9DaGlsZHJlbigpIGNvbnN0CQkJCQkJeyByZXR1cm4gIWZpcnN0Q2hpbGQ7IH0KIAotCXZpcnR1YWwgY29uc3QgVGlYbWxEb2N1bWVudCogICAgVG9Eb2N1bWVudCgpICAgIGNvbnN0IHsgcmV0dXJuIDA7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KLQl2aXJ0dWFsIGNvbnN0IFRpWG1sRWxlbWVudCogICAgIFRvRWxlbWVudCgpICAgICBjb25zdCB7IHJldHVybiAwOyB9IC8vLzwgQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIGlmIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuCi0JdmlydHVhbCBjb25zdCBUaVhtbENvbW1lbnQqICAgICBUb0NvbW1lbnQoKSAgICAgY29uc3QgeyByZXR1cm4gMDsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgotCXZpcnR1YWwgY29uc3QgVGlYbWxVbmtub3duKiAgICAgVG9Vbmtub3duKCkgICAgIGNvbnN0IHsgcmV0dXJuIDA7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KLQl2aXJ0dWFsIGNvbnN0IFRpWG1sVGV4dCogICAgICAgIFRvVGV4dCgpICAgICAgICBjb25zdCB7IHJldHVybiAwOyB9IC8vLzwgQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIGlmIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuCi0JdmlydHVhbCBjb25zdCBUaVhtbERlY2xhcmF0aW9uKiBUb0RlY2xhcmF0aW9uKCkgY29uc3QgeyByZXR1cm4gMDsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgorCWNvbnN0IFRpWG1sRG9jdW1lbnQqIFRvRG9jdW1lbnQoKQljb25zdAkJeyByZXR1cm4gKCB0aGlzICYmIHR5cGUgPT0gRE9DVU1FTlQgKSA/IChjb25zdCBUaVhtbERvY3VtZW50KikgdGhpcyA6IDA7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KKwljb25zdCBUaVhtbEVsZW1lbnQqICBUb0VsZW1lbnQoKSBjb25zdAkJCXsgcmV0dXJuICggdGhpcyAmJiB0eXBlID09IEVMRU1FTlQgICkgPyAoY29uc3QgVGlYbWxFbGVtZW50KikgIHRoaXMgOiAwOyB9IC8vLzwgQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuCisJY29uc3QgVGlYbWxDb21tZW50KiAgVG9Db21tZW50KCkgY29uc3QJCQl7IHJldHVybiAoIHRoaXMgJiYgdHlwZSA9PSBDT01NRU5UICApID8gKGNvbnN0IFRpWG1sQ29tbWVudCopICB0aGlzIDogMDsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgorCWNvbnN0IFRpWG1sVW5rbm93biogIFRvVW5rbm93bigpIGNvbnN0CQkJeyByZXR1cm4gKCB0aGlzICYmIHR5cGUgPT0gVU5LTk9XTiAgKSA/IChjb25zdCBUaVhtbFVua25vd24qKSAgdGhpcyA6IDA7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KKwljb25zdCBUaVhtbFRleHQqCSAgIFRvVGV4dCgpICAgIGNvbnN0CQl7IHJldHVybiAoIHRoaXMgJiYgdHlwZSA9PSBURVhUICAgICApID8gKGNvbnN0IFRpWG1sVGV4dCopICAgICB0aGlzIDogMDsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgorCWNvbnN0IFRpWG1sRGVjbGFyYXRpb24qIFRvRGVjbGFyYXRpb24oKSBjb25zdAl7IHJldHVybiAoIHRoaXMgJiYgdHlwZSA9PSBERUNMQVJBVElPTiApID8gKGNvbnN0IFRpWG1sRGVjbGFyYXRpb24qKSB0aGlzIDogMDsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgogCi0JdmlydHVhbCBUaVhtbERvY3VtZW50KiAgICAgICAgICBUb0RvY3VtZW50KCkgICAgeyByZXR1cm4gMDsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgotCXZpcnR1YWwgVGlYbWxFbGVtZW50KiAgICAgICAgICAgVG9FbGVtZW50KCkJICAgIHsgcmV0dXJuIDA7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KLQl2aXJ0dWFsIFRpWG1sQ29tbWVudCogICAgICAgICAgIFRvQ29tbWVudCgpICAgICB7IHJldHVybiAwOyB9IC8vLzwgQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIGlmIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuCi0JdmlydHVhbCBUaVhtbFVua25vd24qICAgICAgICAgICBUb1Vua25vd24oKQkgICAgeyByZXR1cm4gMDsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgotCXZpcnR1YWwgVGlYbWxUZXh0KgkgICAgICAgICAgICBUb1RleHQoKSAgICAgICAgeyByZXR1cm4gMDsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBpZiBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgotCXZpcnR1YWwgVGlYbWxEZWNsYXJhdGlvbiogICAgICAgVG9EZWNsYXJhdGlvbigpIHsgcmV0dXJuIDA7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgaWYgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KKwlUaVhtbERvY3VtZW50KiBUb0RvY3VtZW50KCkJCQl7IHJldHVybiAoIHRoaXMgJiYgdHlwZSA9PSBET0NVTUVOVCApID8gKFRpWG1sRG9jdW1lbnQqKSB0aGlzIDogMDsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgorCVRpWG1sRWxlbWVudCogIFRvRWxlbWVudCgpCQkJeyByZXR1cm4gKCB0aGlzICYmIHR5cGUgPT0gRUxFTUVOVCAgKSA/IChUaVhtbEVsZW1lbnQqKSAgdGhpcyA6IDA7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KKwlUaVhtbENvbW1lbnQqICBUb0NvbW1lbnQoKQkJCXsgcmV0dXJuICggdGhpcyAmJiB0eXBlID09IENPTU1FTlQgICkgPyAoVGlYbWxDb21tZW50KikgIHRoaXMgOiAwOyB9IC8vLzwgQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuCisJVGlYbWxVbmtub3duKiAgVG9Vbmtub3duKCkJCQl7IHJldHVybiAoIHRoaXMgJiYgdHlwZSA9PSBVTktOT1dOICApID8gKFRpWG1sVW5rbm93biopICB0aGlzIDogMDsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgorCVRpWG1sVGV4dCoJICAgVG9UZXh0KCkgICAJCQl7IHJldHVybiAoIHRoaXMgJiYgdHlwZSA9PSBURVhUICAgICApID8gKFRpWG1sVGV4dCopICAgICB0aGlzIDogMDsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgorCVRpWG1sRGVjbGFyYXRpb24qIFRvRGVjbGFyYXRpb24oKQl7IHJldHVybiAoIHRoaXMgJiYgdHlwZSA9PSBERUNMQVJBVElPTiApID8gKFRpWG1sRGVjbGFyYXRpb24qKSB0aGlzIDogMDsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgogCiAJLyoqIENyZWF0ZSBhbiBleGFjdCBkdXBsaWNhdGUgb2YgdGhpcyBub2RlIGFuZCByZXR1cm4gaXQuIFRoZSBtZW1vcnkgbXVzdCBiZSBkZWxldGVkCiAJCWJ5IHRoZSBjYWxsZXIuIAogCSovCiAJdmlydHVhbCBUaVhtbE5vZGUqIENsb25lKCkgY29uc3QgPSAwOwogCi0JLyoqIEFjY2VwdCBhIGhpZXJjaGljYWwgdmlzaXQgdGhlIG5vZGVzIGluIHRoZSBUaW55WE1MIERPTS4gRXZlcnkgbm9kZSBpbiB0aGUgCi0JCVhNTCB0cmVlIHdpbGwgYmUgY29uZGl0aW9uYWxseSB2aXNpdGVkIGFuZCB0aGUgaG9zdCB3aWxsIGJlIGNhbGxlZCBiYWNrCi0JCXZpYSB0aGUgVGlYbWxWaXNpdG9yIGludGVyZmFjZS4KLQotCQlUaGlzIGlzIGVzc2VudGlhbGx5IGEgU0FYIGludGVyZmFjZSBmb3IgVGlueVhNTC4gKE5vdGUgaG93ZXZlciBpdCBkb2Vzbid0IHJlLXBhcnNlCi0JCXRoZSBYTUwgZm9yIHRoZSBjYWxsYmFja3MsIHNvIHRoZSBwZXJmb3JtYW5jZSBvZiBUaW55WE1MIGlzIHVuY2hhbmdlZCBieSB1c2luZyB0aGlzCi0JCWludGVyZmFjZSB2ZXJzdXMgYW55IG90aGVyLikKLQotCQlUaGUgaW50ZXJmYWNlIGhhcyBiZWVuIGJhc2VkIG9uIGlkZWFzIGZyb206Ci0KLQkJLSBodHRwOi8vd3d3LnNheHByb2plY3Qub3JnLwotCQktIGh0dHA6Ly9jMi5jb20vY2dpL3dpa2k/SGllcmFyY2hpY2FsVmlzaXRvclBhdHRlcm4gCi0KLQkJV2hpY2ggYXJlIGJvdGggZ29vZCByZWZlcmVuY2VzIGZvciAidmlzaXRpbmciLgotCi0JCUFuIGV4YW1wbGUgb2YgdXNpbmcgQWNjZXB0KCk6Ci0JCUB2ZXJiYXRpbQotCQlUaVhtbFByaW50ZXIgcHJpbnRlcjsKLQkJdGlueXhtbERvYy5BY2NlcHQoICZwcmludGVyICk7Ci0JCWNvbnN0IGNoYXIqIHhtbGNzdHIgPSBwcmludGVyLkNTdHIoKTsKLQkJQGVuZHZlcmJhdGltCi0JKi8KLQl2aXJ0dWFsIGJvb2wgQWNjZXB0KCBUaVhtbFZpc2l0b3IqIHZpc2l0b3IgKSBjb25zdCA9IDA7Ci0KIHByb3RlY3RlZDoKIAlUaVhtbE5vZGUoIE5vZGVUeXBlIF90eXBlICk7CiAKQEAgLTc0Niw3ICs2NjEsNyBAQAogCiAJI2lmZGVmIFRJWE1MX1VTRV9TVEwKIAkgICAgLy8gVGhlIHJlYWwgd29yayBvZiB0aGUgaW5wdXQgb3BlcmF0b3IuCi0JdmlydHVhbCB2b2lkIFN0cmVhbUluKCBzdGQ6OmlzdHJlYW0qIGluLCBUSVhNTF9TVFJJTkcqIHRhZyApID0gMDsKKwkgICAgdmlydHVhbCB2b2lkIFN0cmVhbUluKCBUSVhNTF9JU1RSRUFNKiBpbiwgVElYTUxfU1RSSU5HKiB0YWcgKSA9IDA7CiAJI2VuZGlmCiAKIAkvLyBGaWd1cmUgb3V0IHdoYXQgaXMgYXQgKnAsIGFuZCBwYXJzZSBpdC4gUmV0dXJucyBudWxsIGlmIGl0IGlzIG5vdCBhbiB4bWwgbm9kZS4KQEAgLTgwOCwxNyArNzIzLDExIEBACiAJCXByZXYgPSBuZXh0ID0gMDsKIAl9CiAKLQljb25zdCBjaGFyKgkJTmFtZSgpICBjb25zdAkJeyByZXR1cm4gbmFtZS5jX3N0cigpOyB9CQkvLy88IFJldHVybiB0aGUgbmFtZSBvZiB0aGlzIGF0dHJpYnV0ZS4KLQljb25zdCBjaGFyKgkJVmFsdWUoKSBjb25zdAkJeyByZXR1cm4gdmFsdWUuY19zdHIoKTsgfQkJLy8vPCBSZXR1cm4gdGhlIHZhbHVlIG9mIHRoaXMgYXR0cmlidXRlLgotCSNpZmRlZiBUSVhNTF9VU0VfU1RMCi0JY29uc3Qgc3RkOjpzdHJpbmcmIFZhbHVlU3RyKCkgY29uc3QJeyByZXR1cm4gdmFsdWU7IH0JCQkJLy8vPCBSZXR1cm4gdGhlIHZhbHVlIG9mIHRoaXMgYXR0cmlidXRlLgotCSNlbmRpZgorCWNvbnN0IGNoYXIqCQlOYW1lKCkgIGNvbnN0CQl7IHJldHVybiBuYW1lLmNfc3RyICgpOyB9CQkvLy88IFJldHVybiB0aGUgbmFtZSBvZiB0aGlzIGF0dHJpYnV0ZS4KKwljb25zdCBjaGFyKgkJVmFsdWUoKSBjb25zdAkJeyByZXR1cm4gdmFsdWUuY19zdHIgKCk7IH0JCS8vLzwgUmV0dXJuIHRoZSB2YWx1ZSBvZiB0aGlzIGF0dHJpYnV0ZS4KIAlpbnQJCQkJSW50VmFsdWUoKSBjb25zdDsJCQkJCQkJCQkvLy88IFJldHVybiB0aGUgdmFsdWUgb2YgdGhpcyBhdHRyaWJ1dGUsIGNvbnZlcnRlZCB0byBhbiBpbnRlZ2VyLgogCWRvdWJsZQkJCURvdWJsZVZhbHVlKCkgY29uc3Q7CQkJCQkJCQkvLy88IFJldHVybiB0aGUgdmFsdWUgb2YgdGhpcyBhdHRyaWJ1dGUsIGNvbnZlcnRlZCB0byBhIGRvdWJsZS4KIAotCS8vIEdldCB0aGUgdGlueXhtbCBzdHJpbmcgcmVwcmVzZW50YXRpb24KLQljb25zdCBUSVhNTF9TVFJJTkcmIE5hbWVUU3RyKCkgY29uc3QgeyByZXR1cm4gbmFtZTsgfQotCiAJLyoqIFF1ZXJ5SW50VmFsdWUgZXhhbWluZXMgdGhlIHZhbHVlIHN0cmluZy4gSXQgaXMgYW4gYWx0ZXJuYXRpdmUgdG8gdGhlCiAJCUludFZhbHVlKCkgbWV0aG9kIHdpdGggcmljaGVyIGVycm9yIGNoZWNraW5nLgogCQlJZiB0aGUgdmFsdWUgaXMgYW4gaW50ZWdlciwgaXQgaXMgc3RvcmVkIGluICd2YWx1ZScgYW5kIApAQCAtODQwLDIyICs3NDksMjUgQEAKIAogICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMCiAJLy8vIFNUTCBzdGQ6OnN0cmluZyBmb3JtLgotCXZvaWQgU2V0TmFtZSggY29uc3Qgc3RkOjpzdHJpbmcmIF9uYW1lICkJeyBuYW1lID0gX25hbWU7IH0JCisJdm9pZCBTZXROYW1lKCBjb25zdCBzdGQ6OnN0cmluZyYgX25hbWUgKQkKKwl7CQorCQlTdHJpbmdUb0J1ZmZlciBidWYoIF9uYW1lICk7CisJCVNldE5hbWUgKCBidWYuYnVmZmVyID8gYnVmLmJ1ZmZlciA6ICJlcnJvciIgKTsJCisJfQogCS8vLyBTVEwgc3RkOjpzdHJpbmcgZm9ybS4JCi0Jdm9pZCBTZXRWYWx1ZSggY29uc3Qgc3RkOjpzdHJpbmcmIF92YWx1ZSApCXsgdmFsdWUgPSBfdmFsdWU7IH0KKwl2b2lkIFNldFZhbHVlKCBjb25zdCBzdGQ6OnN0cmluZyYgX3ZhbHVlICkJCisJewkKKwkJU3RyaW5nVG9CdWZmZXIgYnVmKCBfdmFsdWUgKTsKKwkJU2V0VmFsdWUoIGJ1Zi5idWZmZXIgPyBidWYuYnVmZmVyIDogImVycm9yIiApOwkKKwl9CiAJI2VuZGlmCiAKIAkvLy8gR2V0IHRoZSBuZXh0IHNpYmxpbmcgYXR0cmlidXRlIGluIHRoZSBET00uIFJldHVybnMgbnVsbCBhdCBlbmQuCiAJY29uc3QgVGlYbWxBdHRyaWJ1dGUqIE5leHQoKSBjb25zdDsKLQlUaVhtbEF0dHJpYnV0ZSogTmV4dCgpIHsKLQkJcmV0dXJuIGNvbnN0X2Nhc3Q8IFRpWG1sQXR0cmlidXRlKiA+KCAoY29uc3RfY2FzdDwgY29uc3QgVGlYbWxBdHRyaWJ1dGUqID4odGhpcykpLT5OZXh0KCkgKTsgCi0JfQotCisJVGlYbWxBdHRyaWJ1dGUqIE5leHQoKTsKIAkvLy8gR2V0IHRoZSBwcmV2aW91cyBzaWJsaW5nIGF0dHJpYnV0ZSBpbiB0aGUgRE9NLiBSZXR1cm5zIG51bGwgYXQgYmVnaW5uaW5nLgogCWNvbnN0IFRpWG1sQXR0cmlidXRlKiBQcmV2aW91cygpIGNvbnN0OwotCVRpWG1sQXR0cmlidXRlKiBQcmV2aW91cygpIHsKLQkJcmV0dXJuIGNvbnN0X2Nhc3Q8IFRpWG1sQXR0cmlidXRlKiA+KCAoY29uc3RfY2FzdDwgY29uc3QgVGlYbWxBdHRyaWJ1dGUqID4odGhpcykpLT5QcmV2aW91cygpICk7IAotCX0KKwlUaVhtbEF0dHJpYnV0ZSogUHJldmlvdXMoKTsKIAogCWJvb2wgb3BlcmF0b3I9PSggY29uc3QgVGlYbWxBdHRyaWJ1dGUmIHJocyApIGNvbnN0IHsgcmV0dXJuIHJocy5uYW1lID09IG5hbWU7IH0KIAlib29sIG9wZXJhdG9yPCggY29uc3QgVGlYbWxBdHRyaWJ1dGUmIHJocyApCSBjb25zdCB7IHJldHVybiBuYW1lIDwgcmhzLm5hbWU7IH0KQEAgLTg2NywxMSArNzc5LDkgQEAKIAl2aXJ0dWFsIGNvbnN0IGNoYXIqIFBhcnNlKCBjb25zdCBjaGFyKiBwLCBUaVhtbFBhcnNpbmdEYXRhKiBkYXRhLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7CiAKIAkvLyBQcmludHMgdGhpcyBBdHRyaWJ1dGUgdG8gYSBGSUxFIHN0cmVhbS4KLQl2aXJ0dWFsIHZvaWQgUHJpbnQoIEZJTEUqIGNmaWxlLCBpbnQgZGVwdGggKSBjb25zdCB7Ci0JCVByaW50KCBjZmlsZSwgZGVwdGgsIDAgKTsKLQl9Ci0Jdm9pZCBQcmludCggRklMRSogY2ZpbGUsIGludCBkZXB0aCwgVElYTUxfU1RSSU5HKiBzdHIgKSBjb25zdDsKKwl2aXJ0dWFsIHZvaWQgUHJpbnQoIEZJTEUqIGNmaWxlLCBpbnQgZGVwdGggKSBjb25zdDsKIAorCXZpcnR1YWwgdm9pZCBTdHJlYW1PdXQoIFRJWE1MX09TVFJFQU0gKiBvdXQgKSBjb25zdDsKIAkvLyBbaW50ZXJuYWwgdXNlXQogCS8vIFNldCB0aGUgZG9jdW1lbnQgcG9pbnRlciBzbyB0aGUgYXR0cmlidXRlIGNhbiByZXBvcnQgZXJyb3JzLgogCXZvaWQgU2V0RG9jdW1lbnQoIFRpWG1sRG9jdW1lbnQqIGRvYyApCXsgZG9jdW1lbnQgPSBkb2M7IH0KQEAgLTkxNCwxNCArODI0LDggQEAKIAljb25zdCBUaVhtbEF0dHJpYnV0ZSogTGFzdCgpIGNvbnN0CQl7IHJldHVybiAoIHNlbnRpbmVsLnByZXYgPT0gJnNlbnRpbmVsICkgPyAwIDogc2VudGluZWwucHJldjsgfQogCVRpWG1sQXR0cmlidXRlKiBMYXN0KCkJCQkJCXsgcmV0dXJuICggc2VudGluZWwucHJldiA9PSAmc2VudGluZWwgKSA/IDAgOiBzZW50aW5lbC5wcmV2OyB9CiAKLQlUaVhtbEF0dHJpYnV0ZSoJRmluZCggY29uc3QgY2hhciogX25hbWUgKSBjb25zdDsKLQlUaVhtbEF0dHJpYnV0ZSogRmluZE9yQ3JlYXRlKCBjb25zdCBjaGFyKiBfbmFtZSApOwotCi0jCWlmZGVmIFRJWE1MX1VTRV9TVEwKLQlUaVhtbEF0dHJpYnV0ZSoJRmluZCggY29uc3Qgc3RkOjpzdHJpbmcmIF9uYW1lICkgY29uc3Q7Ci0JVGlYbWxBdHRyaWJ1dGUqIEZpbmRPckNyZWF0ZSggY29uc3Qgc3RkOjpzdHJpbmcmIF9uYW1lICk7Ci0jCWVuZGlmCi0KKwljb25zdCBUaVhtbEF0dHJpYnV0ZSoJRmluZCggY29uc3QgY2hhciAqIG5hbWUgKSBjb25zdDsKKwlUaVhtbEF0dHJpYnV0ZSoJRmluZCggY29uc3QgY2hhciAqIG5hbWUgKTsKIAogcHJpdmF0ZToKIAkvLypNRToJQmVjYXVzZSBvZiBoaWRkZW4vZGlzYWJsZWQgY29weS1jb25zdHJ1a3RvciBpbiBUaVhtbEF0dHJpYnV0ZSAoc2VudGluZWwtZWxlbWVudCksCkBAIC05NTAsNyArODU0LDcgQEAKIAogCVRpWG1sRWxlbWVudCggY29uc3QgVGlYbWxFbGVtZW50JiApOwogCi0JVGlYbWxFbGVtZW50JiBvcGVyYXRvcj0oIGNvbnN0IFRpWG1sRWxlbWVudCYgYmFzZSApOworCXZvaWQgb3BlcmF0b3I9KCBjb25zdCBUaVhtbEVsZW1lbnQmIGJhc2UgKTsKIAogCXZpcnR1YWwgflRpWG1sRWxlbWVudCgpOwogCkBAIC05ODMsMTMgKzg4Nyw2IEBACiAJCWRvZXMgbm90IGV4aXN0LCB0aGVuIFRJWE1MX05PX0FUVFJJQlVURSBpcyByZXR1cm5lZC4KIAkqLwkKIAlpbnQgUXVlcnlJbnRBdHRyaWJ1dGUoIGNvbnN0IGNoYXIqIG5hbWUsIGludCogX3ZhbHVlICkgY29uc3Q7Ci0JLy8vIFF1ZXJ5VW5zaWduZWRBdHRyaWJ1dGUgZXhhbWluZXMgdGhlIGF0dHJpYnV0ZSAtIHNlZSBRdWVyeUludEF0dHJpYnV0ZSgpLgotCWludCBRdWVyeVVuc2lnbmVkQXR0cmlidXRlKCBjb25zdCBjaGFyKiBuYW1lLCB1bnNpZ25lZCogX3ZhbHVlICkgY29uc3Q7Ci0JLyoqIFF1ZXJ5Qm9vbEF0dHJpYnV0ZSBleGFtaW5lcyB0aGUgYXR0cmlidXRlIC0gc2VlIFF1ZXJ5SW50QXR0cmlidXRlKCkuIAotCQlOb3RlIHRoYXQgJzEnLCAndHJ1ZScsIG9yICd5ZXMnIGFyZSBjb25zaWRlcmVkIHRydWUsIHdoaWxlICcwJywgJ2ZhbHNlJwotCQlhbmQgJ25vJyBhcmUgY29uc2lkZXJlZCBmYWxzZS4KLQkqLwotCWludCBRdWVyeUJvb2xBdHRyaWJ1dGUoIGNvbnN0IGNoYXIqIG5hbWUsIGJvb2wqIF92YWx1ZSApIGNvbnN0OwogCS8vLyBRdWVyeURvdWJsZUF0dHJpYnV0ZSBleGFtaW5lcyB0aGUgYXR0cmlidXRlIC0gc2VlIFF1ZXJ5SW50QXR0cmlidXRlKCkuCiAJaW50IFF1ZXJ5RG91YmxlQXR0cmlidXRlKCBjb25zdCBjaGFyKiBuYW1lLCBkb3VibGUqIF92YWx1ZSApIGNvbnN0OwogCS8vLyBRdWVyeUZsb2F0QXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBzZWUgUXVlcnlJbnRBdHRyaWJ1dGUoKS4KQEAgLTEwMDIsNjYgKzg5OSwzMyBAQAogCQlyZXR1cm4gcmVzdWx0OwogCX0KIAotICAgICNpZmRlZiBUSVhNTF9VU0VfU1RMCi0JLy8vIFF1ZXJ5U3RyaW5nQXR0cmlidXRlIGV4YW1pbmVzIHRoZSBhdHRyaWJ1dGUgLSBzZWUgUXVlcnlJbnRBdHRyaWJ1dGUoKS4KLQlpbnQgUXVlcnlTdHJpbmdBdHRyaWJ1dGUoIGNvbnN0IGNoYXIqIG5hbWUsIHN0ZDo6c3RyaW5nKiBfdmFsdWUgKSBjb25zdCB7Ci0JCWNvbnN0IGNoYXIqIGNzdHIgPSBBdHRyaWJ1dGUoIG5hbWUgKTsKLQkJaWYgKCBjc3RyICkgewotCQkJKl92YWx1ZSA9IHN0ZDo6c3RyaW5nKCBjc3RyICk7Ci0JCQlyZXR1cm4gVElYTUxfU1VDQ0VTUzsKLQkJfQotCQlyZXR1cm4gVElYTUxfTk9fQVRUUklCVVRFOwotCX0KLQotCS8qKiBUZW1wbGF0ZSBmb3JtIG9mIHRoZSBhdHRyaWJ1dGUgcXVlcnkgd2hpY2ggd2lsbCB0cnkgdG8gcmVhZCB0aGUKLQkJYXR0cmlidXRlIGludG8gdGhlIHNwZWNpZmllZCB0eXBlLiBWZXJ5IGVhc3ksIHZlcnkgcG93ZXJmdWwsIGJ1dAotCQliZSBjYXJlZnVsIHRvIG1ha2Ugc3VyZSB0byBjYWxsIHRoaXMgd2l0aCB0aGUgY29ycmVjdCB0eXBlLgotCQkKLQkJTk9URTogVGhpcyBtZXRob2QgZG9lc24ndCB3b3JrIGNvcnJlY3RseSBmb3IgJ3N0cmluZycgdHlwZXMgdGhhdCBjb250YWluIHNwYWNlcy4KLQotCQlAcmV0dXJuIFRJWE1MX1NVQ0NFU1MsIFRJWE1MX1dST05HX1RZUEUsIG9yIFRJWE1MX05PX0FUVFJJQlVURQotCSovCi0JdGVtcGxhdGU8IHR5cGVuYW1lIFQgPiBpbnQgUXVlcnlWYWx1ZUF0dHJpYnV0ZSggY29uc3Qgc3RkOjpzdHJpbmcmIG5hbWUsIFQqIG91dFZhbHVlICkgY29uc3QKLQl7Ci0JCWNvbnN0IFRpWG1sQXR0cmlidXRlKiBub2RlID0gYXR0cmlidXRlU2V0LkZpbmQoIG5hbWUgKTsKLQkJaWYgKCAhbm9kZSApCi0JCQlyZXR1cm4gVElYTUxfTk9fQVRUUklCVVRFOwotCi0JCXN0ZDo6c3RyaW5nc3RyZWFtIHNzdHJlYW0oIG5vZGUtPlZhbHVlU3RyKCkgKTsKLQkJc3N0cmVhbSA+PiAqb3V0VmFsdWU7Ci0JCWlmICggIXNzdHJlYW0uZmFpbCgpICkKLQkJCXJldHVybiBUSVhNTF9TVUNDRVNTOwotCQlyZXR1cm4gVElYTUxfV1JPTkdfVFlQRTsKLQl9Ci0KLQlpbnQgUXVlcnlWYWx1ZUF0dHJpYnV0ZSggY29uc3Qgc3RkOjpzdHJpbmcmIG5hbWUsIHN0ZDo6c3RyaW5nKiBvdXRWYWx1ZSApIGNvbnN0Ci0JewotCQljb25zdCBUaVhtbEF0dHJpYnV0ZSogbm9kZSA9IGF0dHJpYnV0ZVNldC5GaW5kKCBuYW1lICk7Ci0JCWlmICggIW5vZGUgKQotCQkJcmV0dXJuIFRJWE1MX05PX0FUVFJJQlVURTsKLQkJKm91dFZhbHVlID0gbm9kZS0+VmFsdWVTdHIoKTsKLQkJcmV0dXJuIFRJWE1MX1NVQ0NFU1M7Ci0JfQotCSNlbmRpZgotCiAJLyoqIFNldHMgYW4gYXR0cmlidXRlIG9mIG5hbWUgdG8gYSBnaXZlbiB2YWx1ZS4gVGhlIGF0dHJpYnV0ZQogCQl3aWxsIGJlIGNyZWF0ZWQgaWYgaXQgZG9lcyBub3QgZXhpc3QsIG9yIGNoYW5nZWQgaWYgaXQgZG9lcy4KIAkqLwogCXZvaWQgU2V0QXR0cmlidXRlKCBjb25zdCBjaGFyKiBuYW1lLCBjb25zdCBjaGFyICogX3ZhbHVlICk7CiAKICAgICAjaWZkZWYgVElYTUxfVVNFX1NUTAotCWNvbnN0IHN0ZDo6c3RyaW5nKiBBdHRyaWJ1dGUoIGNvbnN0IHN0ZDo6c3RyaW5nJiBuYW1lICkgY29uc3Q7Ci0JY29uc3Qgc3RkOjpzdHJpbmcqIEF0dHJpYnV0ZSggY29uc3Qgc3RkOjpzdHJpbmcmIG5hbWUsIGludCogaSApIGNvbnN0OwotCWNvbnN0IHN0ZDo6c3RyaW5nKiBBdHRyaWJ1dGUoIGNvbnN0IHN0ZDo6c3RyaW5nJiBuYW1lLCBkb3VibGUqIGQgKSBjb25zdDsKLQlpbnQgUXVlcnlJbnRBdHRyaWJ1dGUoIGNvbnN0IHN0ZDo6c3RyaW5nJiBuYW1lLCBpbnQqIF92YWx1ZSApIGNvbnN0OwotCWludCBRdWVyeURvdWJsZUF0dHJpYnV0ZSggY29uc3Qgc3RkOjpzdHJpbmcmIG5hbWUsIGRvdWJsZSogX3ZhbHVlICkgY29uc3Q7CisJY29uc3QgY2hhciogQXR0cmlidXRlKCBjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSApIGNvbnN0CQkJCXsgcmV0dXJuIEF0dHJpYnV0ZSggbmFtZS5jX3N0cigpICk7IH0KKwljb25zdCBjaGFyKiBBdHRyaWJ1dGUoIGNvbnN0IHN0ZDo6c3RyaW5nJiBuYW1lLCBpbnQqIGkgKSBjb25zdAkJeyByZXR1cm4gQXR0cmlidXRlKCBuYW1lLmNfc3RyKCksIGkgKTsgfQorCWNvbnN0IGNoYXIqIEF0dHJpYnV0ZSggY29uc3Qgc3RkOjpzdHJpbmcmIG5hbWUsIGRvdWJsZSogZCApIGNvbnN0CXsgcmV0dXJuIEF0dHJpYnV0ZSggbmFtZS5jX3N0cigpLCBkICk7IH0KKwlpbnQgUXVlcnlJbnRBdHRyaWJ1dGUoIGNvbnN0IHN0ZDo6c3RyaW5nJiBuYW1lLCBpbnQqIF92YWx1ZSApIGNvbnN0CXsgcmV0dXJuIFF1ZXJ5SW50QXR0cmlidXRlKCBuYW1lLmNfc3RyKCksIF92YWx1ZSApOyB9CisJaW50IFF1ZXJ5RG91YmxlQXR0cmlidXRlKCBjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSwgZG91YmxlKiBfdmFsdWUgKSBjb25zdCB7IHJldHVybiBRdWVyeURvdWJsZUF0dHJpYnV0ZSggbmFtZS5jX3N0cigpLCBfdmFsdWUgKTsgfQogCiAJLy8vIFNUTCBzdGQ6OnN0cmluZyBmb3JtLgotCXZvaWQgU2V0QXR0cmlidXRlKCBjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSwgY29uc3Qgc3RkOjpzdHJpbmcmIF92YWx1ZSApOworCXZvaWQgU2V0QXR0cmlidXRlKCBjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSwgY29uc3Qgc3RkOjpzdHJpbmcmIF92YWx1ZSApCQorCXsJCisJCVN0cmluZ1RvQnVmZmVyIG4oIG5hbWUgKTsKKwkJU3RyaW5nVG9CdWZmZXIgdiggX3ZhbHVlICk7CisJCWlmICggbi5idWZmZXIgJiYgdi5idWZmZXIgKQorCQkJU2V0QXR0cmlidXRlIChuLmJ1ZmZlciwgdi5idWZmZXIgKTsJCisJfQkKIAkvLy88IFNUTCBzdGQ6OnN0cmluZyBmb3JtLgotCXZvaWQgU2V0QXR0cmlidXRlKCBjb25zdCBzdGQ6OnN0cmluZyYgbmFtZSwgaW50IF92YWx1ZSApOwotCS8vLzwgU1RMIHN0ZDo6c3RyaW5nIGZvcm0uCi0Jdm9pZCBTZXREb3VibGVBdHRyaWJ1dGUoIGNvbnN0IHN0ZDo6c3RyaW5nJiBuYW1lLCBkb3VibGUgdmFsdWUgKTsKKwl2b2lkIFNldEF0dHJpYnV0ZSggY29uc3Qgc3RkOjpzdHJpbmcmIG5hbWUsIGludCBfdmFsdWUgKQkKKwl7CQorCQlTdHJpbmdUb0J1ZmZlciBuKCBuYW1lICk7CisJCWlmICggbi5idWZmZXIgKQorCQkJU2V0QXR0cmlidXRlIChuLmJ1ZmZlciwgX3ZhbHVlKTsJCisJfQkKIAkjZW5kaWYKIAogCS8qKiBTZXRzIGFuIGF0dHJpYnV0ZSBvZiBuYW1lIHRvIGEgZ2l2ZW4gdmFsdWUuIFRoZSBhdHRyaWJ1dGUKQEAgLTEwOTEsNyArOTU1LDcgQEAKIAkJYW5kIGFjY2Vzc2luZyBpdCBkaXJlY3RseS4KIAkKIAkJSWYgdGhlIGZpcnN0IGNoaWxkIG9mICd0aGlzJyBpcyBhIFRpWG1sVGV4dCwgdGhlIEdldFRleHQoKQotCQlyZXR1cm5zIHRoZSBjaGFyYWN0ZXIgc3RyaW5nIG9mIHRoZSBUZXh0IG5vZGUsIGVsc2UgbnVsbCBpcyByZXR1cm5lZC4KKwkJcmV0dXJzIHRoZSBjaGFyYWN0ZXIgc3RyaW5nIG9mIHRoZSBUZXh0IG5vZGUsIGVsc2UgbnVsbCBpcyByZXR1cm5lZC4KIAogCQlUaGlzIGlzIGEgY29udmVuaWVudCBtZXRob2QgZm9yIGdldHRpbmcgdGhlIHRleHQgb2Ygc2ltcGxlIGNvbnRhaW5lZCB0ZXh0OgogCQlAdmVyYmF0aW0KQEAgLTExMzAsMTMgKzk5NCw2IEBACiAJKi8KIAl2aXJ0dWFsIGNvbnN0IGNoYXIqIFBhcnNlKCBjb25zdCBjaGFyKiBwLCBUaVhtbFBhcnNpbmdEYXRhKiBkYXRhLCBUaVhtbEVuY29kaW5nIGVuY29kaW5nICk7CiAKLQl2aXJ0dWFsIGNvbnN0IFRpWG1sRWxlbWVudCogICAgIFRvRWxlbWVudCgpICAgICBjb25zdCB7IHJldHVybiB0aGlzOyB9IC8vLzwgQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuCi0JdmlydHVhbCBUaVhtbEVsZW1lbnQqICAgICAgICAgICBUb0VsZW1lbnQoKQkgICAgICAgICAgeyByZXR1cm4gdGhpczsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgotCi0JLyoqIFdhbGsgdGhlIFhNTCB0cmVlIHZpc2l0aW5nIHRoaXMgbm9kZSBhbmQgYWxsIG9mIGl0cyBjaGlsZHJlbi4gCi0JKi8KLQl2aXJ0dWFsIGJvb2wgQWNjZXB0KCBUaVhtbFZpc2l0b3IqIHZpc2l0b3IgKSBjb25zdDsKLQogcHJvdGVjdGVkOgogCiAJdm9pZCBDb3B5VG8oIFRpWG1sRWxlbWVudCogdGFyZ2V0ICkgY29uc3Q7CkBAIC0xMTQ0LDggKzEwMDEsMTAgQEAKIAogCS8vIFVzZWQgdG8gYmUgcHVibGljIFtpbnRlcm5hbCB1c2VdCiAJI2lmZGVmIFRJWE1MX1VTRV9TVEwKLQl2aXJ0dWFsIHZvaWQgU3RyZWFtSW4oIHN0ZDo6aXN0cmVhbSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKTsKKwkgICAgdmlydHVhbCB2b2lkIFN0cmVhbUluKCBUSVhNTF9JU1RSRUFNICogaW4sIFRJWE1MX1NUUklORyAqIHRhZyApOwogCSNlbmRpZgorCXZpcnR1YWwgdm9pZCBTdHJlYW1PdXQoIFRJWE1MX09TVFJFQU0gKiBvdXQgKSBjb25zdDsKKwogCS8qCVtpbnRlcm5hbCB1c2VdCiAJCVJlYWRzIHRoZSAidmFsdWUiIG9mIHRoZSBlbGVtZW50IC0tIGFub3RoZXIgZWxlbWVudCwgb3IgdGV4dC4KIAkJVGhpcyBzaG91bGQgdGVybWluYXRlIHdpdGggdGhlIGN1cnJlbnQgZW5kIHRhZy4KQEAgLTExNTMsNiArMTAxMiw3IEBACiAJY29uc3QgY2hhciogUmVhZFZhbHVlKCBjb25zdCBjaGFyKiBpbiwgVGlYbWxQYXJzaW5nRGF0YSogcHJldkRhdGEsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKIAogcHJpdmF0ZToKKwogCVRpWG1sQXR0cmlidXRlU2V0IGF0dHJpYnV0ZVNldDsKIH07CiAKQEAgLTExNjMsMTkgKzEwMjMsMTUgQEAKIHsKIHB1YmxpYzoKIAkvLy8gQ29uc3RydWN0cyBhbiBlbXB0eSBjb21tZW50LgotCVRpWG1sQ29tbWVudCgpIDogVGlYbWxOb2RlKCBUaVhtbE5vZGU6OlRJTllYTUxfQ09NTUVOVCApIHt9Ci0JLy8vIENvbnN0cnVjdCBhIGNvbW1lbnQgZnJvbSB0ZXh0LgotCVRpWG1sQ29tbWVudCggY29uc3QgY2hhciogX3ZhbHVlICkgOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6VElOWVhNTF9DT01NRU5UICkgewotCQlTZXRWYWx1ZSggX3ZhbHVlICk7Ci0JfQorCVRpWG1sQ29tbWVudCgpIDogVGlYbWxOb2RlKCBUaVhtbE5vZGU6OkNPTU1FTlQgKSB7fQogCVRpWG1sQ29tbWVudCggY29uc3QgVGlYbWxDb21tZW50JiApOwotCVRpWG1sQ29tbWVudCYgb3BlcmF0b3I9KCBjb25zdCBUaVhtbENvbW1lbnQmIGJhc2UgKTsKKwl2b2lkIG9wZXJhdG9yPSggY29uc3QgVGlYbWxDb21tZW50JiBiYXNlICk7CiAKIAl2aXJ0dWFsIH5UaVhtbENvbW1lbnQoKQl7fQogCiAJLy8vIFJldHVybnMgYSBjb3B5IG9mIHRoaXMgQ29tbWVudC4KIAl2aXJ0dWFsIFRpWG1sTm9kZSogQ2xvbmUoKSBjb25zdDsKLQkvLyBXcml0ZSB0aGlzIENvbW1lbnQgdG8gYSBGSUxFIHN0cmVhbS4KKwkvLy8gV3JpdGUgdGhpcyBDb21tZW50IHRvIGEgRklMRSBzdHJlYW0uCiAJdmlydHVhbCB2b2lkIFByaW50KCBGSUxFKiBjZmlsZSwgaW50IGRlcHRoICkgY29uc3Q7CiAKIAkvKglBdHRyaWJ0dWUgcGFyc2luZyBzdGFydHM6IGF0IHRoZSAhIG9mIHRoZSAhLS0KQEAgLTExODMsMjEgKzEwMzksMTQgQEAKIAkqLwogCXZpcnR1YWwgY29uc3QgY2hhciogUGFyc2UoIGNvbnN0IGNoYXIqIHAsIFRpWG1sUGFyc2luZ0RhdGEqIGRhdGEsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKIAotCXZpcnR1YWwgY29uc3QgVGlYbWxDb21tZW50KiAgVG9Db21tZW50KCkgY29uc3QJeyByZXR1cm4gdGhpczsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgotCXZpcnR1YWwJCSAgVGlYbWxDb21tZW50KiAgVG9Db21tZW50KCkJCXsgcmV0dXJuIHRoaXM7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KLQotCS8qKiBXYWxrIHRoZSBYTUwgdHJlZSB2aXNpdGluZyB0aGlzIG5vZGUgYW5kIGFsbCBvZiBpdHMgY2hpbGRyZW4uIAotCSovCi0JdmlydHVhbCBib29sIEFjY2VwdCggVGlYbWxWaXNpdG9yKiB2aXNpdG9yICkgY29uc3Q7Ci0KIHByb3RlY3RlZDoKIAl2b2lkIENvcHlUbyggVGlYbWxDb21tZW50KiB0YXJnZXQgKSBjb25zdDsKIAogCS8vIHVzZWQgdG8gYmUgcHVibGljCiAJI2lmZGVmIFRJWE1MX1VTRV9TVEwKLQl2aXJ0dWFsIHZvaWQgU3RyZWFtSW4oIHN0ZDo6aXN0cmVhbSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKTsKKwkgICAgdmlydHVhbCB2b2lkIFN0cmVhbUluKCBUSVhNTF9JU1RSRUFNICogaW4sIFRJWE1MX1NUUklORyAqIHRhZyApOwogCSNlbmRpZgotLy8JdmlydHVhbCB2b2lkIFN0cmVhbU91dCggVElYTUxfT1NUUkVBTSAqIG91dCApIGNvbnN0OworCXZpcnR1YWwgdm9pZCBTdHJlYW1PdXQoIFRJWE1MX09TVFJFQU0gKiBvdXQgKSBjb25zdDsKIAogcHJpdmF0ZToKIApAQCAtMTIxNyw3ICsxMDY2LDcgQEAKIAkJbm9ybWFsLCBlbmNvZGVkIHRleHQuIElmIHlvdSB3YW50IGl0IGJlIG91dHB1dCBhcyBhIENEQVRBIHRleHQKIAkJZWxlbWVudCwgc2V0IHRoZSBwYXJhbWV0ZXIgX2NkYXRhIHRvICd0cnVlJwogCSovCi0JVGlYbWxUZXh0IChjb25zdCBjaGFyICogaW5pdFZhbHVlICkgOiBUaVhtbE5vZGUgKFRpWG1sTm9kZTo6VElOWVhNTF9URVhUKQorCVRpWG1sVGV4dCAoY29uc3QgY2hhciAqIGluaXRWYWx1ZSApIDogVGlYbWxOb2RlIChUaVhtbE5vZGU6OlRFWFQpCiAJewogCQlTZXRWYWx1ZSggaW5pdFZhbHVlICk7CiAJCWNkYXRhID0gZmFsc2U7CkBAIC0xMjI2LDQyICsxMDc1LDM2IEBACiAKIAkjaWZkZWYgVElYTUxfVVNFX1NUTAogCS8vLyBDb25zdHJ1Y3Rvci4KLQlUaVhtbFRleHQoIGNvbnN0IHN0ZDo6c3RyaW5nJiBpbml0VmFsdWUgKSA6IFRpWG1sTm9kZSAoVGlYbWxOb2RlOjpUSU5ZWE1MX1RFWFQpCisJVGlYbWxUZXh0KCBjb25zdCBzdGQ6OnN0cmluZyYgaW5pdFZhbHVlICkgOiBUaVhtbE5vZGUgKFRpWG1sTm9kZTo6VEVYVCkKIAl7CiAJCVNldFZhbHVlKCBpbml0VmFsdWUgKTsKIAkJY2RhdGEgPSBmYWxzZTsKIAl9CiAJI2VuZGlmCiAKLQlUaVhtbFRleHQoIGNvbnN0IFRpWG1sVGV4dCYgY29weSApIDogVGlYbWxOb2RlKCBUaVhtbE5vZGU6OlRJTllYTUxfVEVYVCApCXsgY29weS5Db3B5VG8oIHRoaXMgKTsgfQotCVRpWG1sVGV4dCYgb3BlcmF0b3I9KCBjb25zdCBUaVhtbFRleHQmIGJhc2UgKQkJCQkJCQkgCXsgYmFzZS5Db3B5VG8oIHRoaXMgKTsgcmV0dXJuICp0aGlzOyB9CisJVGlYbWxUZXh0KCBjb25zdCBUaVhtbFRleHQmIGNvcHkgKSA6IFRpWG1sTm9kZSggVGlYbWxOb2RlOjpURVhUICkJeyBjb3B5LkNvcHlUbyggdGhpcyApOyB9CisJdm9pZCBvcGVyYXRvcj0oIGNvbnN0IFRpWG1sVGV4dCYgYmFzZSApCQkJCQkJCSAJeyBiYXNlLkNvcHlUbyggdGhpcyApOyB9CiAKLQkvLyBXcml0ZSB0aGlzIHRleHQgb2JqZWN0IHRvIGEgRklMRSBzdHJlYW0uCisJLy8vIFdyaXRlIHRoaXMgdGV4dCBvYmplY3QgdG8gYSBGSUxFIHN0cmVhbS4KIAl2aXJ0dWFsIHZvaWQgUHJpbnQoIEZJTEUqIGNmaWxlLCBpbnQgZGVwdGggKSBjb25zdDsKIAogCS8vLyBRdWVyaWVzIHdoZXRoZXIgdGhpcyByZXByZXNlbnRzIHRleHQgdXNpbmcgYSBDREFUQSBzZWN0aW9uLgotCWJvb2wgQ0RBVEEoKSBjb25zdAkJCQl7IHJldHVybiBjZGF0YTsgfQorCWJvb2wgQ0RBVEEoKQkJCQkJeyByZXR1cm4gY2RhdGE7IH0KIAkvLy8gVHVybnMgb24gb3Igb2ZmIGEgQ0RBVEEgcmVwcmVzZW50YXRpb24gb2YgdGV4dC4KIAl2b2lkIFNldENEQVRBKCBib29sIF9jZGF0YSApCXsgY2RhdGEgPSBfY2RhdGE7IH0KIAogCXZpcnR1YWwgY29uc3QgY2hhciogUGFyc2UoIGNvbnN0IGNoYXIqIHAsIFRpWG1sUGFyc2luZ0RhdGEqIGRhdGEsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKIAotCXZpcnR1YWwgY29uc3QgVGlYbWxUZXh0KiBUb1RleHQoKSBjb25zdCB7IHJldHVybiB0aGlzOyB9IC8vLzwgQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuCi0JdmlydHVhbCBUaVhtbFRleHQqICAgICAgIFRvVGV4dCgpICAgICAgIHsgcmV0dXJuIHRoaXM7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KLQotCS8qKiBXYWxrIHRoZSBYTUwgdHJlZSB2aXNpdGluZyB0aGlzIG5vZGUgYW5kIGFsbCBvZiBpdHMgY2hpbGRyZW4uIAotCSovCi0JdmlydHVhbCBib29sIEFjY2VwdCggVGlYbWxWaXNpdG9yKiBjb250ZW50ICkgY29uc3Q7Ci0KIHByb3RlY3RlZCA6CiAJLy8vICBbaW50ZXJuYWwgdXNlXSBDcmVhdGVzIGEgbmV3IEVsZW1lbnQgYW5kIHJldHVybnMgaXQuCiAJdmlydHVhbCBUaVhtbE5vZGUqIENsb25lKCkgY29uc3Q7CiAJdm9pZCBDb3B5VG8oIFRpWG1sVGV4dCogdGFyZ2V0ICkgY29uc3Q7CiAKKwl2aXJ0dWFsIHZvaWQgU3RyZWFtT3V0ICggVElYTUxfT1NUUkVBTSAqIG91dCApIGNvbnN0OwogCWJvb2wgQmxhbmsoKSBjb25zdDsJLy8gcmV0dXJucyB0cnVlIGlmIGFsbCB3aGl0ZSBzcGFjZSBhbmQgbmV3IGxpbmVzCiAJLy8gW2ludGVybmFsIHVzZV0KIAkjaWZkZWYgVElYTUxfVVNFX1NUTAotCXZpcnR1YWwgdm9pZCBTdHJlYW1Jbiggc3RkOjppc3RyZWFtICogaW4sIFRJWE1MX1NUUklORyAqIHRhZyApOworCSAgICB2aXJ0dWFsIHZvaWQgU3RyZWFtSW4oIFRJWE1MX0lTVFJFQU0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICk7CiAJI2VuZGlmCiAKIHByaXZhdGU6CkBAIC0xMjg2LDcgKzExMjksNyBAQAogewogcHVibGljOgogCS8vLyBDb25zdHJ1Y3QgYW4gZW1wdHkgZGVjbGFyYXRpb24uCi0JVGlYbWxEZWNsYXJhdGlvbigpICAgOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6VElOWVhNTF9ERUNMQVJBVElPTiApIHt9CisJVGlYbWxEZWNsYXJhdGlvbigpICAgOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6REVDTEFSQVRJT04gKSB7fQogCiAjaWZkZWYgVElYTUxfVVNFX1NUTAogCS8vLyBDb25zdHJ1Y3Rvci4KQEAgLTEzMDEsNyArMTE0NCw3IEBACiAJCQkJCQljb25zdCBjaGFyKiBfc3RhbmRhbG9uZSApOwogCiAJVGlYbWxEZWNsYXJhdGlvbiggY29uc3QgVGlYbWxEZWNsYXJhdGlvbiYgY29weSApOwotCVRpWG1sRGVjbGFyYXRpb24mIG9wZXJhdG9yPSggY29uc3QgVGlYbWxEZWNsYXJhdGlvbiYgY29weSApOworCXZvaWQgb3BlcmF0b3I9KCBjb25zdCBUaVhtbERlY2xhcmF0aW9uJiBjb3B5ICk7CiAKIAl2aXJ0dWFsIH5UaVhtbERlY2xhcmF0aW9uKCkJe30KIApAQCAtMTMxNCwyNyArMTE1NywxOCBAQAogCiAJLy8vIENyZWF0ZXMgYSBjb3B5IG9mIHRoaXMgRGVjbGFyYXRpb24gYW5kIHJldHVybnMgaXQuCiAJdmlydHVhbCBUaVhtbE5vZGUqIENsb25lKCkgY29uc3Q7Ci0JLy8gUHJpbnQgdGhpcyBkZWNsYXJhdGlvbiB0byBhIEZJTEUgc3RyZWFtLgotCXZpcnR1YWwgdm9pZCBQcmludCggRklMRSogY2ZpbGUsIGludCBkZXB0aCwgVElYTUxfU1RSSU5HKiBzdHIgKSBjb25zdDsKLQl2aXJ0dWFsIHZvaWQgUHJpbnQoIEZJTEUqIGNmaWxlLCBpbnQgZGVwdGggKSBjb25zdCB7Ci0JCVByaW50KCBjZmlsZSwgZGVwdGgsIDAgKTsKLQl9CisJLy8vIFByaW50IHRoaXMgZGVjbGFyYXRpb24gdG8gYSBGSUxFIHN0cmVhbS4KKwl2aXJ0dWFsIHZvaWQgUHJpbnQoIEZJTEUqIGNmaWxlLCBpbnQgZGVwdGggKSBjb25zdDsKIAogCXZpcnR1YWwgY29uc3QgY2hhciogUGFyc2UoIGNvbnN0IGNoYXIqIHAsIFRpWG1sUGFyc2luZ0RhdGEqIGRhdGEsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKIAotCXZpcnR1YWwgY29uc3QgVGlYbWxEZWNsYXJhdGlvbiogVG9EZWNsYXJhdGlvbigpIGNvbnN0IHsgcmV0dXJuIHRoaXM7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KLQl2aXJ0dWFsIFRpWG1sRGVjbGFyYXRpb24qICAgICAgIFRvRGVjbGFyYXRpb24oKSAgICAgICB7IHJldHVybiB0aGlzOyB9IC8vLzwgQ2FzdCB0byBhIG1vcmUgZGVmaW5lZCB0eXBlLiBXaWxsIHJldHVybiBudWxsIG5vdCBvZiB0aGUgcmVxdWVzdGVkIHR5cGUuCi0KLQkvKiogV2FsayB0aGUgWE1MIHRyZWUgdmlzaXRpbmcgdGhpcyBub2RlIGFuZCBhbGwgb2YgaXRzIGNoaWxkcmVuLiAKLQkqLwotCXZpcnR1YWwgYm9vbCBBY2NlcHQoIFRpWG1sVmlzaXRvciogdmlzaXRvciApIGNvbnN0OwotCiBwcm90ZWN0ZWQ6CiAJdm9pZCBDb3B5VG8oIFRpWG1sRGVjbGFyYXRpb24qIHRhcmdldCApIGNvbnN0OwogCS8vIHVzZWQgdG8gYmUgcHVibGljCiAJI2lmZGVmIFRJWE1MX1VTRV9TVEwKLQl2aXJ0dWFsIHZvaWQgU3RyZWFtSW4oIHN0ZDo6aXN0cmVhbSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKTsKKwkgICAgdmlydHVhbCB2b2lkIFN0cmVhbUluKCBUSVhNTF9JU1RSRUFNICogaW4sIFRJWE1MX1NUUklORyAqIHRhZyApOwogCSNlbmRpZgorCXZpcnR1YWwgdm9pZCBTdHJlYW1PdXQgKCBUSVhNTF9PU1RSRUFNICogb3V0KSBjb25zdDsKIAogcHJpdmF0ZToKIApAQCAtMTM1NCwzMiArMTE4OCwyNiBAQAogY2xhc3MgVGlYbWxVbmtub3duIDogcHVibGljIFRpWG1sTm9kZQogewogcHVibGljOgotCVRpWG1sVW5rbm93bigpIDogVGlYbWxOb2RlKCBUaVhtbE5vZGU6OlRJTllYTUxfVU5LTk9XTiApCXt9CisJVGlYbWxVbmtub3duKCkgOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6VU5LTk9XTiApCXt9CiAJdmlydHVhbCB+VGlYbWxVbmtub3duKCkge30KIAotCVRpWG1sVW5rbm93biggY29uc3QgVGlYbWxVbmtub3duJiBjb3B5ICkgOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6VElOWVhNTF9VTktOT1dOICkJCXsgY29weS5Db3B5VG8oIHRoaXMgKTsgfQotCVRpWG1sVW5rbm93biYgb3BlcmF0b3I9KCBjb25zdCBUaVhtbFVua25vd24mIGNvcHkgKQkJCQkJCQkJCQl7IGNvcHkuQ29weVRvKCB0aGlzICk7IHJldHVybiAqdGhpczsgfQorCVRpWG1sVW5rbm93biggY29uc3QgVGlYbWxVbmtub3duJiBjb3B5ICkgOiBUaVhtbE5vZGUoIFRpWG1sTm9kZTo6VU5LTk9XTiApCQl7IGNvcHkuQ29weVRvKCB0aGlzICk7IH0KKwl2b2lkIG9wZXJhdG9yPSggY29uc3QgVGlYbWxVbmtub3duJiBjb3B5ICkJCQkJCQkJCQkJeyBjb3B5LkNvcHlUbyggdGhpcyApOyB9CiAKIAkvLy8gQ3JlYXRlcyBhIGNvcHkgb2YgdGhpcyBVbmtub3duIGFuZCByZXR1cm5zIGl0LgogCXZpcnR1YWwgVGlYbWxOb2RlKiBDbG9uZSgpIGNvbnN0OwotCS8vIFByaW50IHRoaXMgVW5rbm93biB0byBhIEZJTEUgc3RyZWFtLgorCS8vLyBQcmludCB0aGlzIFVua25vd24gdG8gYSBGSUxFIHN0cmVhbS4KIAl2aXJ0dWFsIHZvaWQgUHJpbnQoIEZJTEUqIGNmaWxlLCBpbnQgZGVwdGggKSBjb25zdDsKIAogCXZpcnR1YWwgY29uc3QgY2hhciogUGFyc2UoIGNvbnN0IGNoYXIqIHAsIFRpWG1sUGFyc2luZ0RhdGEqIGRhdGEsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgKTsKIAotCXZpcnR1YWwgY29uc3QgVGlYbWxVbmtub3duKiAgICAgVG9Vbmtub3duKCkgICAgIGNvbnN0CXsgcmV0dXJuIHRoaXM7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KLQl2aXJ0dWFsIFRpWG1sVW5rbm93biogICAgICAgICAgIFRvVW5rbm93bigpCQkJCXsgcmV0dXJuIHRoaXM7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KLQotCS8qKiBXYWxrIHRoZSBYTUwgdHJlZSB2aXNpdGluZyB0aGlzIG5vZGUgYW5kIGFsbCBvZiBpdHMgY2hpbGRyZW4uIAotCSovCi0JdmlydHVhbCBib29sIEFjY2VwdCggVGlYbWxWaXNpdG9yKiBjb250ZW50ICkgY29uc3Q7Ci0KIHByb3RlY3RlZDoKIAl2b2lkIENvcHlUbyggVGlYbWxVbmtub3duKiB0YXJnZXQgKSBjb25zdDsKIAogCSNpZmRlZiBUSVhNTF9VU0VfU1RMCi0JdmlydHVhbCB2b2lkIFN0cmVhbUluKCBzdGQ6OmlzdHJlYW0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICk7CisJICAgIHZpcnR1YWwgdm9pZCBTdHJlYW1JbiggVElYTUxfSVNUUkVBTSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKTsKIAkjZW5kaWYKKwl2aXJ0dWFsIHZvaWQgU3RyZWFtT3V0ICggVElYTUxfT1NUUkVBTSAqIG91dCApIGNvbnN0OwogCiBwcml2YXRlOgogCkBAIC0xNDA0LDcgKzEyMzIsNyBAQAogCSNlbmRpZgogCiAJVGlYbWxEb2N1bWVudCggY29uc3QgVGlYbWxEb2N1bWVudCYgY29weSApOwotCVRpWG1sRG9jdW1lbnQmIG9wZXJhdG9yPSggY29uc3QgVGlYbWxEb2N1bWVudCYgY29weSApOworCXZvaWQgb3BlcmF0b3I9KCBjb25zdCBUaVhtbERvY3VtZW50JiBjb3B5ICk7CiAKIAl2aXJ0dWFsIH5UaVhtbERvY3VtZW50KCkge30KIApAQCAtMTQxOSwyMyArMTI0NywxNyBAQAogCWJvb2wgTG9hZEZpbGUoIGNvbnN0IGNoYXIgKiBmaWxlbmFtZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyA9IFRJWE1MX0RFRkFVTFRfRU5DT0RJTkcgKTsKIAkvLy8gU2F2ZSBhIGZpbGUgdXNpbmcgdGhlIGdpdmVuIGZpbGVuYW1lLiBSZXR1cm5zIHRydWUgaWYgc3VjY2Vzc2Z1bC4KIAlib29sIFNhdmVGaWxlKCBjb25zdCBjaGFyICogZmlsZW5hbWUgKSBjb25zdDsKLQkvKiogTG9hZCBhIGZpbGUgdXNpbmcgdGhlIGdpdmVuIEZJTEUqLiBSZXR1cm5zIHRydWUgaWYgc3VjY2Vzc2Z1bC4gTm90ZSB0aGF0IHRoaXMgbWV0aG9kCi0JCWRvZXNuJ3Qgc3RyZWFtIC0gdGhlIGVudGlyZSBvYmplY3QgcG9pbnRlZCBhdCBieSB0aGUgRklMRSoKLQkJd2lsbCBiZSBpbnRlcnByZXRlZCBhcyBhbiBYTUwgZmlsZS4gVGlueVhNTCBkb2Vzbid0IHN0cmVhbSBpbiBYTUwgZnJvbSB0aGUgY3VycmVudAotCQlmaWxlIGxvY2F0aW9uLiBTdHJlYW1pbmcgbWF5IGJlIGFkZGVkIGluIHRoZSBmdXR1cmUuCi0JKi8KLQlib29sIExvYWRGaWxlKCBGSUxFKiwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyA9IFRJWE1MX0RFRkFVTFRfRU5DT0RJTkcgKTsKLQkvLy8gU2F2ZSBhIGZpbGUgdXNpbmcgdGhlIGdpdmVuIEZJTEUqLiBSZXR1cm5zIHRydWUgaWYgc3VjY2Vzc2Z1bC4KLQlib29sIFNhdmVGaWxlKCBGSUxFKiApIGNvbnN0OwogCiAJI2lmZGVmIFRJWE1MX1VTRV9TVEwKIAlib29sIExvYWRGaWxlKCBjb25zdCBzdGQ6OnN0cmluZyYgZmlsZW5hbWUsIFRpWG1sRW5jb2RpbmcgZW5jb2RpbmcgPSBUSVhNTF9ERUZBVUxUX0VOQ09ESU5HICkJCQkvLy88IFNUTCBzdGQ6OnN0cmluZyB2ZXJzaW9uLgogCXsKLQkJcmV0dXJuIExvYWRGaWxlKCBmaWxlbmFtZS5jX3N0cigpLCBlbmNvZGluZyApOworCQlTdHJpbmdUb0J1ZmZlciBmKCBmaWxlbmFtZSApOworCQlyZXR1cm4gKCBmLmJ1ZmZlciAmJiBMb2FkRmlsZSggZi5idWZmZXIsIGVuY29kaW5nICkpOwogCX0KIAlib29sIFNhdmVGaWxlKCBjb25zdCBzdGQ6OnN0cmluZyYgZmlsZW5hbWUgKSBjb25zdAkJLy8vPCBTVEwgc3RkOjpzdHJpbmcgdmVyc2lvbi4KIAl7Ci0JCXJldHVybiBTYXZlRmlsZSggZmlsZW5hbWUuY19zdHIoKSApOworCQlTdHJpbmdUb0J1ZmZlciBmKCBmaWxlbmFtZSApOworCQlyZXR1cm4gKCBmLmJ1ZmZlciAmJiBTYXZlRmlsZSggZi5idWZmZXIgKSk7CiAJfQogCSNlbmRpZgogCkBAIC0xNDc0LDggKzEyOTYsOCBAQAogCiAJCUBzYSBTZXRUYWJTaXplLCBSb3csIENvbHVtbgogCSovCi0JaW50IEVycm9yUm93KCkgY29uc3QJeyByZXR1cm4gZXJyb3JMb2NhdGlvbi5yb3crMTsgfQotCWludCBFcnJvckNvbCgpIGNvbnN0CXsgcmV0dXJuIGVycm9yTG9jYXRpb24uY29sKzE7IH0JLy8vPCBUaGUgY29sdW1uIHdoZXJlIHRoZSBlcnJvciBvY2N1cmVkLiBTZWUgRXJyb3JSb3coKQorCWludCBFcnJvclJvdygpCXsgcmV0dXJuIGVycm9yTG9jYXRpb24ucm93KzE7IH0KKwlpbnQgRXJyb3JDb2woKQl7IHJldHVybiBlcnJvckxvY2F0aW9uLmNvbCsxOyB9CS8vLzwgVGhlIGNvbHVtbiB3aGVyZSB0aGUgZXJyb3Igb2NjdXJlZC4gU2VlIEVycm9yUm93KCkKIAogCS8qKiBTZXRUYWJTaXplKCkgYWxsb3dzIHRoZSBlcnJvciByZXBvcnRpbmcgZnVuY3Rpb25zIChFcnJvclJvdygpIGFuZCBFcnJvckNvbCgpKQogCQl0byByZXBvcnQgdGhlIGNvcnJlY3QgdmFsdWVzIGZvciByb3cgYW5kIGNvbHVtbi4gSXQgZG9lcyBub3QgY2hhbmdlIHRoZSBvdXRwdXQKQEAgLTE1MTUsMzIgKzEzMzcsMjAgQEAKIAkJCQkJCQkJCQkJCS8vZXJyb3JMb2NhdGlvbi5sYXN0ID0gMDsgCiAJCQkJCQkJCQkJCX0KIAotCS8qKiBXcml0ZSB0aGUgZG9jdW1lbnQgdG8gc3RhbmRhcmQgb3V0IHVzaW5nIGZvcm1hdHRlZCBwcmludGluZyAoInByZXR0eSBwcmludCIpLiAqLworCS8qKiBEdW1wIHRoZSBkb2N1bWVudCB0byBzdGFuZGFyZCBvdXQuICovCiAJdm9pZCBQcmludCgpIGNvbnN0CQkJCQkJeyBQcmludCggc3Rkb3V0LCAwICk7IH0KIAotCS8qIFdyaXRlIHRoZSBkb2N1bWVudCB0byBhIHN0cmluZyB1c2luZyBmb3JtYXR0ZWQgcHJpbnRpbmcgKCJwcmV0dHkgcHJpbnQiKS4gVGhpcwotCQl3aWxsIGFsbG9jYXRlIGEgY2hhcmFjdGVyIGFycmF5IChuZXcgY2hhcltdKSBhbmQgcmV0dXJuIGl0IGFzIGEgcG9pbnRlci4gVGhlCi0JCWNhbGxpbmcgY29kZSBwdXN0IGNhbGwgZGVsZXRlW10gb24gdGhlIHJldHVybiBjaGFyKiB0byBhdm9pZCBhIG1lbW9yeSBsZWFrLgotCSovCi0JLy9jaGFyKiBQcmludFRvTWVtb3J5KCkgY29uc3Q7IAotCiAJLy8vIFByaW50IHRoaXMgRG9jdW1lbnQgdG8gYSBGSUxFIHN0cmVhbS4KIAl2aXJ0dWFsIHZvaWQgUHJpbnQoIEZJTEUqIGNmaWxlLCBpbnQgZGVwdGggPSAwICkgY29uc3Q7CiAJLy8gW2ludGVybmFsIHVzZV0KIAl2b2lkIFNldEVycm9yKCBpbnQgZXJyLCBjb25zdCBjaGFyKiBlcnJvckxvY2F0aW9uLCBUaVhtbFBhcnNpbmdEYXRhKiBwcmV2RGF0YSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApOwogCi0JdmlydHVhbCBjb25zdCBUaVhtbERvY3VtZW50KiAgICBUb0RvY3VtZW50KCkgICAgY29uc3QgeyByZXR1cm4gdGhpczsgfSAvLy88IENhc3QgdG8gYSBtb3JlIGRlZmluZWQgdHlwZS4gV2lsbCByZXR1cm4gbnVsbCBub3Qgb2YgdGhlIHJlcXVlc3RlZCB0eXBlLgotCXZpcnR1YWwgVGlYbWxEb2N1bWVudCogICAgICAgICAgVG9Eb2N1bWVudCgpICAgICAgICAgIHsgcmV0dXJuIHRoaXM7IH0gLy8vPCBDYXN0IHRvIGEgbW9yZSBkZWZpbmVkIHR5cGUuIFdpbGwgcmV0dXJuIG51bGwgbm90IG9mIHRoZSByZXF1ZXN0ZWQgdHlwZS4KLQotCS8qKiBXYWxrIHRoZSBYTUwgdHJlZSB2aXNpdGluZyB0aGlzIG5vZGUgYW5kIGFsbCBvZiBpdHMgY2hpbGRyZW4uIAotCSovCi0JdmlydHVhbCBib29sIEFjY2VwdCggVGlYbWxWaXNpdG9yKiBjb250ZW50ICkgY29uc3Q7Ci0KIHByb3RlY3RlZCA6CisJdmlydHVhbCB2b2lkIFN0cmVhbU91dCAoIFRJWE1MX09TVFJFQU0gKiBvdXQpIGNvbnN0OwogCS8vIFtpbnRlcm5hbCB1c2VdCiAJdmlydHVhbCBUaVhtbE5vZGUqIENsb25lKCkgY29uc3Q7CiAJI2lmZGVmIFRJWE1MX1VTRV9TVEwKLQl2aXJ0dWFsIHZvaWQgU3RyZWFtSW4oIHN0ZDo6aXN0cmVhbSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKTsKKwkgICAgdmlydHVhbCB2b2lkIFN0cmVhbUluKCBUSVhNTF9JU1RSRUFNICogaW4sIFRJWE1MX1NUUklORyAqIHRhZyApOwogCSNlbmRpZgogCiBwcml2YXRlOgpAQCAtMTU5NSw3ICsxNDA1LDcgQEAKIAogCUB2ZXJiYXRpbQogCVRpWG1sSGFuZGxlIGRvY0hhbmRsZSggJmRvY3VtZW50ICk7Ci0JVGlYbWxFbGVtZW50KiBjaGlsZDIgPSBkb2NIYW5kbGUuRmlyc3RDaGlsZCggIkRvY3VtZW50IiApLkZpcnN0Q2hpbGQoICJFbGVtZW50IiApLkNoaWxkKCAiQ2hpbGQiLCAxICkuVG9FbGVtZW50KCk7CisJVGlYbWxFbGVtZW50KiBjaGlsZDIgPSBkb2NIYW5kbGUuRmlyc3RDaGlsZCggIkRvY3VtZW50IiApLkZpcnN0Q2hpbGQoICJFbGVtZW50IiApLkNoaWxkKCAiQ2hpbGQiLCAxICkuRWxlbWVudCgpOwogCWlmICggY2hpbGQyICkKIAl7CiAJCS8vIGRvIHNvbWV0aGluZyB1c2VmdWwKQEAgLTE2MTQsNyArMTQyNCw3IEBACiAJaW50IGk9MDsgCiAJd2hpbGUgKCB0cnVlICkKIAl7Ci0JCVRpWG1sRWxlbWVudCogY2hpbGQgPSBkb2NIYW5kbGUuRmlyc3RDaGlsZCggIkRvY3VtZW50IiApLkZpcnN0Q2hpbGQoICJFbGVtZW50IiApLkNoaWxkKCAiQ2hpbGQiLCBpICkuVG9FbGVtZW50KCk7CisJCVRpWG1sRWxlbWVudCogY2hpbGQgPSBkb2NIYW5kbGUuRmlyc3RDaGlsZCggIkRvY3VtZW50IiApLkZpcnN0Q2hpbGQoICJFbGVtZW50IiApLkNoaWxkKCAiQ2hpbGQiLCBpICkuRWxlbWVudCgpOwogCQlpZiAoICFjaGlsZCApCiAJCQlicmVhazsKIAkJLy8gZG8gc29tZXRoaW5nCkBAIC0xNjI3LDcgKzE0MzcsNyBAQAogCXRvLiBJbnN0ZWFkLCBwcmVmZXI6CiAKIAlAdmVyYmF0aW0KLQlUaVhtbEVsZW1lbnQqIGNoaWxkID0gZG9jSGFuZGxlLkZpcnN0Q2hpbGQoICJEb2N1bWVudCIgKS5GaXJzdENoaWxkKCAiRWxlbWVudCIgKS5GaXJzdENoaWxkKCAiQ2hpbGQiICkuVG9FbGVtZW50KCk7CisJVGlYbWxFbGVtZW50KiBjaGlsZCA9IGRvY0hhbmRsZS5GaXJzdENoaWxkKCAiRG9jdW1lbnQiICkuRmlyc3RDaGlsZCggIkVsZW1lbnQiICkuRmlyc3RDaGlsZCggIkNoaWxkIiApLkVsZW1lbnQoKTsKIAogCWZvciggY2hpbGQ7IGNoaWxkOyBjaGlsZD1jaGlsZC0+TmV4dFNpYmxpbmdFbGVtZW50KCkgKQogCXsKQEAgLTE2NDIsNyArMTQ1Miw3IEBACiAJVGlYbWxIYW5kbGUoIFRpWG1sTm9kZSogX25vZGUgKQkJCQkJeyB0aGlzLT5ub2RlID0gX25vZGU7IH0KIAkvLy8gQ29weSBjb25zdHJ1Y3RvcgogCVRpWG1sSGFuZGxlKCBjb25zdCBUaVhtbEhhbmRsZSYgcmVmICkJCQl7IHRoaXMtPm5vZGUgPSByZWYubm9kZTsgfQotCVRpWG1sSGFuZGxlIG9wZXJhdG9yPSggY29uc3QgVGlYbWxIYW5kbGUmIHJlZiApIHsgaWYgKCAmcmVmICE9IHRoaXMgKSB0aGlzLT5ub2RlID0gcmVmLm5vZGU7IHJldHVybiAqdGhpczsgfQorCVRpWG1sSGFuZGxlIG9wZXJhdG9yPSggY29uc3QgVGlYbWxIYW5kbGUmIHJlZiApIHsgdGhpcy0+bm9kZSA9IHJlZi5ub2RlOyByZXR1cm4gKnRoaXM7IH0KIAogCS8vLyBSZXR1cm4gYSBoYW5kbGUgdG8gdGhlIGZpcnN0IGNoaWxkIG5vZGUuCiAJVGlYbWxIYW5kbGUgRmlyc3RDaGlsZCgpIGNvbnN0OwpAQCAtMTY4MCwxMjYgKzE0OTAsMjIgQEAKIAlUaVhtbEhhbmRsZSBDaGlsZEVsZW1lbnQoIGNvbnN0IHN0ZDo6c3RyaW5nJiBfdmFsdWUsIGludCBpbmRleCApIGNvbnN0CXsgcmV0dXJuIENoaWxkRWxlbWVudCggX3ZhbHVlLmNfc3RyKCksIGluZGV4ICk7IH0KIAkjZW5kaWYKIAotCS8qKiBSZXR1cm4gdGhlIGhhbmRsZSBhcyBhIFRpWG1sTm9kZS4gVGhpcyBtYXkgcmV0dXJuIG51bGwuCi0JKi8KLQlUaVhtbE5vZGUqIFRvTm9kZSgpIGNvbnN0CQkJeyByZXR1cm4gbm9kZTsgfSAKLQkvKiogUmV0dXJuIHRoZSBoYW5kbGUgYXMgYSBUaVhtbEVsZW1lbnQuIFRoaXMgbWF5IHJldHVybiBudWxsLgotCSovCi0JVGlYbWxFbGVtZW50KiBUb0VsZW1lbnQoKSBjb25zdAkJeyByZXR1cm4gKCAoIG5vZGUgJiYgbm9kZS0+VG9FbGVtZW50KCkgKSA/IG5vZGUtPlRvRWxlbWVudCgpIDogMCApOyB9Ci0JLyoqCVJldHVybiB0aGUgaGFuZGxlIGFzIGEgVGlYbWxUZXh0LiBUaGlzIG1heSByZXR1cm4gbnVsbC4KLQkqLwotCVRpWG1sVGV4dCogVG9UZXh0KCkgY29uc3QJCQl7IHJldHVybiAoICggbm9kZSAmJiBub2RlLT5Ub1RleHQoKSApID8gbm9kZS0+VG9UZXh0KCkgOiAwICk7IH0KLQkvKiogUmV0dXJuIHRoZSBoYW5kbGUgYXMgYSBUaVhtbFVua25vd24uIFRoaXMgbWF5IHJldHVybiBudWxsLgotCSovCi0JVGlYbWxVbmtub3duKiBUb1Vua25vd24oKSBjb25zdAkJeyByZXR1cm4gKCAoIG5vZGUgJiYgbm9kZS0+VG9Vbmtub3duKCkgKSA/IG5vZGUtPlRvVW5rbm93bigpIDogMCApOyB9Ci0KLQkvKiogQGRlcHJlY2F0ZWQgdXNlIFRvTm9kZS4gCi0JCVJldHVybiB0aGUgaGFuZGxlIGFzIGEgVGlYbWxOb2RlLiBUaGlzIG1heSByZXR1cm4gbnVsbC4KLQkqLwotCVRpWG1sTm9kZSogTm9kZSgpIGNvbnN0CQkJeyByZXR1cm4gVG9Ob2RlKCk7IH0gCi0JLyoqIEBkZXByZWNhdGVkIHVzZSBUb0VsZW1lbnQuIAotCQlSZXR1cm4gdGhlIGhhbmRsZSBhcyBhIFRpWG1sRWxlbWVudC4gVGhpcyBtYXkgcmV0dXJuIG51bGwuCi0JKi8KLQlUaVhtbEVsZW1lbnQqIEVsZW1lbnQoKSBjb25zdAl7IHJldHVybiBUb0VsZW1lbnQoKTsgfQotCS8qKglAZGVwcmVjYXRlZCB1c2UgVG9UZXh0KCkKLQkJUmV0dXJuIHRoZSBoYW5kbGUgYXMgYSBUaVhtbFRleHQuIFRoaXMgbWF5IHJldHVybiBudWxsLgotCSovCi0JVGlYbWxUZXh0KiBUZXh0KCkgY29uc3QJCQl7IHJldHVybiBUb1RleHQoKTsgfQotCS8qKiBAZGVwcmVjYXRlZCB1c2UgVG9Vbmtub3duKCkKLQkJUmV0dXJuIHRoZSBoYW5kbGUgYXMgYSBUaVhtbFVua25vd24uIFRoaXMgbWF5IHJldHVybiBudWxsLgotCSovCi0JVGlYbWxVbmtub3duKiBVbmtub3duKCkgY29uc3QJeyByZXR1cm4gVG9Vbmtub3duKCk7IH0KKwkvLy8gUmV0dXJuIHRoZSBoYW5kbGUgYXMgYSBUaVhtbE5vZGUuIFRoaXMgbWF5IHJldHVybiBudWxsLgorCVRpWG1sTm9kZSogTm9kZSgpIGNvbnN0CQkJeyByZXR1cm4gbm9kZTsgfSAKKwkvLy8gUmV0dXJuIHRoZSBoYW5kbGUgYXMgYSBUaVhtbEVsZW1lbnQuIFRoaXMgbWF5IHJldHVybiBudWxsLgorCVRpWG1sRWxlbWVudCogRWxlbWVudCgpIGNvbnN0CXsgcmV0dXJuICggKCBub2RlICYmIG5vZGUtPlRvRWxlbWVudCgpICkgPyBub2RlLT5Ub0VsZW1lbnQoKSA6IDAgKTsgfQorCS8vLyBSZXR1cm4gdGhlIGhhbmRsZSBhcyBhIFRpWG1sVGV4dC4gVGhpcyBtYXkgcmV0dXJuIG51bGwuCisJVGlYbWxUZXh0KiBUZXh0KCkgY29uc3QJCQl7IHJldHVybiAoICggbm9kZSAmJiBub2RlLT5Ub1RleHQoKSApID8gbm9kZS0+VG9UZXh0KCkgOiAwICk7IH0KKwkvLy8gUmV0dXJuIHRoZSBoYW5kbGUgYXMgYSBUaVhtbFVua25vd24uIFRoaXMgbWF5IHJldHVybiBudWxsOworCVRpWG1sVW5rbm93biogVW5rbm93bigpIGNvbnN0CQkJeyByZXR1cm4gKCAoIG5vZGUgJiYgbm9kZS0+VG9Vbmtub3duKCkgKSA/IG5vZGUtPlRvVW5rbm93bigpIDogMCApOyB9CiAKIHByaXZhdGU6CiAJVGlYbWxOb2RlKiBub2RlOwogfTsKIAotCi0vKiogUHJpbnQgdG8gbWVtb3J5IGZ1bmN0aW9uYWxpdHkuIFRoZSBUaVhtbFByaW50ZXIgaXMgdXNlZnVsIHdoZW4geW91IG5lZWQgdG86Ci0KLQktIyBQcmludCB0byBtZW1vcnkgKGVzcGVjaWFsbHkgaW4gbm9uLVNUTCBtb2RlKQotCS0jIENvbnRyb2wgZm9ybWF0dGluZyAobGluZSBlbmRpbmdzLCBldGMuKQotCi0JV2hlbiBjb25zdHJ1Y3RlZCwgdGhlIFRpWG1sUHJpbnRlciBpcyBpbiBpdHMgZGVmYXVsdCAicHJldHR5IHByaW50aW5nIiBtb2RlLgotCUJlZm9yZSBjYWxsaW5nIEFjY2VwdCgpIHlvdSBjYW4gY2FsbCBtZXRob2RzIHRvIGNvbnRyb2wgdGhlIHByaW50aW5nCi0Jb2YgdGhlIFhNTCBkb2N1bWVudC4gQWZ0ZXIgVGlYbWxOb2RlOjpBY2NlcHQoKSBpcyBjYWxsZWQsIHRoZSBwcmludGVkIGRvY3VtZW50IGNhbgotCWJlIGFjY2Vzc2VkIHZpYSB0aGUgQ1N0cigpLCBTdHIoKSwgYW5kIFNpemUoKSBtZXRob2RzLgotCi0JVGlYbWxQcmludGVyIHVzZXMgdGhlIFZpc2l0b3IgQVBJLgotCUB2ZXJiYXRpbQotCVRpWG1sUHJpbnRlciBwcmludGVyOwotCXByaW50ZXIuU2V0SW5kZW50KCAiXHQiICk7Ci0KLQlkb2MuQWNjZXB0KCAmcHJpbnRlciApOwotCWZwcmludGYoIHN0ZG91dCwgIiVzIiwgcHJpbnRlci5DU3RyKCkgKTsKLQlAZW5kdmVyYmF0aW0KLSovCi1jbGFzcyBUaVhtbFByaW50ZXIgOiBwdWJsaWMgVGlYbWxWaXNpdG9yCi17Ci1wdWJsaWM6Ci0JVGlYbWxQcmludGVyKCkgOiBkZXB0aCggMCApLCBzaW1wbGVUZXh0UHJpbnQoIGZhbHNlICksCi0JCQkJCSBidWZmZXIoKSwgaW5kZW50KCAiICAgICIgKSwgbGluZUJyZWFrKCAiXG4iICkge30KLQotCXZpcnR1YWwgYm9vbCBWaXNpdEVudGVyKCBjb25zdCBUaVhtbERvY3VtZW50JiBkb2MgKTsKLQl2aXJ0dWFsIGJvb2wgVmlzaXRFeGl0KCBjb25zdCBUaVhtbERvY3VtZW50JiBkb2MgKTsKLQotCXZpcnR1YWwgYm9vbCBWaXNpdEVudGVyKCBjb25zdCBUaVhtbEVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFRpWG1sQXR0cmlidXRlKiBmaXJzdEF0dHJpYnV0ZSApOwotCXZpcnR1YWwgYm9vbCBWaXNpdEV4aXQoIGNvbnN0IFRpWG1sRWxlbWVudCYgZWxlbWVudCApOwotCi0JdmlydHVhbCBib29sIFZpc2l0KCBjb25zdCBUaVhtbERlY2xhcmF0aW9uJiBkZWNsYXJhdGlvbiApOwotCXZpcnR1YWwgYm9vbCBWaXNpdCggY29uc3QgVGlYbWxUZXh0JiB0ZXh0ICk7Ci0JdmlydHVhbCBib29sIFZpc2l0KCBjb25zdCBUaVhtbENvbW1lbnQmIGNvbW1lbnQgKTsKLQl2aXJ0dWFsIGJvb2wgVmlzaXQoIGNvbnN0IFRpWG1sVW5rbm93biYgdW5rbm93biApOwotCi0JLyoqIFNldCB0aGUgaW5kZW50IGNoYXJhY3RlcnMgZm9yIHByaW50aW5nLiBCeSBkZWZhdWx0IDQgc3BhY2VzCi0JCWJ1dCB0YWIgKFx0KSBpcyBhbHNvIHVzZWZ1bCwgb3IgbnVsbC9lbXB0eSBzdHJpbmcgZm9yIG5vIGluZGVudGF0aW9uLgotCSovCi0Jdm9pZCBTZXRJbmRlbnQoIGNvbnN0IGNoYXIqIF9pbmRlbnQgKQkJCXsgaW5kZW50ID0gX2luZGVudCA/IF9pbmRlbnQgOiAiIiA7IH0KLQkvLy8gUXVlcnkgdGhlIGluZGVudGlvbiBzdHJpbmcuCi0JY29uc3QgY2hhciogSW5kZW50KCkJCQkJCQkJeyByZXR1cm4gaW5kZW50LmNfc3RyKCk7IH0KLQkvKiogU2V0IHRoZSBsaW5lIGJyZWFraW5nIHN0cmluZy4gQnkgZGVmYXVsdCBzZXQgdG8gbmV3bGluZSAoXG4pLiAKLQkJU29tZSBvcGVyYXRpbmcgc3lzdGVtcyBwcmVmZXIgb3RoZXIgY2hhcmFjdGVycywgb3IgY2FuIGJlCi0JCXNldCB0byB0aGUgbnVsbC9lbXB0eSBzdHJpbmcgZm9yIG5vIGluZGVuYXRpb24uCi0JKi8KLQl2b2lkIFNldExpbmVCcmVhayggY29uc3QgY2hhciogX2xpbmVCcmVhayApCQl7IGxpbmVCcmVhayA9IF9saW5lQnJlYWsgPyBfbGluZUJyZWFrIDogIiI7IH0KLQkvLy8gUXVlcnkgdGhlIGN1cnJlbnQgbGluZSBicmVha2luZyBzdHJpbmcuCi0JY29uc3QgY2hhciogTGluZUJyZWFrKCkJCQkJCQkJeyByZXR1cm4gbGluZUJyZWFrLmNfc3RyKCk7IH0KLQotCS8qKiBTd2l0Y2ggb3ZlciB0byAic3RyZWFtIHByaW50aW5nIiB3aGljaCBpcyB0aGUgbW9zdCBkZW5zZSBmb3JtYXR0aW5nIHdpdGhvdXQgCi0JCWxpbmVicmVha3MuIENvbW1vbiB3aGVuIHRoZSBYTUwgaXMgbmVlZGVkIGZvciBuZXR3b3JrIHRyYW5zbWlzc2lvbi4KLQkqLwotCXZvaWQgU2V0U3RyZWFtUHJpbnRpbmcoKQkJCQkJCXsgaW5kZW50ID0gIiI7Ci0JCQkJCQkJCQkJCQkJICBsaW5lQnJlYWsgPSAiIjsKLQkJCQkJCQkJCQkJCQl9CQotCS8vLyBSZXR1cm4gdGhlIHJlc3VsdC4KLQljb25zdCBjaGFyKiBDU3RyKCkJCQkJCQkJCXsgcmV0dXJuIGJ1ZmZlci5jX3N0cigpOyB9Ci0JLy8vIFJldHVybiB0aGUgbGVuZ3RoIG9mIHRoZSByZXN1bHQgc3RyaW5nLgotCXNpemVfdCBTaXplKCkJCQkJCQkJCQl7IHJldHVybiBidWZmZXIuc2l6ZSgpOyB9Ci0KLQkjaWZkZWYgVElYTUxfVVNFX1NUTAotCS8vLyBSZXR1cm4gdGhlIHJlc3VsdC4KLQljb25zdCBzdGQ6OnN0cmluZyYgU3RyKCkJCQkJCQl7IHJldHVybiBidWZmZXI7IH0KLQkjZW5kaWYKLQotcHJpdmF0ZToKLQl2b2lkIERvSW5kZW50KCkJewotCQlmb3IoIGludCBpPTA7IGk8ZGVwdGg7ICsraSApCi0JCQlidWZmZXIgKz0gaW5kZW50OwotCX0KLQl2b2lkIERvTGluZUJyZWFrKCkgewotCQlidWZmZXIgKz0gbGluZUJyZWFrOwotCX0KLQotCWludCBkZXB0aDsKLQlib29sIHNpbXBsZVRleHRQcmludDsKLQlUSVhNTF9TVFJJTkcgYnVmZmVyOwotCVRJWE1MX1NUUklORyBpbmRlbnQ7Ci0JVElYTUxfU1RSSU5HIGxpbmVCcmVhazsKLX07Ci0KLQogI2lmZGVmIF9NU0NfVkVSCiAjcHJhZ21hIHdhcm5pbmcoIHBvcCApCiAjZW5kaWYKIAogI2VuZGlmCisKZGlmZiAtLWdpdCBhL3Rpbnl4bWwuc2xuIGIvdGlueXhtbC5zbG4KZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDdhZTc3MDUuLjAwMDAwMDAKLS0tIGEvdGlueXhtbC5zbG4KKysrIC9kZXYvbnVsbApAQCAtMSwzOCArMCwwIEBACi3vu78NCi1NaWNyb3NvZnQgVmlzdWFsIFN0dWRpbyBTb2x1dGlvbiBGaWxlLCBGb3JtYXQgVmVyc2lvbiAxMS4wMA0KLSMgVmlzdWFsIEMrKyBFeHByZXNzIDIwMTANCi1Qcm9qZWN0KCJ7OEJDOUNFQjgtOEI0QS0xMUQwLThEMTEtMDBBMEM5MUJDOTQyfSIpID0gInRpbnlYbWxUZXN0IiwgInRpbnlYbWxUZXN0LnZjeHByb2oiLCAiezM0NzE5OTUwLTA5RTgtNDU3RS1CRTIzLThGMUNFM0ExRjFGNn0iDQotRW5kUHJvamVjdA0KLVByb2plY3QoIns4QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9IikgPSAidGlueVhtbFRlc3RTVEwiLCAidGlueVhtbFRlc3RTVEwudmN4cHJvaiIsICJ7NTNFRDU5NjUtNUJDQS00N0I1LTlFQjAtRUREMjA4ODJGMjJGfSINCi1FbmRQcm9qZWN0DQotUHJvamVjdCgiezhCQzlDRUI4LThCNEEtMTFEMC04RDExLTAwQTBDOTFCQzk0Mn0iKSA9ICJ0aW55eG1sIiwgInRpbnl4bWxfbGliLnZjeHByb2oiLCAie0M0MDZEQUVDLTA4ODYtNDc3MS04REVBLTlENzMyOUI0NkNDMX0iDQotRW5kUHJvamVjdA0KLVByb2plY3QoIns4QkM5Q0VCOC04QjRBLTExRDAtOEQxMS0wMEEwQzkxQkM5NDJ9IikgPSAidGlueXhtbFNUTCIsICJ0aW55eG1sU1RMLnZjeHByb2oiLCAie0EzQTg0NzM3LTUwMTctNDU3Ny1COEEyLTc5NDI5QTI1QjhCNn0iDQotRW5kUHJvamVjdA0KLUdsb2JhbA0KLQlHbG9iYWxTZWN0aW9uKFNvbHV0aW9uQ29uZmlndXJhdGlvblBsYXRmb3JtcykgPSBwcmVTb2x1dGlvbg0KLQkJRGVidWd8V2luMzIgPSBEZWJ1Z3xXaW4zMg0KLQkJUmVsZWFzZXxXaW4zMiA9IFJlbGVhc2V8V2luMzINCi0JRW5kR2xvYmFsU2VjdGlvbg0KLQlHbG9iYWxTZWN0aW9uKFByb2plY3RDb25maWd1cmF0aW9uUGxhdGZvcm1zKSA9IHBvc3RTb2x1dGlvbg0KLQkJezM0NzE5OTUwLTA5RTgtNDU3RS1CRTIzLThGMUNFM0ExRjFGNn0uRGVidWd8V2luMzIuQWN0aXZlQ2ZnID0gRGVidWd8V2luMzINCi0JCXszNDcxOTk1MC0wOUU4LTQ1N0UtQkUyMy04RjFDRTNBMUYxRjZ9LkRlYnVnfFdpbjMyLkJ1aWxkLjAgPSBEZWJ1Z3xXaW4zMg0KLQkJezM0NzE5OTUwLTA5RTgtNDU3RS1CRTIzLThGMUNFM0ExRjFGNn0uUmVsZWFzZXxXaW4zMi5BY3RpdmVDZmcgPSBSZWxlYXNlfFdpbjMyDQotCQl7MzQ3MTk5NTAtMDlFOC00NTdFLUJFMjMtOEYxQ0UzQTFGMUY2fS5SZWxlYXNlfFdpbjMyLkJ1aWxkLjAgPSBSZWxlYXNlfFdpbjMyDQotCQl7NTNFRDU5NjUtNUJDQS00N0I1LTlFQjAtRUREMjA4ODJGMjJGfS5EZWJ1Z3xXaW4zMi5BY3RpdmVDZmcgPSBEZWJ1Z3xXaW4zMg0KLQkJezUzRUQ1OTY1LTVCQ0EtNDdCNS05RUIwLUVERDIwODgyRjIyRn0uRGVidWd8V2luMzIuQnVpbGQuMCA9IERlYnVnfFdpbjMyDQotCQl7NTNFRDU5NjUtNUJDQS00N0I1LTlFQjAtRUREMjA4ODJGMjJGfS5SZWxlYXNlfFdpbjMyLkFjdGl2ZUNmZyA9IFJlbGVhc2V8V2luMzINCi0JCXs1M0VENTk2NS01QkNBLTQ3QjUtOUVCMC1FREQyMDg4MkYyMkZ9LlJlbGVhc2V8V2luMzIuQnVpbGQuMCA9IFJlbGVhc2V8V2luMzINCi0JCXtDNDA2REFFQy0wODg2LTQ3NzEtOERFQS05RDczMjlCNDZDQzF9LkRlYnVnfFdpbjMyLkFjdGl2ZUNmZyA9IERlYnVnfFdpbjMyDQotCQl7QzQwNkRBRUMtMDg4Ni00NzcxLThERUEtOUQ3MzI5QjQ2Q0MxfS5EZWJ1Z3xXaW4zMi5CdWlsZC4wID0gRGVidWd8V2luMzINCi0JCXtDNDA2REFFQy0wODg2LTQ3NzEtOERFQS05RDczMjlCNDZDQzF9LlJlbGVhc2V8V2luMzIuQWN0aXZlQ2ZnID0gUmVsZWFzZXxXaW4zMg0KLQkJe0M0MDZEQUVDLTA4ODYtNDc3MS04REVBLTlENzMyOUI0NkNDMX0uUmVsZWFzZXxXaW4zMi5CdWlsZC4wID0gUmVsZWFzZXxXaW4zMg0KLQkJe0EzQTg0NzM3LTUwMTctNDU3Ny1COEEyLTc5NDI5QTI1QjhCNn0uRGVidWd8V2luMzIuQWN0aXZlQ2ZnID0gRGVidWd8V2luMzINCi0JCXtBM0E4NDczNy01MDE3LTQ1NzctQjhBMi03OTQyOUEyNUI4QjZ9LkRlYnVnfFdpbjMyLkJ1aWxkLjAgPSBEZWJ1Z3xXaW4zMg0KLQkJe0EzQTg0NzM3LTUwMTctNDU3Ny1COEEyLTc5NDI5QTI1QjhCNn0uUmVsZWFzZXxXaW4zMi5BY3RpdmVDZmcgPSBSZWxlYXNlfFdpbjMyDQotCQl7QTNBODQ3MzctNTAxNy00NTc3LUI4QTItNzk0MjlBMjVCOEI2fS5SZWxlYXNlfFdpbjMyLkJ1aWxkLjAgPSBSZWxlYXNlfFdpbjMyDQotCUVuZEdsb2JhbFNlY3Rpb24NCi0JR2xvYmFsU2VjdGlvbihTb2x1dGlvblByb3BlcnRpZXMpID0gcHJlU29sdXRpb24NCi0JCUhpZGVTb2x1dGlvbk5vZGUgPSBGQUxTRQ0KLQlFbmRHbG9iYWxTZWN0aW9uDQotRW5kR2xvYmFsDQpkaWZmIC0tZ2l0IGEvdGlueXhtbFNUTC5kc3AgYi90aW55eG1sU1RMLmRzcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMzljMTQ5Ci0tLSAvZGV2L251bGwKKysrIGIvdGlueXhtbFNUTC5kc3AKQEAgLTAsMCArMSwxMjYgQEAKKyMgTWljcm9zb2Z0IERldmVsb3BlciBTdHVkaW8gUHJvamVjdCBGaWxlIC0gTmFtZT0idGlueXhtbFNUTCIgLSBQYWNrYWdlIE93bmVyPTw0Pg0KKyMgTWljcm9zb2Z0IERldmVsb3BlciBTdHVkaW8gR2VuZXJhdGVkIEJ1aWxkIEZpbGUsIEZvcm1hdCBWZXJzaW9uIDYuMDANCisjICoqIERPIE5PVCBFRElUICoqDQorDQorIyBUQVJHVFlQRSAiV2luMzIgKHg4NikgU3RhdGljIExpYnJhcnkiIDB4MDEwNA0KKw0KK0NGRz10aW55eG1sU1RMIC0gV2luMzIgRGVidWcNCishTUVTU0FHRSBUaGlzIGlzIG5vdCBhIHZhbGlkIG1ha2VmaWxlLiBUbyBidWlsZCB0aGlzIHByb2plY3QgdXNpbmcgTk1BS0UsDQorIU1FU1NBR0UgdXNlIHRoZSBFeHBvcnQgTWFrZWZpbGUgY29tbWFuZCBhbmQgcnVuDQorIU1FU1NBR0UgDQorIU1FU1NBR0UgTk1BS0UgL2YgInRpbnl4bWxTVEwubWFrIi4NCishTUVTU0FHRSANCishTUVTU0FHRSBZb3UgY2FuIHNwZWNpZnkgYSBjb25maWd1cmF0aW9uIHdoZW4gcnVubmluZyBOTUFLRQ0KKyFNRVNTQUdFIGJ5IGRlZmluaW5nIHRoZSBtYWNybyBDRkcgb24gdGhlIGNvbW1hbmQgbGluZS4gRm9yIGV4YW1wbGU6DQorIU1FU1NBR0UgDQorIU1FU1NBR0UgTk1BS0UgL2YgInRpbnl4bWxTVEwubWFrIiBDRkc9InRpbnl4bWxTVEwgLSBXaW4zMiBEZWJ1ZyINCishTUVTU0FHRSANCishTUVTU0FHRSBQb3NzaWJsZSBjaG9pY2VzIGZvciBjb25maWd1cmF0aW9uIGFyZToNCishTUVTU0FHRSANCishTUVTU0FHRSAidGlueXhtbFNUTCAtIFdpbjMyIFJlbGVhc2UiIChiYXNlZCBvbiAiV2luMzIgKHg4NikgU3RhdGljIExpYnJhcnkiKQ0KKyFNRVNTQUdFICJ0aW55eG1sU1RMIC0gV2luMzIgRGVidWciIChiYXNlZCBvbiAiV2luMzIgKHg4NikgU3RhdGljIExpYnJhcnkiKQ0KKyFNRVNTQUdFIA0KKw0KKyMgQmVnaW4gUHJvamVjdA0KKyMgUFJPUCBBbGxvd1BlckNvbmZpZ0RlcGVuZGVuY2llcyAwDQorIyBQUk9QIFNjY19Qcm9qTmFtZSAiIg0KKyMgUFJPUCBTY2NfTG9jYWxQYXRoICIiDQorQ1BQPWNsLmV4ZQ0KK1JTQz1yYy5leGUNCisNCishSUYgICIkKENGRykiID09ICJ0aW55eG1sU1RMIC0gV2luMzIgUmVsZWFzZSINCisNCisjIFBST1AgQkFTRSBVc2VfTUZDIDANCisjIFBST1AgQkFTRSBVc2VfRGVidWdfTGlicmFyaWVzIDANCisjIFBST1AgQkFTRSBPdXRwdXRfRGlyICJ0aW55eG1sU1RMX19fV2luMzJfUmVsZWFzZSINCisjIFBST1AgQkFTRSBJbnRlcm1lZGlhdGVfRGlyICJ0aW55eG1sU1RMX19fV2luMzJfUmVsZWFzZSINCisjIFBST1AgQkFTRSBUYXJnZXRfRGlyICIiDQorIyBQUk9QIFVzZV9NRkMgMA0KKyMgUFJPUCBVc2VfRGVidWdfTGlicmFyaWVzIDANCisjIFBST1AgT3V0cHV0X0RpciAiUmVsZWFzZV9TVEwiDQorIyBQUk9QIEludGVybWVkaWF0ZV9EaXIgIlJlbGVhc2VfU1RMIg0KKyMgUFJPUCBUYXJnZXRfRGlyICIiDQorIyBBREQgQkFTRSBDUFAgL25vbG9nbyAvVzMgL0dYIC9PMiAvRCAiV0lOMzIiIC9EICJOREVCVUciIC9EICJfTUJDUyIgL0QgIl9MSUIiIC9ZWCAvRkQgL2MNCisjIEFERCBDUFAgL25vbG9nbyAvVzMgL0dYIC9PMiAvRCAiV0lOMzIiIC9EICJOREVCVUciIC9EICJfTUJDUyIgL0QgIl9MSUIiIC9EICJUSVhNTF9VU0VfU1RMIiAvRlIgL0ZEIC9jDQorIyBTVUJUUkFDVCBDUFAgL1lYDQorIyBBREQgQkFTRSBSU0MgL2wgMHg0MDkgL2QgIk5ERUJVRyINCisjIEFERCBSU0MgL2wgMHg0MDkgL2QgIk5ERUJVRyINCitCU0MzMj1ic2NtYWtlLmV4ZQ0KKyMgQUREIEJBU0UgQlNDMzIgL25vbG9nbw0KKyMgQUREIEJTQzMyIC9ub2xvZ28NCitMSUIzMj1saW5rLmV4ZSAtbGliDQorIyBBREQgQkFTRSBMSUIzMiAvbm9sb2dvDQorIyBBREQgTElCMzIgL25vbG9nbyAvb3V0OiJSZWxlYXNlX1NUTFx0aW55eG1sX1NUTC5saWIiDQorDQorIUVMU0VJRiAgIiQoQ0ZHKSIgPT0gInRpbnl4bWxTVEwgLSBXaW4zMiBEZWJ1ZyINCisNCisjIFBST1AgQkFTRSBVc2VfTUZDIDANCisjIFBST1AgQkFTRSBVc2VfRGVidWdfTGlicmFyaWVzIDENCisjIFBST1AgQkFTRSBPdXRwdXRfRGlyICJ0aW55eG1sU1RMX19fV2luMzJfRGVidWcwIg0KKyMgUFJPUCBCQVNFIEludGVybWVkaWF0ZV9EaXIgInRpbnl4bWxTVExfX19XaW4zMl9EZWJ1ZzAiDQorIyBQUk9QIEJBU0UgVGFyZ2V0X0RpciAiIg0KKyMgUFJPUCBVc2VfTUZDIDANCisjIFBST1AgVXNlX0RlYnVnX0xpYnJhcmllcyAxDQorIyBQUk9QIE91dHB1dF9EaXIgIkRlYnVnX1NUTCINCisjIFBST1AgSW50ZXJtZWRpYXRlX0RpciAiRGVidWdfU1RMIg0KKyMgUFJPUCBUYXJnZXRfRGlyICIiDQorIyBBREQgQkFTRSBDUFAgL25vbG9nbyAvVzMgL0dtIC9HWCAvWkkgL09kIC9EICJXSU4zMiIgL0QgIl9ERUJVRyIgL0QgIl9NQkNTIiAvRCAiX0xJQiIgL1lYIC9GRCAvR1ogL2MNCisjIEFERCBDUFAgL25vbG9nbyAvVzMgL0dtIC9HWCAvWkkgL09kIC9EICJXSU4zMiIgL0QgIl9ERUJVRyIgL0QgIl9NQkNTIiAvRCAiX0xJQiIgL0QgIlRJWE1MX1VTRV9TVEwiIC9GRCAvR1ogL2MNCisjIFNVQlRSQUNUIENQUCAvWVgNCisjIEFERCBCQVNFIFJTQyAvbCAweDQwOSAvZCAiX0RFQlVHIg0KKyMgQUREIFJTQyAvbCAweDQwOSAvZCAiX0RFQlVHIg0KK0JTQzMyPWJzY21ha2UuZXhlDQorIyBBREQgQkFTRSBCU0MzMiAvbm9sb2dvDQorIyBBREQgQlNDMzIgL25vbG9nbw0KK0xJQjMyPWxpbmsuZXhlIC1saWINCisjIEFERCBCQVNFIExJQjMyIC9ub2xvZ28NCisjIEFERCBMSUIzMiAvbm9sb2dvIC9vdXQ6IkRlYnVnX1NUTFx0aW55eG1sZF9TVEwubGliIg0KKw0KKyFFTkRJRiANCisNCisjIEJlZ2luIFRhcmdldA0KKw0KKyMgTmFtZSAidGlueXhtbFNUTCAtIFdpbjMyIFJlbGVhc2UiDQorIyBOYW1lICJ0aW55eG1sU1RMIC0gV2luMzIgRGVidWciDQorIyBCZWdpbiBHcm91cCAiU291cmNlIEZpbGVzIg0KKw0KKyMgUFJPUCBEZWZhdWx0X0ZpbHRlciAiIg0KKyMgQmVnaW4gU291cmNlIEZpbGUNCisNCitTT1VSQ0U9Llx0aW55c3RyLmNwcA0KKyMgRW5kIFNvdXJjZSBGaWxlDQorIyBCZWdpbiBTb3VyY2UgRmlsZQ0KKw0KK1NPVVJDRT0uXHRpbnl4bWwuY3BwDQorIyBFbmQgU291cmNlIEZpbGUNCisjIEJlZ2luIFNvdXJjZSBGaWxlDQorDQorU09VUkNFPS5cdGlueXhtbGVycm9yLmNwcA0KKyMgRW5kIFNvdXJjZSBGaWxlDQorIyBCZWdpbiBTb3VyY2UgRmlsZQ0KKw0KK1NPVVJDRT0uXHRpbnl4bWxwYXJzZXIuY3BwDQorIyBFbmQgU291cmNlIEZpbGUNCisjIEVuZCBHcm91cA0KKyMgQmVnaW4gR3JvdXAgIkhlYWRlciBGaWxlcyINCisNCisjIFBST1AgRGVmYXVsdF9GaWx0ZXIgIiINCisjIEJlZ2luIFNvdXJjZSBGaWxlDQorDQorU09VUkNFPS5cdGlueXN0ci5oDQorIyBFbmQgU291cmNlIEZpbGUNCisjIEJlZ2luIFNvdXJjZSBGaWxlDQorDQorU09VUkNFPS5cdGlueXhtbC5oDQorIyBFbmQgU291cmNlIEZpbGUNCisjIEVuZCBHcm91cA0KKyMgQmVnaW4gU291cmNlIEZpbGUNCisNCitTT1VSQ0U9LlxjaGFuZ2VzLnR4dA0KKyMgRW5kIFNvdXJjZSBGaWxlDQorIyBCZWdpbiBTb3VyY2UgRmlsZQ0KKw0KK1NPVVJDRT0uXHJlYWRtZS50eHQNCisjIEVuZCBTb3VyY2UgRmlsZQ0KKyMgRW5kIFRhcmdldA0KKyMgRW5kIFByb2plY3QNCmRpZmYgLS1naXQgYS90aW55eG1sU1RMLnZjeHByb2ogYi90aW55eG1sU1RMLnZjeHByb2oKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGJlMzI1ODMuLjAwMDAwMDAKLS0tIGEvdGlueXhtbFNUTC52Y3hwcm9qCisrKyAvZGV2L251bGwKQEAgLTEsMTI1ICswLDAgQEAKLe+7vzw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi04Ij8+DQotPFByb2plY3QgRGVmYXVsdFRhcmdldHM9IkJ1aWxkIiBUb29sc1ZlcnNpb249IjQuMCIgeG1sbnM9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vZGV2ZWxvcGVyL21zYnVpbGQvMjAwMyI+DQotICA8SXRlbUdyb3VwIExhYmVsPSJQcm9qZWN0Q29uZmlndXJhdGlvbnMiPg0KLSAgICA8UHJvamVjdENvbmZpZ3VyYXRpb24gSW5jbHVkZT0iRGVidWd8V2luMzIiPg0KLSAgICAgIDxDb25maWd1cmF0aW9uPkRlYnVnPC9Db25maWd1cmF0aW9uPg0KLSAgICAgIDxQbGF0Zm9ybT5XaW4zMjwvUGxhdGZvcm0+DQotICAgIDwvUHJvamVjdENvbmZpZ3VyYXRpb24+DQotICAgIDxQcm9qZWN0Q29uZmlndXJhdGlvbiBJbmNsdWRlPSJSZWxlYXNlfFdpbjMyIj4NCi0gICAgICA8Q29uZmlndXJhdGlvbj5SZWxlYXNlPC9Db25maWd1cmF0aW9uPg0KLSAgICAgIDxQbGF0Zm9ybT5XaW4zMjwvUGxhdGZvcm0+DQotICAgIDwvUHJvamVjdENvbmZpZ3VyYXRpb24+DQotICA8L0l0ZW1Hcm91cD4NCi0gIDxQcm9wZXJ0eUdyb3VwIExhYmVsPSJHbG9iYWxzIj4NCi0gICAgPFByb2plY3RHdWlkPntBM0E4NDczNy01MDE3LTQ1NzctQjhBMi03OTQyOUEyNUI4QjZ9PC9Qcm9qZWN0R3VpZD4NCi0gIDwvUHJvcGVydHlHcm91cD4NCi0gIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxNaWNyb3NvZnQuQ3BwLkRlZmF1bHQucHJvcHMiIC8+DQotICA8UHJvcGVydHlHcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIiBMYWJlbD0iQ29uZmlndXJhdGlvbiI+DQotICAgIDxDb25maWd1cmF0aW9uVHlwZT5TdGF0aWNMaWJyYXJ5PC9Db25maWd1cmF0aW9uVHlwZT4NCi0gICAgPFVzZU9mTWZjPmZhbHNlPC9Vc2VPZk1mYz4NCi0gICAgPENoYXJhY3RlclNldD5NdWx0aUJ5dGU8L0NoYXJhY3RlclNldD4NCi0gIDwvUHJvcGVydHlHcm91cD4NCi0gIDxQcm9wZXJ0eUdyb3VwIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIiBMYWJlbD0iQ29uZmlndXJhdGlvbiI+DQotICAgIDxDb25maWd1cmF0aW9uVHlwZT5TdGF0aWNMaWJyYXJ5PC9Db25maWd1cmF0aW9uVHlwZT4NCi0gICAgPFVzZU9mTWZjPmZhbHNlPC9Vc2VPZk1mYz4NCi0gICAgPENoYXJhY3RlclNldD5NdWx0aUJ5dGU8L0NoYXJhY3RlclNldD4NCi0gIDwvUHJvcGVydHlHcm91cD4NCi0gIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxNaWNyb3NvZnQuQ3BwLnByb3BzIiAvPg0KLSAgPEltcG9ydEdyb3VwIExhYmVsPSJFeHRlbnNpb25TZXR0aW5ncyI+DQotICA8L0ltcG9ydEdyb3VwPg0KLSAgPEltcG9ydEdyb3VwIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciIExhYmVsPSJQcm9wZXJ0eVNoZWV0cyI+DQotICAgIDxJbXBvcnQgUHJvamVjdD0iJChVc2VyUm9vdERpcilcTWljcm9zb2Z0LkNwcC4kKFBsYXRmb3JtKS51c2VyLnByb3BzIiBDb25kaXRpb249ImV4aXN0cygnJChVc2VyUm9vdERpcilcTWljcm9zb2Z0LkNwcC4kKFBsYXRmb3JtKS51c2VyLnByb3BzJykiIExhYmVsPSJMb2NhbEFwcERhdGFQbGF0Zm9ybSIgLz4NCi0gICAgPEltcG9ydCBQcm9qZWN0PSIkKFZDVGFyZ2V0c1BhdGgpTWljcm9zb2Z0LkNQUC5VcGdyYWRlRnJvbVZDNjAucHJvcHMiIC8+DQotICA8L0ltcG9ydEdyb3VwPg0KLSAgPEltcG9ydEdyb3VwIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIiBMYWJlbD0iUHJvcGVydHlTaGVldHMiPg0KLSAgICA8SW1wb3J0IFByb2plY3Q9IiQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcyIgQ29uZGl0aW9uPSJleGlzdHMoJyQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcycpIiBMYWJlbD0iTG9jYWxBcHBEYXRhUGxhdGZvcm0iIC8+DQotICAgIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKU1pY3Jvc29mdC5DUFAuVXBncmFkZUZyb21WQzYwLnByb3BzIiAvPg0KLSAgPC9JbXBvcnRHcm91cD4NCi0gIDxQcm9wZXJ0eUdyb3VwIExhYmVsPSJVc2VyTWFjcm9zIiAvPg0KLSAgPFByb3BlcnR5R3JvdXA+DQotICAgIDxfUHJvamVjdEZpbGVWZXJzaW9uPjEwLjAuMzAzMTkuMTwvX1Byb2plY3RGaWxlVmVyc2lvbj4NCi0gICAgPEluY2x1ZGVQYXRoIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4kKEluY2x1ZGVQYXRoKTwvSW5jbHVkZVBhdGg+DQotICAgIDxMaWJyYXJ5UGF0aCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+JChMaWJyYXJ5UGF0aCk8L0xpYnJhcnlQYXRoPg0KLSAgICA8SW5jbHVkZVBhdGggQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+JChJbmNsdWRlUGF0aCk8L0luY2x1ZGVQYXRoPg0KLSAgICA8TGlicmFyeVBhdGggQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+JChMaWJyYXJ5UGF0aCk8L0xpYnJhcnlQYXRoPg0KLSAgICA8SW50RGlyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4kKFNvbHV0aW9uRGlyKSQoQ29uZmlndXJhdGlvbikkKFByb2plY3ROYW1lKVw8L0ludERpcj4NCi0gICAgPE91dERpciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+JChTb2x1dGlvbkRpcikkKENvbmZpZ3VyYXRpb24pJChQcm9qZWN0TmFtZSlcPC9PdXREaXI+DQotICAgIDxPdXREaXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+JChTb2x1dGlvbkRpcikkKENvbmZpZ3VyYXRpb24pJChQcm9qZWN0TmFtZSlcPC9PdXREaXI+DQotICAgIDxJbnREaXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+JChTb2x1dGlvbkRpcikkKENvbmZpZ3VyYXRpb24pJChQcm9qZWN0TmFtZSlcPC9JbnREaXI+DQotICA8L1Byb3BlcnR5R3JvdXA+DQotICA8SXRlbURlZmluaXRpb25Hcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+DQotICAgIDxDbENvbXBpbGU+DQotICAgICAgPE9wdGltaXphdGlvbj5EaXNhYmxlZDwvT3B0aW1pemF0aW9uPg0KLSAgICAgIDxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz5XSU4zMjtfREVCVUc7X0xJQjtUSVhNTF9VU0VfU1RMOyUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgICA8TWluaW1hbFJlYnVpbGQ+dHJ1ZTwvTWluaW1hbFJlYnVpbGQ+DQotICAgICAgPEJhc2ljUnVudGltZUNoZWNrcz5FbmFibGVGYXN0Q2hlY2tzPC9CYXNpY1J1bnRpbWVDaGVja3M+DQotICAgICAgPFJ1bnRpbWVMaWJyYXJ5Pk11bHRpVGhyZWFkZWREZWJ1ZzwvUnVudGltZUxpYnJhcnk+DQotICAgICAgPEJyb3dzZUluZm9ybWF0aW9uPnRydWU8L0Jyb3dzZUluZm9ybWF0aW9uPg0KLSAgICAgIDxXYXJuaW5nTGV2ZWw+TGV2ZWw0PC9XYXJuaW5nTGV2ZWw+DQotICAgICAgPFN1cHByZXNzU3RhcnR1cEJhbm5lcj50cnVlPC9TdXBwcmVzc1N0YXJ0dXBCYW5uZXI+DQotICAgICAgPERlYnVnSW5mb3JtYXRpb25Gb3JtYXQ+RWRpdEFuZENvbnRpbnVlPC9EZWJ1Z0luZm9ybWF0aW9uRm9ybWF0Pg0KLSAgICA8L0NsQ29tcGlsZT4NCi0gICAgPFJlc291cmNlQ29tcGlsZT4NCi0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+X0RFQlVHOyUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgICA8Q3VsdHVyZT4weDA0MDk8L0N1bHR1cmU+DQotICAgIDwvUmVzb3VyY2VDb21waWxlPg0KLSAgICA8TGliPg0KLSAgICAgIDxTdXBwcmVzc1N0YXJ0dXBCYW5uZXI+dHJ1ZTwvU3VwcHJlc3NTdGFydHVwQmFubmVyPg0KLSAgICA8L0xpYj4NCi0gICAgPEJzY21ha2U+DQotICAgICAgPFN1cHByZXNzU3RhcnR1cEJhbm5lcj50cnVlPC9TdXBwcmVzc1N0YXJ0dXBCYW5uZXI+DQotICAgIDwvQnNjbWFrZT4NCi0gIDwvSXRlbURlZmluaXRpb25Hcm91cD4NCi0gIDxJdGVtRGVmaW5pdGlvbkdyb3VwIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPg0KLSAgICA8Q2xDb21waWxlPg0KLSAgICAgIDxPcHRpbWl6YXRpb24+TWF4U3BlZWQ8L09wdGltaXphdGlvbj4NCi0gICAgICA8SW5saW5lRnVuY3Rpb25FeHBhbnNpb24+T25seUV4cGxpY2l0SW5saW5lPC9JbmxpbmVGdW5jdGlvbkV4cGFuc2lvbj4NCi0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+V0lOMzI7TkRFQlVHO19MSUI7VElYTUxfVVNFX1NUTDslKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgICAgPFN0cmluZ1Bvb2xpbmc+dHJ1ZTwvU3RyaW5nUG9vbGluZz4NCi0gICAgICA8UnVudGltZUxpYnJhcnk+TXVsdGlUaHJlYWRlZDwvUnVudGltZUxpYnJhcnk+DQotICAgICAgPEZ1bmN0aW9uTGV2ZWxMaW5raW5nPnRydWU8L0Z1bmN0aW9uTGV2ZWxMaW5raW5nPg0KLSAgICAgIDxCcm93c2VJbmZvcm1hdGlvbj50cnVlPC9Ccm93c2VJbmZvcm1hdGlvbj4NCi0gICAgICA8V2FybmluZ0xldmVsPkxldmVsMzwvV2FybmluZ0xldmVsPg0KLSAgICAgIDxTdXBwcmVzc1N0YXJ0dXBCYW5uZXI+dHJ1ZTwvU3VwcHJlc3NTdGFydHVwQmFubmVyPg0KLSAgICA8L0NsQ29tcGlsZT4NCi0gICAgPFJlc291cmNlQ29tcGlsZT4NCi0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+TkRFQlVHOyUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgICA8Q3VsdHVyZT4weDA0MDk8L0N1bHR1cmU+DQotICAgIDwvUmVzb3VyY2VDb21waWxlPg0KLSAgICA8TGliPg0KLSAgICAgIDxTdXBwcmVzc1N0YXJ0dXBCYW5uZXI+dHJ1ZTwvU3VwcHJlc3NTdGFydHVwQmFubmVyPg0KLSAgICA8L0xpYj4NCi0gICAgPEJzY21ha2U+DQotICAgICAgPFN1cHByZXNzU3RhcnR1cEJhbm5lcj50cnVlPC9TdXBwcmVzc1N0YXJ0dXBCYW5uZXI+DQotICAgIDwvQnNjbWFrZT4NCi0gIDwvSXRlbURlZmluaXRpb25Hcm91cD4NCi0gIDxJdGVtR3JvdXA+DQotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0idGlueXN0ci5jcHAiPg0KLSAgICAgIDxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1ByZXByb2Nlc3NvckRlZmluaXRpb25zPg0KLSAgICAgIDxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj4lKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgIDwvQ2xDb21waWxlPg0KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9InRpbnl4bWwuY3BwIj4NCi0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPiUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1ByZXByb2Nlc3NvckRlZmluaXRpb25zPg0KLSAgICA8L0NsQ29tcGlsZT4NCi0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSJ0aW55eG1sZXJyb3IuY3BwIj4NCi0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPiUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1ByZXByb2Nlc3NvckRlZmluaXRpb25zPg0KLSAgICA8L0NsQ29tcGlsZT4NCi0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSJ0aW55eG1scGFyc2VyLmNwcCI+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4lKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPiUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgPC9DbENvbXBpbGU+DQotICA8L0l0ZW1Hcm91cD4NCi0gIDxJdGVtR3JvdXA+DQotICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0idGlueXN0ci5oIiAvPg0KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9InRpbnl4bWwuaCIgLz4NCi0gIDwvSXRlbUdyb3VwPg0KLSAgPEl0ZW1Hcm91cD4NCi0gICAgPE5vbmUgSW5jbHVkZT0iY2hhbmdlcy50eHQiIC8+DQotICAgIDxOb25lIEluY2x1ZGU9InJlYWRtZS50eHQiIC8+DQotICA8L0l0ZW1Hcm91cD4NCi0gIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxNaWNyb3NvZnQuQ3BwLnRhcmdldHMiIC8+DQotICA8SW1wb3J0R3JvdXAgTGFiZWw9IkV4dGVuc2lvblRhcmdldHMiPg0KLSAgPC9JbXBvcnRHcm91cD4NCi08L1Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvdGlueXhtbF9saWIuZHNwIGIvdGlueXhtbF9saWIuZHNwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEwZDI5ZTEKLS0tIC9kZXYvbnVsbAorKysgYi90aW55eG1sX2xpYi5kc3AKQEAgLTAsMCArMSwxMzAgQEAKKyMgTWljcm9zb2Z0IERldmVsb3BlciBTdHVkaW8gUHJvamVjdCBGaWxlIC0gTmFtZT0idGlueXhtbCIgLSBQYWNrYWdlIE93bmVyPTw0Pg0KKyMgTWljcm9zb2Z0IERldmVsb3BlciBTdHVkaW8gR2VuZXJhdGVkIEJ1aWxkIEZpbGUsIEZvcm1hdCBWZXJzaW9uIDYuMDANCisjICoqIERPIE5PVCBFRElUICoqDQorDQorIyBUQVJHVFlQRSAiV2luMzIgKHg4NikgU3RhdGljIExpYnJhcnkiIDB4MDEwNA0KKw0KK0NGRz10aW55eG1sIC0gV2luMzIgUmVsZWFzZQ0KKyFNRVNTQUdFIFRoaXMgaXMgbm90IGEgdmFsaWQgbWFrZWZpbGUuIFRvIGJ1aWxkIHRoaXMgcHJvamVjdCB1c2luZyBOTUFLRSwNCishTUVTU0FHRSB1c2UgdGhlIEV4cG9ydCBNYWtlZmlsZSBjb21tYW5kIGFuZCBydW4NCishTUVTU0FHRSANCishTUVTU0FHRSBOTUFLRSAvZiAidGlueXhtbF9saWIubWFrIi4NCishTUVTU0FHRSANCishTUVTU0FHRSBZb3UgY2FuIHNwZWNpZnkgYSBjb25maWd1cmF0aW9uIHdoZW4gcnVubmluZyBOTUFLRQ0KKyFNRVNTQUdFIGJ5IGRlZmluaW5nIHRoZSBtYWNybyBDRkcgb24gdGhlIGNvbW1hbmQgbGluZS4gRm9yIGV4YW1wbGU6DQorIU1FU1NBR0UgDQorIU1FU1NBR0UgTk1BS0UgL2YgInRpbnl4bWxfbGliLm1hayIgQ0ZHPSJ0aW55eG1sIC0gV2luMzIgUmVsZWFzZSINCishTUVTU0FHRSANCishTUVTU0FHRSBQb3NzaWJsZSBjaG9pY2VzIGZvciBjb25maWd1cmF0aW9uIGFyZToNCishTUVTU0FHRSANCishTUVTU0FHRSAidGlueXhtbCAtIFdpbjMyIFJlbGVhc2UiIChiYXNlZCBvbiAiV2luMzIgKHg4NikgU3RhdGljIExpYnJhcnkiKQ0KKyFNRVNTQUdFICJ0aW55eG1sIC0gV2luMzIgRGVidWciIChiYXNlZCBvbiAiV2luMzIgKHg4NikgU3RhdGljIExpYnJhcnkiKQ0KKyFNRVNTQUdFIA0KKw0KKyMgQmVnaW4gUHJvamVjdA0KKyMgUFJPUCBBbGxvd1BlckNvbmZpZ0RlcGVuZGVuY2llcyAwDQorIyBQUk9QIFNjY19Qcm9qTmFtZSAiIg0KKyMgUFJPUCBTY2NfTG9jYWxQYXRoICIiDQorQ1BQPWNsLmV4ZQ0KK1JTQz1yYy5leGUNCisNCishSUYgICIkKENGRykiID09ICJ0aW55eG1sIC0gV2luMzIgUmVsZWFzZSINCisNCisjIFBST1AgQkFTRSBVc2VfTUZDIDANCisjIFBST1AgQkFTRSBVc2VfRGVidWdfTGlicmFyaWVzIDANCisjIFBST1AgQkFTRSBPdXRwdXRfRGlyICJSZWxlYXNlIg0KKyMgUFJPUCBCQVNFIEludGVybWVkaWF0ZV9EaXIgIlJlbGVhc2UiDQorIyBQUk9QIEJBU0UgVGFyZ2V0X0RpciAiIg0KKyMgUFJPUCBVc2VfTUZDIDANCisjIFBST1AgVXNlX0RlYnVnX0xpYnJhcmllcyAwDQorIyBQUk9QIE91dHB1dF9EaXIgIlJlbGVhc2UiDQorIyBQUk9QIEludGVybWVkaWF0ZV9EaXIgIlJlbGVhc2UiDQorIyBQUk9QIFRhcmdldF9EaXIgIiINCisjIEFERCBCQVNFIENQUCAvbm9sb2dvIC9XMyAvR1ggL08yIC9EICJXSU4zMiIgL0QgIk5ERUJVRyIgL0QgIl9NQkNTIiAvRCAiX0xJQiIgL1lYIC9GRCAvYw0KKyMgQUREIENQUCAvbm9sb2dvIC9XMyAvR1ggL08yIC9EICJXSU4zMiIgL0QgIk5ERUJVRyIgL0QgIl9NQkNTIiAvRCAiX0xJQiIgL0ZEIC9jDQorIyBTVUJUUkFDVCBDUFAgL1lYDQorIyBBREQgQkFTRSBSU0MgL2wgMHg0MDcgL2QgIk5ERUJVRyINCisjIEFERCBSU0MgL2wgMHg0MDcgL2QgIk5ERUJVRyINCitCU0MzMj1ic2NtYWtlLmV4ZQ0KKyMgQUREIEJBU0UgQlNDMzIgL25vbG9nbw0KKyMgQUREIEJTQzMyIC9ub2xvZ28NCitMSUIzMj1saW5rLmV4ZSAtbGliDQorIyBBREQgQkFTRSBMSUIzMiAvbm9sb2dvDQorIyBBREQgTElCMzIgL25vbG9nbyAvb3V0OiJSZWxlYXNlXHRpbnl4bWwubGliIg0KKw0KKyFFTFNFSUYgICIkKENGRykiID09ICJ0aW55eG1sIC0gV2luMzIgRGVidWciDQorDQorIyBQUk9QIEJBU0UgVXNlX01GQyAwDQorIyBQUk9QIEJBU0UgVXNlX0RlYnVnX0xpYnJhcmllcyAxDQorIyBQUk9QIEJBU0UgT3V0cHV0X0RpciAiRGVidWciDQorIyBQUk9QIEJBU0UgSW50ZXJtZWRpYXRlX0RpciAiRGVidWciDQorIyBQUk9QIEJBU0UgVGFyZ2V0X0RpciAiIg0KKyMgUFJPUCBVc2VfTUZDIDANCisjIFBST1AgVXNlX0RlYnVnX0xpYnJhcmllcyAxDQorIyBQUk9QIE91dHB1dF9EaXIgIkRlYnVnIg0KKyMgUFJPUCBJbnRlcm1lZGlhdGVfRGlyICJEZWJ1ZyINCisjIFBST1AgVGFyZ2V0X0RpciAiIg0KKyMgQUREIEJBU0UgQ1BQIC9ub2xvZ28gL1czIC9HbSAvR1ggL1pJIC9PZCAvRCAiV0lOMzIiIC9EICJfREVCVUciIC9EICJfTUJDUyIgL0QgIl9MSUIiIC9ZWCAvRkQgL0daIC9jDQorIyBBREQgQ1BQIC9ub2xvZ28gL1czIC9HbSAvR1ggL1pJIC9PZCAvRCAiV0lOMzIiIC9EICJfREVCVUciIC9EICJfTUJDUyIgL0QgIl9MSUIiIC9GUiAvRkQgL0daIC9jDQorIyBTVUJUUkFDVCBDUFAgL1lYDQorIyBBREQgQkFTRSBSU0MgL2wgMHg0MDcgL2QgIl9ERUJVRyINCisjIEFERCBSU0MgL2wgMHg0MDcgL2QgIl9ERUJVRyINCitCU0MzMj1ic2NtYWtlLmV4ZQ0KKyMgQUREIEJBU0UgQlNDMzIgL25vbG9nbw0KKyMgQUREIEJTQzMyIC9ub2xvZ28NCitMSUIzMj1saW5rLmV4ZSAtbGliDQorIyBBREQgQkFTRSBMSUIzMiAvbm9sb2dvDQorIyBBREQgTElCMzIgL25vbG9nbyAvb3V0OiJEZWJ1Z1x0aW55eG1sZC5saWIiDQorDQorIUVORElGIA0KKw0KKyMgQmVnaW4gVGFyZ2V0DQorDQorIyBOYW1lICJ0aW55eG1sIC0gV2luMzIgUmVsZWFzZSINCisjIE5hbWUgInRpbnl4bWwgLSBXaW4zMiBEZWJ1ZyINCisjIEJlZ2luIEdyb3VwICJTb3VyY2UgRmlsZXMiDQorDQorIyBQUk9QIERlZmF1bHRfRmlsdGVyICJjcHA7YztjeHg7cmM7ZGVmO3I7b2RsO2lkbDtocGo7YmF0Ig0KKyMgQmVnaW4gU291cmNlIEZpbGUNCisNCitTT1VSQ0U9Llx0aW55c3RyLmNwcA0KKyMgRW5kIFNvdXJjZSBGaWxlDQorIyBCZWdpbiBTb3VyY2UgRmlsZQ0KKw0KK1NPVVJDRT0uXHRpbnl4bWwuY3BwDQorIyBFbmQgU291cmNlIEZpbGUNCisjIEJlZ2luIFNvdXJjZSBGaWxlDQorDQorU09VUkNFPS5cdGlueXhtbGVycm9yLmNwcA0KKyMgRW5kIFNvdXJjZSBGaWxlDQorIyBCZWdpbiBTb3VyY2UgRmlsZQ0KKw0KK1NPVVJDRT0uXHRpbnl4bWxwYXJzZXIuY3BwDQorIyBFbmQgU291cmNlIEZpbGUNCisjIEVuZCBHcm91cA0KKyMgQmVnaW4gR3JvdXAgIkhlYWRlciBGaWxlcyINCisNCisjIFBST1AgRGVmYXVsdF9GaWx0ZXIgImg7aHBwO2h4eDtobTtpbmwiDQorIyBCZWdpbiBTb3VyY2UgRmlsZQ0KKw0KK1NPVVJDRT0uXHRpbnlzdHIuaA0KKyMgRW5kIFNvdXJjZSBGaWxlDQorIyBCZWdpbiBTb3VyY2UgRmlsZQ0KKw0KK1NPVVJDRT0uXHRpbnl4bWwuaA0KKyMgRW5kIFNvdXJjZSBGaWxlDQorIyBFbmQgR3JvdXANCisjIEJlZ2luIFNvdXJjZSBGaWxlDQorDQorU09VUkNFPS5cY2hhbmdlcy50eHQNCisjIEVuZCBTb3VyY2UgRmlsZQ0KKyMgQmVnaW4gU291cmNlIEZpbGUNCisNCitTT1VSQ0U9LlxyZWFkbWUudHh0DQorIyBFbmQgU291cmNlIEZpbGUNCisjIEJlZ2luIFNvdXJjZSBGaWxlDQorDQorU09VUkNFPS5cdHV0b3JpYWxfZ2V0dGluZ1N0YXJ0ZWQudHh0DQorIyBFbmQgU291cmNlIEZpbGUNCisjIEVuZCBUYXJnZXQNCisjIEVuZCBQcm9qZWN0DQpkaWZmIC0tZ2l0IGEvdGlueXhtbF9saWIudmN4cHJvaiBiL3Rpbnl4bWxfbGliLnZjeHByb2oKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVkZGYwOTQuLjAwMDAwMDAKLS0tIGEvdGlueXhtbF9saWIudmN4cHJvagorKysgL2Rldi9udWxsCkBAIC0xLDEyNiArMCwwIEBACi3vu788P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJ1dGYtOCI/Pg0KLTxQcm9qZWN0IERlZmF1bHRUYXJnZXRzPSJCdWlsZCIgVG9vbHNWZXJzaW9uPSI0LjAiIHhtbG5zPSJodHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL2RldmVsb3Blci9tc2J1aWxkLzIwMDMiPg0KLSAgPEl0ZW1Hcm91cCBMYWJlbD0iUHJvamVjdENvbmZpZ3VyYXRpb25zIj4NCi0gICAgPFByb2plY3RDb25maWd1cmF0aW9uIEluY2x1ZGU9IkRlYnVnfFdpbjMyIj4NCi0gICAgICA8Q29uZmlndXJhdGlvbj5EZWJ1ZzwvQ29uZmlndXJhdGlvbj4NCi0gICAgICA8UGxhdGZvcm0+V2luMzI8L1BsYXRmb3JtPg0KLSAgICA8L1Byb2plY3RDb25maWd1cmF0aW9uPg0KLSAgICA8UHJvamVjdENvbmZpZ3VyYXRpb24gSW5jbHVkZT0iUmVsZWFzZXxXaW4zMiI+DQotICAgICAgPENvbmZpZ3VyYXRpb24+UmVsZWFzZTwvQ29uZmlndXJhdGlvbj4NCi0gICAgICA8UGxhdGZvcm0+V2luMzI8L1BsYXRmb3JtPg0KLSAgICA8L1Byb2plY3RDb25maWd1cmF0aW9uPg0KLSAgPC9JdGVtR3JvdXA+DQotICA8UHJvcGVydHlHcm91cCBMYWJlbD0iR2xvYmFscyI+DQotICAgIDxQcm9qZWN0TmFtZT50aW55eG1sPC9Qcm9qZWN0TmFtZT4NCi0gICAgPFByb2plY3RHdWlkPntDNDA2REFFQy0wODg2LTQ3NzEtOERFQS05RDczMjlCNDZDQzF9PC9Qcm9qZWN0R3VpZD4NCi0gIDwvUHJvcGVydHlHcm91cD4NCi0gIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxNaWNyb3NvZnQuQ3BwLkRlZmF1bHQucHJvcHMiIC8+DQotICA8UHJvcGVydHlHcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyIgTGFiZWw9IkNvbmZpZ3VyYXRpb24iPg0KLSAgICA8Q29uZmlndXJhdGlvblR5cGU+U3RhdGljTGlicmFyeTwvQ29uZmlndXJhdGlvblR5cGU+DQotICAgIDxVc2VPZk1mYz5mYWxzZTwvVXNlT2ZNZmM+DQotICAgIDxDaGFyYWN0ZXJTZXQ+TXVsdGlCeXRlPC9DaGFyYWN0ZXJTZXQ+DQotICA8L1Byb3BlcnR5R3JvdXA+DQotICA8UHJvcGVydHlHcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIiBMYWJlbD0iQ29uZmlndXJhdGlvbiI+DQotICAgIDxDb25maWd1cmF0aW9uVHlwZT5TdGF0aWNMaWJyYXJ5PC9Db25maWd1cmF0aW9uVHlwZT4NCi0gICAgPFVzZU9mTWZjPmZhbHNlPC9Vc2VPZk1mYz4NCi0gICAgPENoYXJhY3RlclNldD5NdWx0aUJ5dGU8L0NoYXJhY3RlclNldD4NCi0gIDwvUHJvcGVydHlHcm91cD4NCi0gIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxNaWNyb3NvZnQuQ3BwLnByb3BzIiAvPg0KLSAgPEltcG9ydEdyb3VwIExhYmVsPSJFeHRlbnNpb25TZXR0aW5ncyI+DQotICA8L0ltcG9ydEdyb3VwPg0KLSAgPEltcG9ydEdyb3VwIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIiBMYWJlbD0iUHJvcGVydHlTaGVldHMiPg0KLSAgICA8SW1wb3J0IFByb2plY3Q9IiQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcyIgQ29uZGl0aW9uPSJleGlzdHMoJyQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcycpIiBMYWJlbD0iTG9jYWxBcHBEYXRhUGxhdGZvcm0iIC8+DQotICAgIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKU1pY3Jvc29mdC5DUFAuVXBncmFkZUZyb21WQzYwLnByb3BzIiAvPg0KLSAgPC9JbXBvcnRHcm91cD4NCi0gIDxJbXBvcnRHcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIiBMYWJlbD0iUHJvcGVydHlTaGVldHMiPg0KLSAgICA8SW1wb3J0IFByb2plY3Q9IiQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcyIgQ29uZGl0aW9uPSJleGlzdHMoJyQoVXNlclJvb3REaXIpXE1pY3Jvc29mdC5DcHAuJChQbGF0Zm9ybSkudXNlci5wcm9wcycpIiBMYWJlbD0iTG9jYWxBcHBEYXRhUGxhdGZvcm0iIC8+DQotICAgIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKU1pY3Jvc29mdC5DUFAuVXBncmFkZUZyb21WQzYwLnByb3BzIiAvPg0KLSAgPC9JbXBvcnRHcm91cD4NCi0gIDxQcm9wZXJ0eUdyb3VwIExhYmVsPSJVc2VyTWFjcm9zIiAvPg0KLSAgPFByb3BlcnR5R3JvdXA+DQotICAgIDxfUHJvamVjdEZpbGVWZXJzaW9uPjEwLjAuMzAzMTkuMTwvX1Byb2plY3RGaWxlVmVyc2lvbj4NCi0gICAgPEluY2x1ZGVQYXRoIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4kKEluY2x1ZGVQYXRoKTwvSW5jbHVkZVBhdGg+DQotICAgIDxMaWJyYXJ5UGF0aCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+JChMaWJyYXJ5UGF0aCk8L0xpYnJhcnlQYXRoPg0KLSAgICA8SW5jbHVkZVBhdGggQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+JChJbmNsdWRlUGF0aCk8L0luY2x1ZGVQYXRoPg0KLSAgICA8TGlicmFyeVBhdGggQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+JChMaWJyYXJ5UGF0aCk8L0xpYnJhcnlQYXRoPg0KLSAgICA8SW50RGlyIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4kKFNvbHV0aW9uRGlyKSQoQ29uZmlndXJhdGlvbikkKFByb2plY3ROYW1lKVw8L0ludERpcj4NCi0gICAgPE91dERpciBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+JChTb2x1dGlvbkRpcikkKENvbmZpZ3VyYXRpb24pJChQcm9qZWN0TmFtZSlcPC9PdXREaXI+DQotICAgIDxPdXREaXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+JChTb2x1dGlvbkRpcikkKENvbmZpZ3VyYXRpb24pJChQcm9qZWN0TmFtZSlcPC9PdXREaXI+DQotICAgIDxJbnREaXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+JChTb2x1dGlvbkRpcikkKENvbmZpZ3VyYXRpb24pJChQcm9qZWN0TmFtZSlcPC9JbnREaXI+DQotICA8L1Byb3BlcnR5R3JvdXA+DQotICA8SXRlbURlZmluaXRpb25Hcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj4NCi0gICAgPENsQ29tcGlsZT4NCi0gICAgICA8T3B0aW1pemF0aW9uPk1heFNwZWVkPC9PcHRpbWl6YXRpb24+DQotICAgICAgPElubGluZUZ1bmN0aW9uRXhwYW5zaW9uPk9ubHlFeHBsaWNpdElubGluZTwvSW5saW5lRnVuY3Rpb25FeHBhbnNpb24+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zPldJTjMyO05ERUJVRztfTElCOyUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgICA8U3RyaW5nUG9vbGluZz50cnVlPC9TdHJpbmdQb29saW5nPg0KLSAgICAgIDxSdW50aW1lTGlicmFyeT5NdWx0aVRocmVhZGVkPC9SdW50aW1lTGlicmFyeT4NCi0gICAgICA8RnVuY3Rpb25MZXZlbExpbmtpbmc+dHJ1ZTwvRnVuY3Rpb25MZXZlbExpbmtpbmc+DQotICAgICAgPFdhcm5pbmdMZXZlbD5MZXZlbDM8L1dhcm5pbmdMZXZlbD4NCi0gICAgICA8U3VwcHJlc3NTdGFydHVwQmFubmVyPnRydWU8L1N1cHByZXNzU3RhcnR1cEJhbm5lcj4NCi0gICAgPC9DbENvbXBpbGU+DQotICAgIDxSZXNvdXJjZUNvbXBpbGU+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zPk5ERUJVRzslKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgICAgPEN1bHR1cmU+MHgwNDA3PC9DdWx0dXJlPg0KLSAgICA8L1Jlc291cmNlQ29tcGlsZT4NCi0gICAgPExpYj4NCi0gICAgICA8U3VwcHJlc3NTdGFydHVwQmFubmVyPnRydWU8L1N1cHByZXNzU3RhcnR1cEJhbm5lcj4NCi0gICAgPC9MaWI+DQotICAgIDxCc2NtYWtlPg0KLSAgICAgIDxTdXBwcmVzc1N0YXJ0dXBCYW5uZXI+dHJ1ZTwvU3VwcHJlc3NTdGFydHVwQmFubmVyPg0KLSAgICA8L0JzY21ha2U+DQotICA8L0l0ZW1EZWZpbml0aW9uR3JvdXA+DQotICA8SXRlbURlZmluaXRpb25Hcm91cCBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+DQotICAgIDxDbENvbXBpbGU+DQotICAgICAgPE9wdGltaXphdGlvbj5EaXNhYmxlZDwvT3B0aW1pemF0aW9uPg0KLSAgICAgIDxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz5XSU4zMjtfREVCVUc7X0xJQjslKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgICAgPE1pbmltYWxSZWJ1aWxkPnRydWU8L01pbmltYWxSZWJ1aWxkPg0KLSAgICAgIDxCYXNpY1J1bnRpbWVDaGVja3M+RW5hYmxlRmFzdENoZWNrczwvQmFzaWNSdW50aW1lQ2hlY2tzPg0KLSAgICAgIDxSdW50aW1lTGlicmFyeT5NdWx0aVRocmVhZGVkRGVidWc8L1J1bnRpbWVMaWJyYXJ5Pg0KLSAgICAgIDxCcm93c2VJbmZvcm1hdGlvbj50cnVlPC9Ccm93c2VJbmZvcm1hdGlvbj4NCi0gICAgICA8V2FybmluZ0xldmVsPkxldmVsNDwvV2FybmluZ0xldmVsPg0KLSAgICAgIDxTdXBwcmVzc1N0YXJ0dXBCYW5uZXI+dHJ1ZTwvU3VwcHJlc3NTdGFydHVwQmFubmVyPg0KLSAgICAgIDxEZWJ1Z0luZm9ybWF0aW9uRm9ybWF0PkVkaXRBbmRDb250aW51ZTwvRGVidWdJbmZvcm1hdGlvbkZvcm1hdD4NCi0gICAgPC9DbENvbXBpbGU+DQotICAgIDxSZXNvdXJjZUNvbXBpbGU+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zPl9ERUJVRzslKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgICAgPEN1bHR1cmU+MHgwNDA3PC9DdWx0dXJlPg0KLSAgICA8L1Jlc291cmNlQ29tcGlsZT4NCi0gICAgPExpYj4NCi0gICAgICA8U3VwcHJlc3NTdGFydHVwQmFubmVyPnRydWU8L1N1cHByZXNzU3RhcnR1cEJhbm5lcj4NCi0gICAgPC9MaWI+DQotICAgIDxCc2NtYWtlPg0KLSAgICAgIDxTdXBwcmVzc1N0YXJ0dXBCYW5uZXI+dHJ1ZTwvU3VwcHJlc3NTdGFydHVwQmFubmVyPg0KLSAgICA8L0JzY21ha2U+DQotICA8L0l0ZW1EZWZpbml0aW9uR3JvdXA+DQotICA8SXRlbUdyb3VwPg0KLSAgICA8Q2xDb21waWxlIEluY2x1ZGU9InRpbnlzdHIuY3BwIj4NCi0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPiUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwkKFBsYXRmb3JtKSc9PSdSZWxlYXNlfFdpbjMyJyI+JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1ByZXByb2Nlc3NvckRlZmluaXRpb25zPg0KLSAgICA8L0NsQ29tcGlsZT4NCi0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSJ0aW55eG1sLmNwcCI+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4lKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPiUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgPC9DbENvbXBpbGU+DQotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0idGlueXhtbGVycm9yLmNwcCI+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzInIj4lKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFzZXxXaW4zMiciPiUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4NCi0gICAgPC9DbENvbXBpbGU+DQotICAgIDxDbENvbXBpbGUgSW5jbHVkZT0idGlueXhtbHBhcnNlci5jcHAiPg0KLSAgICAgIDxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J0RlYnVnfFdpbjMyJyI+JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1ByZXByb2Nlc3NvckRlZmluaXRpb25zPg0KLSAgICAgIDxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyBDb25kaXRpb249IickKENvbmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj4lKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+DQotICAgIDwvQ2xDb21waWxlPg0KLSAgPC9JdGVtR3JvdXA+DQotICA8SXRlbUdyb3VwPg0KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9InRpbnlzdHIuaCIgLz4NCi0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSJ0aW55eG1sLmgiIC8+DQotICA8L0l0ZW1Hcm91cD4NCi0gIDxJdGVtR3JvdXA+DQotICAgIDxOb25lIEluY2x1ZGU9ImNoYW5nZXMudHh0IiAvPg0KLSAgICA8Tm9uZSBJbmNsdWRlPSJyZWFkbWUudHh0IiAvPg0KLSAgICA8Tm9uZSBJbmNsdWRlPSJ0dXRvcmlhbF9nZXR0aW5nU3RhcnRlZC50eHQiIC8+DQotICA8L0l0ZW1Hcm91cD4NCi0gIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxNaWNyb3NvZnQuQ3BwLnRhcmdldHMiIC8+DQotICA8SW1wb3J0R3JvdXAgTGFiZWw9IkV4dGVuc2lvblRhcmdldHMiPg0KLSAgPC9JbXBvcnRHcm91cD4NCi08L1Byb2plY3Q+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvdGlueXhtbGVycm9yLmNwcCBiL3Rpbnl4bWxlcnJvci5jcHAKaW5kZXggNTM4YzIxZC4uNTc4ODQzOCAxMDA2NDQKLS0tIGEvdGlueXhtbGVycm9yLmNwcAorKysgYi90aW55eG1sZXJyb3IuY3BwCkBAIC0xLDYgKzEsNiBAQAogLyoKIHd3dy5zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvdGlueXhtbAotT3JpZ2luYWwgY29kZSAoMi4wIGFuZCBlYXJsaWVyICljb3B5cmlnaHQgKGMpIDIwMDAtMjAwNiBMZWUgVGhvbWFzb24gKHd3dy5ncmlubmluZ2xpemFyZC5jb20pCitPcmlnaW5hbCBjb2RlICgyLjAgYW5kIGVhcmxpZXIgKWNvcHlyaWdodCAoYykgMjAwMC0yMDAyIExlZSBUaG9tYXNvbiAod3d3LmdyaW5uaW5nbGl6YXJkLmNvbSkKIAogVGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCAnYXMtaXMnLCB3aXRob3V0IGFueSBleHByZXNzIG9yIGltcGxpZWQgCiB3YXJyYW50eS4gSW4gbm8gZXZlbnQgd2lsbCB0aGUgYXV0aG9ycyBiZSBoZWxkIGxpYWJsZSBmb3IgYW55IApAQCAtMzEsMTEgKzMxLDEyIEBACiAvLyBJdCBhbHNvIGNsZWFucyB1cCB0aGUgY29kZSBhIGJpdC4KIC8vCiAKLWNvbnN0IGNoYXIqIFRpWG1sQmFzZTo6ZXJyb3JTdHJpbmdbIFRpWG1sQmFzZTo6VElYTUxfRVJST1JfU1RSSU5HX0NPVU5UIF0gPQorY29uc3QgY2hhciogVGlYbWxCYXNlOjplcnJvclN0cmluZ1sgVElYTUxfRVJST1JfU1RSSU5HX0NPVU5UIF0gPQogewogCSJObyBlcnJvciIsCiAJIkVycm9yIiwKIAkiRmFpbGVkIHRvIG9wZW4gZmlsZSIsCisJIk1lbW9yeSBhbGxvY2F0aW9uIGZhaWxlZC4iLAogCSJFcnJvciBwYXJzaW5nIEVsZW1lbnQuIiwKIAkiRmFpbGVkIHRvIHJlYWQgRWxlbWVudCBuYW1lIiwKIAkiRXJyb3IgcmVhZGluZyBFbGVtZW50IHZhbHVlLiIsCkBAIC00OCw1ICs0OSw0IEBACiAJIkVycm9yIGRvY3VtZW50IGVtcHR5LiIsCiAJIkVycm9yIG51bGwgKDApIG9yIHVuZXhwZWN0ZWQgRU9GIGZvdW5kIGluIGlucHV0IHN0cmVhbS4iLAogCSJFcnJvciBwYXJzaW5nIENEQVRBLiIsCi0JIkVycm9yIHdoZW4gVGlYbWxEb2N1bWVudCBhZGRlZCB0byBkb2N1bWVudCwgYmVjYXVzZSBUaVhtbERvY3VtZW50IGNhbiBvbmx5IGJlIGF0IHRoZSByb290LiIsCiB9OwpkaWZmIC0tZ2l0IGEvdGlueXhtbHBhcnNlci5jcHAgYi90aW55eG1scGFyc2VyLmNwcAppbmRleCA4MWI3ZWFlLi42N2QwYTllIDEwMDY0NAotLS0gYS90aW55eG1scGFyc2VyLmNwcAorKysgYi90aW55eG1scGFyc2VyLmNwcApAQCAtMSw2ICsxLDYgQEAKIC8qCiB3d3cuc291cmNlZm9yZ2UubmV0L3Byb2plY3RzL3Rpbnl4bWwKLU9yaWdpbmFsIGNvZGUgYnkgTGVlIFRob21hc29uICh3d3cuZ3Jpbm5pbmdsaXphcmQuY29tKQorT3JpZ2luYWwgY29kZSAoMi4wIGFuZCBlYXJsaWVyICljb3B5cmlnaHQgKGMpIDIwMDAtMjAwMiBMZWUgVGhvbWFzb24gKHd3dy5ncmlubmluZ2xpemFyZC5jb20pCiAKIFRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgJ2FzLWlzJywgd2l0aG91dCBhbnkgZXhwcmVzcyBvciBpbXBsaWVkIAogd2FycmFudHkuIEluIG5vIGV2ZW50IHdpbGwgdGhlIGF1dGhvcnMgYmUgaGVsZCBsaWFibGUgZm9yIGFueSAKQEAgLTIyLDI1ICsyMiwxNiBAQAogZGlzdHJpYnV0aW9uLgogKi8KIAorI2luY2x1ZGUgInRpbnl4bWwuaCIKICNpbmNsdWRlIDxjdHlwZS5oPgogI2luY2x1ZGUgPHN0ZGRlZi5oPgogCi0jaW5jbHVkZSAidGlueXhtbC5oIgotCiAvLyNkZWZpbmUgREVCVUdfUEFSU0VSCi0jaWYgZGVmaW5lZCggREVCVUdfUEFSU0VSICkKLSMJaWYgZGVmaW5lZCggREVCVUcgKSAmJiBkZWZpbmVkKCBfTVNDX1ZFUiApCi0jCQlpbmNsdWRlIDx3aW5kb3dzLmg+Ci0jCQlkZWZpbmUgVElYTUxfTE9HIE91dHB1dERlYnVnU3RyaW5nCi0jCWVsc2UKLSMJCWRlZmluZSBUSVhNTF9MT0cgcHJpbnRmCi0jCWVuZGlmCi0jZW5kaWYKIAogLy8gTm90ZSB0aGEgIlB1dFN0cmluZyIgaGFyZGNvZGVzIHRoZSBzYW1lIGxpc3QuIFRoaXMKIC8vIGlzIGxlc3MgZmxleGlibGUgdGhhbiBpdCBhcHBlYXJzLiBDaGFuZ2luZyB0aGUgZW50cmllcwogLy8gb3Igb3JkZXIgd2lsbCBicmVhayBwdXRzdHJpbmcuCQotVGlYbWxCYXNlOjpFbnRpdHkgVGlYbWxCYXNlOjplbnRpdHlbIFRpWG1sQmFzZTo6TlVNX0VOVElUWSBdID0gCitUaVhtbEJhc2U6OkVudGl0eSBUaVhtbEJhc2U6OmVudGl0eVsgTlVNX0VOVElUWSBdID0gCiB7CiAJeyAiJmFtcDsiLCAgNSwgJyYnIH0sCiAJeyAiJmx0OyIsICAgNCwgJzwnIH0sCkBAIC0xNzQsNyArMTY1LDcgQEAKICAgcHVibGljOgogCXZvaWQgU3RhbXAoIGNvbnN0IGNoYXIqIG5vdywgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApOwogCi0JY29uc3QgVGlYbWxDdXJzb3ImIEN1cnNvcigpIGNvbnN0CXsgcmV0dXJuIGN1cnNvcjsgfQorCWNvbnN0IFRpWG1sQ3Vyc29yJiBDdXJzb3IoKQl7IHJldHVybiBjdXJzb3I7IH0KIAogICBwcml2YXRlOgogCS8vIE9ubHkgdXNlZCBieSB0aGUgZG9jdW1lbnQhCkBAIC0yODYsNyArMjc3LDcgQEAKIAkJCQlpZiAoIGVuY29kaW5nID09IFRJWE1MX0VOQ09ESU5HX1VURjggKQogCQkJCXsKIAkJCQkJLy8gRWF0IHRoZSAxIHRvIDQgYnl0ZSB1dGY4IGNoYXJhY3Rlci4KLQkJCQkJaW50IHN0ZXAgPSBUaVhtbEJhc2U6OnV0ZjhCeXRlVGFibGVbKigoY29uc3QgdW5zaWduZWQgY2hhciopcCldOworCQkJCQlpbnQgc3RlcCA9IFRpWG1sQmFzZTo6dXRmOEJ5dGVUYWJsZVsqKCh1bnNpZ25lZCBjaGFyKilwKV07CiAJCQkJCWlmICggc3RlcCA9PSAwICkKIAkJCQkJCXN0ZXAgPSAxOwkJLy8gRXJyb3IgY2FzZSBmcm9tIGJhZCBlbmNvZGluZywgYnV0IGhhbmRsZSBncmFjZWZ1bGx5LgogCQkJCQlwICs9IHN0ZXA7CkBAIC0zNDYsNyArMzM3LDcgQEAKIAkJCQljb250aW51ZTsKIAkJCX0KIAotCQkJaWYgKCBJc1doaXRlU3BhY2UoICpwICkgKQkJLy8gU3RpbGwgdXNpbmcgb2xkIHJ1bGVzIGZvciB3aGl0ZSBzcGFjZS4KKwkJCWlmICggSXNXaGl0ZVNwYWNlKCAqcCApIHx8ICpwID09ICdcbicgfHwgKnAgPT0nXHInICkJCS8vIFN0aWxsIHVzaW5nIG9sZCBydWxlcyBmb3Igd2hpdGUgc3BhY2UuCiAJCQkJKytwOwogCQkJZWxzZQogCQkJCWJyZWFrOwpAQCAtMzU0LDcgKzM0NSw3IEBACiAJfQogCWVsc2UKIAl7Ci0JCXdoaWxlICggKnAgJiYgSXNXaGl0ZVNwYWNlKCAqcCApICkKKwkJd2hpbGUgKCAqcCAmJiBJc1doaXRlU3BhY2UoICpwICkgfHwgKnAgPT0gJ1xuJyB8fCAqcCA9PSdccicgKQogCQkJKytwOwogCX0KIApAQCAtMzYyLDcgKzM1Myw3IEBACiB9CiAKICNpZmRlZiBUSVhNTF9VU0VfU1RMCi0vKnN0YXRpYyovIGJvb2wgVGlYbWxCYXNlOjpTdHJlYW1XaGl0ZVNwYWNlKCBzdGQ6OmlzdHJlYW0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICkKKy8qc3RhdGljKi8gYm9vbCBUaVhtbEJhc2U6OlN0cmVhbVdoaXRlU3BhY2UoIFRJWE1MX0lTVFJFQU0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICkKIHsKIAlmb3IoIDs7ICkKIAl7CkBAIC0zNzcsNyArMzY4LDcgQEAKIAl9CiB9CiAKLS8qc3RhdGljKi8gYm9vbCBUaVhtbEJhc2U6OlN0cmVhbVRvKCBzdGQ6OmlzdHJlYW0gKiBpbiwgaW50IGNoYXJhY3RlciwgVElYTUxfU1RSSU5HICogdGFnICkKKy8qc3RhdGljKi8gYm9vbCBUaVhtbEJhc2U6OlN0cmVhbVRvKCBUSVhNTF9JU1RSRUFNICogaW4sIGludCBjaGFyYWN0ZXIsIFRJWE1MX1NUUklORyAqIHRhZyApCiB7CiAJLy9hc3NlcnQoIGNoYXJhY3RlciA+IDAgJiYgY2hhcmFjdGVyIDwgMTI4ICk7CS8vIGVsc2UgaXQgd29uJ3Qgd29yayBpbiB1dGYtOAogCXdoaWxlICggaW4tPmdvb2QoKSApCkBAIC0zOTUsMTQgKzM4Niw4IEBACiB9CiAjZW5kaWYKIAotLy8gT25lIG9mIFRpbnlYTUwncyBtb3JlIHBlcmZvcm1hbmNlIGRlbWFuZGluZyBmdW5jdGlvbnMuIFRyeSB0byBrZWVwIHRoZSBtZW1vcnkgb3ZlcmhlYWQgZG93bi4gVGhlCi0vLyAiYXNzaWduIiBvcHRpbWl6YXRpb24gcmVtb3ZlcyBvdmVyIDEwJSBvZiB0aGUgZXhlY3V0aW9uIHRpbWUuCi0vLwogY29uc3QgY2hhciogVGlYbWxCYXNlOjpSZWFkTmFtZSggY29uc3QgY2hhciogcCwgVElYTUxfU1RSSU5HICogbmFtZSwgVGlYbWxFbmNvZGluZyBlbmNvZGluZyApCiB7Ci0JLy8gT2RkbHksIG5vdCBzdXBwb3J0ZWQgb24gc29tZSBjb21pbGVycywKLQkvL25hbWUtPmNsZWFyKCk7Ci0JLy8gU28gdXNlIHRoaXM6CiAJKm5hbWUgPSAiIjsKIAlhc3NlcnQoIHAgKTsKIApAQCAtNDE2LDcgKzQwMSw2IEBACiAJaWYgKCAgICBwICYmICpwIAogCQkgJiYgKCBJc0FscGhhKCAodW5zaWduZWQgY2hhcikgKnAsIGVuY29kaW5nICkgfHwgKnAgPT0gJ18nICkgKQogCXsKLQkJY29uc3QgY2hhciogc3RhcnQgPSBwOwogCQl3aGlsZSgJCXAgJiYgKnAKIAkJCQkmJgkoCQlJc0FscGhhTnVtKCAodW5zaWduZWQgY2hhciApICpwLCBlbmNvZGluZyApIAogCQkJCQkJIHx8ICpwID09ICdfJwpAQCAtNDI0LDEyICs0MDgsOSBAQAogCQkJCQkJIHx8ICpwID09ICcuJwogCQkJCQkJIHx8ICpwID09ICc6JyApICkKIAkJewotCQkJLy8oKm5hbWUpICs9ICpwOyAvLyBleHBlbnNpdmUKKwkJCSgqbmFtZSkgKz0gKnA7CiAJCQkrK3A7CiAJCX0KLQkJaWYgKCBwLXN0YXJ0ID4gMCApIHsKLQkJCW5hbWUtPmFzc2lnbiggc3RhcnQsIHAtc3RhcnQgKTsKLQkJfQogCQlyZXR1cm4gcDsKIAl9CiAJcmV0dXJuIDA7CkBAIC01MjUsOCArNTA2LDYgQEAKIAogCS8vIFNvIGl0IHdhc24ndCBhbiBlbnRpdHksIGl0cyB1bnJlY29nbml6ZWQsIG9yIHNvbWV0aGluZyBsaWtlIHRoYXQuCiAJKnZhbHVlID0gKnA7CS8vIERvbid0IHB1dCBiYWNrIHRoZSBsYXN0IG9uZSwgc2luY2Ugd2UgcmV0dXJuIGl0IQotCS8vKmxlbmd0aCA9IDE7CS8vIExlYXZlIHVucmVjb2duaXplZCBlbnRpdGllcyAtIHRoaXMgZG9lc24ndCByZWFsbHkgd29yay4KLQkJCQkJLy8gSnVzdCB3cml0ZXMgc3RyYW5nZSBYTUwuCiAJcmV0dXJuIHArMTsKIH0KIApAQCAtNjMxLDE0ICs2MTAsMTIgQEAKIAkJCX0KIAkJfQogCX0KLQlpZiAoIHAgJiYgKnAgKQotCQlwICs9IHN0cmxlbiggZW5kVGFnICk7Ci0JcmV0dXJuICggcCAmJiAqcCApID8gcCA6IDA7CisJcmV0dXJuIHAgKyBzdHJsZW4oIGVuZFRhZyApOwogfQogCiAjaWZkZWYgVElYTUxfVVNFX1NUTAogCi12b2lkIFRpWG1sRG9jdW1lbnQ6OlN0cmVhbUluKCBzdGQ6OmlzdHJlYW0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICkKK3ZvaWQgVGlYbWxEb2N1bWVudDo6U3RyZWFtSW4oIFRJWE1MX0lTVFJFQU0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICkKIHsKIAkvLyBUaGUgYmFzaWMgaXNzdWUgd2l0aCBhIGRvY3VtZW50IGlzIHRoYXQgd2UgZG9uJ3Qga25vdyB3aGF0IHdlJ3JlCiAJLy8gc3RyZWFtaW5nLiBSZWFkIHNvbWV0aGluZyBwcmVzdW1lZCB0byBiZSBhIHRhZyAoYW5kIGhvcGUpLCB0aGVuCkBAIC04MjUsNiArODAyLDcgQEAKIAkJcmV0dXJuIDA7CiAJfQogCisJVGlYbWxEb2N1bWVudCogZG9jID0gR2V0RG9jdW1lbnQoKTsKIAlwID0gU2tpcFdoaXRlU3BhY2UoIHAsIGVuY29kaW5nICk7CiAKIAlpZiAoICFwIHx8ICEqcCApCkBAIC04OTUsMTIgKzg3MywxNyBAQAogCQkvLyBTZXQgdGhlIHBhcmVudCwgc28gaXQgY2FuIHJlcG9ydCBlcnJvcnMKIAkJcmV0dXJuTm9kZS0+cGFyZW50ID0gdGhpczsKIAl9CisJZWxzZQorCXsKKwkJaWYgKCBkb2MgKQorCQkJZG9jLT5TZXRFcnJvciggVElYTUxfRVJST1JfT1VUX09GX01FTU9SWSwgMCwgMCwgVElYTUxfRU5DT0RJTkdfVU5LTk9XTiApOworCX0KIAlyZXR1cm4gcmV0dXJuTm9kZTsKIH0KIAogI2lmZGVmIFRJWE1MX1VTRV9TVEwKIAotdm9pZCBUaVhtbEVsZW1lbnQ6OlN0cmVhbUluIChzdGQ6OmlzdHJlYW0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnKQordm9pZCBUaVhtbEVsZW1lbnQ6OlN0cmVhbUluIChUSVhNTF9JU1RSRUFNICogaW4sIFRJWE1MX1NUUklORyAqIHRhZykKIHsKIAkvLyBXZSdyZSBjYWxsZWQgd2l0aCBzb21lIGFtb3VudCBvZiBwcmUtcGFyc2luZy4gVGhhdCBpcywgc29tZSBvZiAidGhpcyIKIAkvLyBlbGVtZW50IGlzIGluICJ0YWciLiBHbyBhaGVhZCBhbmQgc3RyZWFtIHRvIHRoZSBjbG9zaW5nICI+IgpAQCAtOTM1LDcgKzkxOCw2IEBACiAJewogCQkvLyBUaGVyZSBpcyBtb3JlLiBDb3VsZCBiZToKIAkJLy8JCXRleHQKLQkJLy8JCWNkYXRhIHRleHQgKHdoaWNoIGxvb2tzIGxpa2UgYW5vdGhlciBub2RlKQogCQkvLwkJY2xvc2luZyB0YWcKIAkJLy8JCWFub3RoZXIgbm9kZS4KIAkJZm9yICggOzsgKQpAQCAtOTgzLDE3ICs5NjUsNiBAQAogCQkJCSp0YWcgKz0gKGNoYXIpIGM7CiAJCQkJaW4tPmdldCgpOwogCi0JCQkJLy8gRWFybHkgb3V0IGlmIHdlIGZpbmQgdGhlIENEQVRBIGlkLgotCQkJCWlmICggYyA9PSAnWycgJiYgdGFnLT5zaXplKCkgPj0gOSApCi0JCQkJewotCQkJCQlzaXplX3QgbGVuID0gdGFnLT5zaXplKCk7Ci0JCQkJCWNvbnN0IGNoYXIqIHN0YXJ0ID0gdGFnLT5jX3N0cigpICsgbGVuIC0gOTsKLQkJCQkJaWYgKCBzdHJjbXAoIHN0YXJ0LCAiPCFbQ0RBVEFbIiApID09IDAgKSB7Ci0JCQkJCQlhc3NlcnQoICFjbG9zaW5nVGFnICk7Ci0JCQkJCQlicmVhazsKLQkJCQkJfQotCQkJCX0KLQogCQkJCWlmICggIWZpcnN0Q2hhckZvdW5kICYmIGMgIT0gJzwnICYmICFJc1doaXRlU3BhY2UoIGMgKSApCiAJCQkJewogCQkJCQlmaXJzdENoYXJGb3VuZCA9IHRydWU7CkBAIC0xMDc3LDYgKzEwNDgsNyBAQAogCiAgICAgVElYTUxfU1RSSU5HIGVuZFRhZyAoIjwvIik7CiAJZW5kVGFnICs9IHZhbHVlOworCWVuZFRhZyArPSAiPiI7CiAKIAkvLyBDaGVjayBmb3IgYW5kIHJlYWQgYXR0cmlidXRlcy4gQWxzbyBsb29rIGZvciBhbiBlbXB0eQogCS8vIHRhZyBvciBhbiBlbmQgdGFnLgpAQCAtMTEwNywyOCArMTA3OSwxNCBAQAogCQkJLy8gZWxlbWVudHMgLS0gcmVhZCB0aGUgZW5kIHRhZywgYW5kIHJldHVybi4KIAkJCSsrcDsKIAkJCXAgPSBSZWFkVmFsdWUoIHAsIGRhdGEsIGVuY29kaW5nICk7CQkvLyBOb3RlIHRoaXMgaXMgYW4gRWxlbWVudCBtZXRob2QsIGFuZCB3aWxsIHNldCB0aGUgZXJyb3IgaWYgb25lIGhhcHBlbnMuCi0JCQlpZiAoICFwIHx8ICEqcCApIHsKLQkJCQkvLyBXZSB3ZXJlIGxvb2tpbmcgZm9yIHRoZSBlbmQgdGFnLCBidXQgZm91bmQgbm90aGluZy4KLQkJCQkvLyBGaXggZm9yIFsgMTY2Mzc1OCBdIEZhaWx1cmUgdG8gcmVwb3J0IGVycm9yIG9uIGJhZCBYTUwKLQkJCQlpZiAoIGRvY3VtZW50ICkgZG9jdW1lbnQtPlNldEVycm9yKCBUSVhNTF9FUlJPUl9SRUFESU5HX0VORF9UQUcsIHAsIGRhdGEsIGVuY29kaW5nICk7CisJCQlpZiAoICFwIHx8ICEqcCApCiAJCQkJcmV0dXJuIDA7Ci0JCQl9CiAKIAkJCS8vIFdlIHNob3VsZCBmaW5kIHRoZSBlbmQgdGFnIG5vdwotCQkJLy8gbm90ZSB0aGF0OgotCQkJLy8gPC9mb28gPiBhbmQKLQkJCS8vIDwvZm9vPiAKLQkJCS8vIGFyZSBib3RoIHZhbGlkIGVuZCB0YWdzLgogCQkJaWYgKCBTdHJpbmdFcXVhbCggcCwgZW5kVGFnLmNfc3RyKCksIGZhbHNlLCBlbmNvZGluZyApICkKIAkJCXsKIAkJCQlwICs9IGVuZFRhZy5sZW5ndGgoKTsKLQkJCQlwID0gU2tpcFdoaXRlU3BhY2UoIHAsIGVuY29kaW5nICk7Ci0JCQkJaWYgKCBwICYmICpwICYmICpwID09ICc+JyApIHsKLQkJCQkJKytwOwotCQkJCQlyZXR1cm4gcDsKLQkJCQl9Ci0JCQkJaWYgKCBkb2N1bWVudCApIGRvY3VtZW50LT5TZXRFcnJvciggVElYTUxfRVJST1JfUkVBRElOR19FTkRfVEFHLCBwLCBkYXRhLCBlbmNvZGluZyApOwotCQkJCXJldHVybiAwOworCQkJCXJldHVybiBwOwogCQkJfQogCQkJZWxzZQogCQkJewpAQCAtMTE0MiwxMSArMTEwMCwxMiBAQAogCQkJVGlYbWxBdHRyaWJ1dGUqIGF0dHJpYiA9IG5ldyBUaVhtbEF0dHJpYnV0ZSgpOwogCQkJaWYgKCAhYXR0cmliICkKIAkJCXsKKwkJCQlpZiAoIGRvY3VtZW50ICkgZG9jdW1lbnQtPlNldEVycm9yKCBUSVhNTF9FUlJPUl9PVVRfT0ZfTUVNT1JZLCBwRXJyLCBkYXRhLCBlbmNvZGluZyApOwogCQkJCXJldHVybiAwOwogCQkJfQogCiAJCQlhdHRyaWItPlNldERvY3VtZW50KCBkb2N1bWVudCApOwotCQkJcEVyciA9IHA7CisJCQljb25zdCBjaGFyKiBwRXJyID0gcDsKIAkJCXAgPSBhdHRyaWItPlBhcnNlKCBwLCBkYXRhLCBlbmNvZGluZyApOwogCiAJCQlpZiAoICFwIHx8ICEqcCApCkBAIC0xMTU3LDE0ICsxMTE2LDEwIEBACiAJCQl9CiAKIAkJCS8vIEhhbmRsZSB0aGUgc3RyYW5nZSBjYXNlIG9mIGRvdWJsZSBhdHRyaWJ1dGVzOgotCQkJI2lmZGVmIFRJWE1MX1VTRV9TVEwKLQkJCVRpWG1sQXR0cmlidXRlKiBub2RlID0gYXR0cmlidXRlU2V0LkZpbmQoIGF0dHJpYi0+TmFtZVRTdHIoKSApOwotCQkJI2Vsc2UKIAkJCVRpWG1sQXR0cmlidXRlKiBub2RlID0gYXR0cmlidXRlU2V0LkZpbmQoIGF0dHJpYi0+TmFtZSgpICk7Ci0JCQkjZW5kaWYKIAkJCWlmICggbm9kZSApCiAJCQl7Ci0JCQkJaWYgKCBkb2N1bWVudCApIGRvY3VtZW50LT5TZXRFcnJvciggVElYTUxfRVJST1JfUEFSU0lOR19FTEVNRU5ULCBwRXJyLCBkYXRhLCBlbmNvZGluZyApOworCQkJCW5vZGUtPlNldFZhbHVlKCBhdHRyaWItPlZhbHVlKCkgKTsKIAkJCQlkZWxldGUgYXR0cmliOwogCQkJCXJldHVybiAwOwogCQkJfQpAQCAtMTE5Myw3ICsxMTQ4LDggQEAKIAogCQkJaWYgKCAhdGV4dE5vZGUgKQogCQkJewotCQkJICAgIHJldHVybiAwOworCQkJCWlmICggZG9jdW1lbnQgKSBkb2N1bWVudC0+U2V0RXJyb3IoIFRJWE1MX0VSUk9SX09VVF9PRl9NRU1PUlksIDAsIDAsIGVuY29kaW5nICk7CisJCQkJICAgIHJldHVybiAwOwogCQkJfQogCiAJCQlpZiAoIFRpWG1sQmFzZTo6SXNXaGl0ZVNwYWNlQ29uZGVuc2VkKCkgKQpAQCAtMTI0OCw3ICsxMjA0LDcgQEAKIAogCiAjaWZkZWYgVElYTUxfVVNFX1NUTAotdm9pZCBUaVhtbFVua25vd246OlN0cmVhbUluKCBzdGQ6OmlzdHJlYW0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICkKK3ZvaWQgVGlYbWxVbmtub3duOjpTdHJlYW1JbiggVElYTUxfSVNUUkVBTSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKQogewogCXdoaWxlICggaW4tPmdvb2QoKSApCiAJewpAQCAtMTI5OCwxNiArMTI1NCwxNSBAQAogCiAJaWYgKCAhcCApCiAJewotCQlpZiAoIGRvY3VtZW50ICkJCi0JCQlkb2N1bWVudC0+U2V0RXJyb3IoIFRJWE1MX0VSUk9SX1BBUlNJTkdfVU5LTk9XTiwgMCwgMCwgZW5jb2RpbmcgKTsKKwkJaWYgKCBkb2N1bWVudCApCWRvY3VtZW50LT5TZXRFcnJvciggVElYTUxfRVJST1JfUEFSU0lOR19VTktOT1dOLCAwLCAwLCBlbmNvZGluZyApOwogCX0KLQlpZiAoIHAgJiYgKnAgPT0gJz4nICkKKwlpZiAoICpwID09ICc+JyApCiAJCXJldHVybiBwKzE7CiAJcmV0dXJuIHA7CiB9CiAKICNpZmRlZiBUSVhNTF9VU0VfU1RMCi12b2lkIFRpWG1sQ29tbWVudDo6U3RyZWFtSW4oIHN0ZDo6aXN0cmVhbSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKQordm9pZCBUaVhtbENvbW1lbnQ6OlN0cmVhbUluKCBUSVhNTF9JU1RSRUFNICogaW4sIFRJWE1MX1NUUklORyAqIHRhZyApCiB7CiAJd2hpbGUgKCBpbi0+Z29vZCgpICkKIAl7CkBAIC0xMzUxLDQwICsxMzA2LDExIEBACiAKIAlpZiAoICFTdHJpbmdFcXVhbCggcCwgc3RhcnRUYWcsIGZhbHNlLCBlbmNvZGluZyApICkKIAl7Ci0JCWlmICggZG9jdW1lbnQgKQotCQkJZG9jdW1lbnQtPlNldEVycm9yKCBUSVhNTF9FUlJPUl9QQVJTSU5HX0NPTU1FTlQsIHAsIGRhdGEsIGVuY29kaW5nICk7CisJCWRvY3VtZW50LT5TZXRFcnJvciggVElYTUxfRVJST1JfUEFSU0lOR19DT01NRU5ULCBwLCBkYXRhLCBlbmNvZGluZyApOwogCQlyZXR1cm4gMDsKIAl9CiAJcCArPSBzdHJsZW4oIHN0YXJ0VGFnICk7Ci0KLQkvLyBbIDE0NzUyMDEgXSBUaW55WE1MIHBhcnNlcyBlbnRpdGllcyBpbiBjb21tZW50cwotCS8vIE9vcHMgLSBSZWFkVGV4dCBkb2Vzbid0IHdvcmssIGJlY2F1c2Ugd2UgZG9uJ3Qgd2FudCB0byBwYXJzZSB0aGUgZW50aXRpZXMuCi0JLy8gcCA9IFJlYWRUZXh0KCBwLCAmdmFsdWUsIGZhbHNlLCBlbmRUYWcsIGZhbHNlLCBlbmNvZGluZyApOwotCS8vCi0JLy8gZnJvbSB0aGUgWE1MIHNwZWM6Ci0JLyoKLQkgW0RlZmluaXRpb246IENvbW1lbnRzIG1heSBhcHBlYXIgYW55d2hlcmUgaW4gYSBkb2N1bWVudCBvdXRzaWRlIG90aGVyIG1hcmt1cDsgaW4gYWRkaXRpb24sIAotCSAgICAgICAgICAgICAgdGhleSBtYXkgYXBwZWFyIHdpdGhpbiB0aGUgZG9jdW1lbnQgdHlwZSBkZWNsYXJhdGlvbiBhdCBwbGFjZXMgYWxsb3dlZCBieSB0aGUgZ3JhbW1hci4gCi0JCQkJICBUaGV5IGFyZSBub3QgcGFydCBvZiB0aGUgZG9jdW1lbnQncyBjaGFyYWN0ZXIgZGF0YTsgYW4gWE1MIHByb2Nlc3NvciBNQVksIGJ1dCBuZWVkIG5vdCwgCi0JCQkJICBtYWtlIGl0IHBvc3NpYmxlIGZvciBhbiBhcHBsaWNhdGlvbiB0byByZXRyaWV2ZSB0aGUgdGV4dCBvZiBjb21tZW50cy4gRm9yIGNvbXBhdGliaWxpdHksIAotCQkJCSAgdGhlIHN0cmluZyAiLS0iIChkb3VibGUtaHlwaGVuKSBNVVNUIE5PVCBvY2N1ciB3aXRoaW4gY29tbWVudHMuXSBQYXJhbWV0ZXIgZW50aXR5IAotCQkJCSAgcmVmZXJlbmNlcyBNVVNUIE5PVCBiZSByZWNvZ25pemVkIHdpdGhpbiBjb21tZW50cy4KLQotCQkJCSAgQW4gZXhhbXBsZSBvZiBhIGNvbW1lbnQ6Ci0KLQkJCQkgIDwhLS0gZGVjbGFyYXRpb25zIGZvciA8aGVhZD4gJiA8Ym9keT4gLS0+Ci0JKi8KLQotICAgIHZhbHVlID0gIiI7Ci0JLy8gS2VlcCBhbGwgdGhlIHdoaXRlIHNwYWNlLgotCXdoaWxlICgJcCAmJiAqcCAmJiAhU3RyaW5nRXF1YWwoIHAsIGVuZFRhZywgZmFsc2UsIGVuY29kaW5nICkgKQotCXsKLQkJdmFsdWUuYXBwZW5kKCBwLCAxICk7Ci0JCSsrcDsKLQl9Ci0JaWYgKCBwICYmICpwICkgCi0JCXAgKz0gc3RybGVuKCBlbmRUYWcgKTsKLQorCXAgPSBSZWFkVGV4dCggcCwgJnZhbHVlLCBmYWxzZSwgZW5kVGFnLCBmYWxzZSwgZW5jb2RpbmcgKTsKIAlyZXR1cm4gcDsKIH0KIApAQCAtMTM5NCw2ICsxMzIwLDEwIEBACiAJcCA9IFNraXBXaGl0ZVNwYWNlKCBwLCBlbmNvZGluZyApOwogCWlmICggIXAgfHwgISpwICkgcmV0dXJuIDA7CiAKKwlpbnQgdGFic2l6ZSA9IDQ7CisJaWYgKCBkb2N1bWVudCApCisJCXRhYnNpemUgPSBkb2N1bWVudC0+VGFiU2l6ZSgpOworCiAJaWYgKCBkYXRhICkKIAl7CiAJCWRhdGEtPlN0YW1wKCBwLCBlbmNvZGluZyApOwpAQCAtMTQyMywxOSArMTM1MywxNyBAQAogCX0KIAkKIAljb25zdCBjaGFyKiBlbmQ7Ci0JY29uc3QgY2hhciBTSU5HTEVfUVVPVEUgPSAnXCcnOwotCWNvbnN0IGNoYXIgRE9VQkxFX1FVT1RFID0gJ1wiJzsKIAotCWlmICggKnAgPT0gU0lOR0xFX1FVT1RFICkKKwlpZiAoICpwID09ICdcJycgKQogCXsKIAkJKytwOwotCQllbmQgPSAiXCciOwkJLy8gc2luZ2xlIHF1b3RlIGluIHN0cmluZworCQllbmQgPSAiXCciOwogCQlwID0gUmVhZFRleHQoIHAsICZ2YWx1ZSwgZmFsc2UsIGVuZCwgZmFsc2UsIGVuY29kaW5nICk7CiAJfQotCWVsc2UgaWYgKCAqcCA9PSBET1VCTEVfUVVPVEUgKQorCWVsc2UgaWYgKCAqcCA9PSAnIicgKQogCXsKIAkJKytwOwotCQllbmQgPSAiXCIiOwkJLy8gZG91YmxlIHF1b3RlIGluIHN0cmluZworCQllbmQgPSAiXCIiOwogCQlwID0gUmVhZFRleHQoIHAsICZ2YWx1ZSwgZmFsc2UsIGVuZCwgZmFsc2UsIGVuY29kaW5nICk7CiAJfQogCWVsc2UKQEAgLTE0NDQsMTcgKzEzNzIsMTAgQEAKIAkJLy8gQnV0IHRoaXMgaXMgc3VjaCBhIGNvbW1vbiBlcnJvciB0aGF0IHRoZSBwYXJzZXIgd2lsbCB0cnkKIAkJLy8gaXRzIGJlc3QsIGV2ZW4gd2l0aG91dCB0aGVtLgogCQl2YWx1ZSA9ICIiOwotCQl3aGlsZSAoICAgIHAgJiYgKnAJCQkJCQkJCQkJCS8vIGV4aXN0ZW5jZQotCQkJCSYmICFJc1doaXRlU3BhY2UoICpwICkJCQkJCQkJCS8vIHdoaXRlc3BhY2UKLQkJCQkmJiAqcCAhPSAnLycgJiYgKnAgIT0gJz4nICkJCQkJCQkJLy8gdGFnIGVuZAorCQl3aGlsZSAoICAgIHAgJiYgKnAJCQkJCQkJCQkJLy8gZXhpc3RlbmNlCisJCQkJJiYgIUlzV2hpdGVTcGFjZSggKnAgKSAmJiAqcCAhPSAnXG4nICYmICpwICE9ICdccicJLy8gd2hpdGVzcGFjZQorCQkJCSYmICpwICE9ICcvJyAmJiAqcCAhPSAnPicgKQkJCQkJCS8vIHRhZyBlbmQKIAkJewotCQkJaWYgKCAqcCA9PSBTSU5HTEVfUVVPVEUgfHwgKnAgPT0gRE9VQkxFX1FVT1RFICkgewotCQkJCS8vIFsgMTQ1MTY0OSBdIEF0dHJpYnV0ZSB2YWx1ZXMgd2l0aCB0cmFpbGluZyBxdW90ZXMgbm90IGhhbmRsZWQgY29ycmVjdGx5Ci0JCQkJLy8gV2UgZGlkIG5vdCBoYXZlIGFuIG9wZW5pbmcgcXVvdGUgYnV0IHNlZW0gdG8gaGF2ZSBhIAotCQkJCS8vIGNsb3Npbmcgb25lLiBHaXZlIHVwIGFuZCB0aHJvdyBhbiBlcnJvci4KLQkJCQlpZiAoIGRvY3VtZW50ICkgZG9jdW1lbnQtPlNldEVycm9yKCBUSVhNTF9FUlJPUl9SRUFESU5HX0FUVFJJQlVURVMsIHAsIGRhdGEsIGVuY29kaW5nICk7Ci0JCQkJcmV0dXJuIDA7Ci0JCQl9CiAJCQl2YWx1ZSArPSAqcDsKIAkJCSsrcDsKIAkJfQpAQCAtMTQ2MywxNSArMTM4NCwxMSBAQAogfQogCiAjaWZkZWYgVElYTUxfVVNFX1NUTAotdm9pZCBUaVhtbFRleHQ6OlN0cmVhbUluKCBzdGQ6OmlzdHJlYW0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICkKK3ZvaWQgVGlYbWxUZXh0OjpTdHJlYW1JbiggVElYTUxfSVNUUkVBTSAqIGluLCBUSVhNTF9TVFJJTkcgKiB0YWcgKQogewotCXdoaWxlICggaW4tPmdvb2QoKSApCisJaWYgKCBjZGF0YSApCiAJewotCQlpbnQgYyA9IGluLT5wZWVrKCk7CQotCQlpZiAoICFjZGF0YSAmJiAoYyA9PSAnPCcgKSApIAotCQl7Ci0JCQlyZXR1cm47Ci0JCX0KKwkJaW50IGMgPSBpbi0+Z2V0KCk7CQogCQlpZiAoIGMgPD0gMCApCiAJCXsKIAkJCVRpWG1sRG9jdW1lbnQqIGRvY3VtZW50ID0gR2V0RG9jdW1lbnQoKTsKQEAgLTE0ODEsMTUgKzEzOTgsMzMgQEAKIAkJfQogCiAJCSgqdGFnKSArPSAoY2hhcikgYzsKLQkJaW4tPmdldCgpOwkvLyAiY29tbWl0cyIgdGhlIHBlZWsgbWFkZSBhYm92ZQogCi0JCWlmICggY2RhdGEgJiYgYyA9PSAnPicgJiYgdGFnLT5zaXplKCkgPj0gMyApIHsKLQkJCXNpemVfdCBsZW4gPSB0YWctPnNpemUoKTsKLQkJCWlmICggKCp0YWcpW2xlbi0yXSA9PSAnXScgJiYgKCp0YWcpW2xlbi0zXSA9PSAnXScgKSB7Ci0JCQkJLy8gdGVybWluYXRvciBvZiBjZGF0YS4KKwkJaWYgKCBjID09ICc+JyAKKwkJCSAmJiB0YWctPmF0KCB0YWctPmxlbmd0aCgpIC0gMiApID09ICddJworCQkJICYmIHRhZy0+YXQoIHRhZy0+bGVuZ3RoKCkgLSAzICkgPT0gJ10nICkKKwkJeworCQkJLy8gQWxsIGlzIHdlbGwuCisJCQlyZXR1cm47CQkKKwkJfQorCX0KKwllbHNlCisJeworCQl3aGlsZSAoIGluLT5nb29kKCkgKQorCQl7CisJCQlpbnQgYyA9IGluLT5wZWVrKCk7CQorCQkJaWYgKCBjID09ICc8JyApCisJCQkJcmV0dXJuOworCQkJaWYgKCBjIDw9IDAgKQorCQkJeworCQkJCVRpWG1sRG9jdW1lbnQqIGRvY3VtZW50ID0gR2V0RG9jdW1lbnQoKTsKKwkJCQlpZiAoIGRvY3VtZW50ICkKKwkJCQkJZG9jdW1lbnQtPlNldEVycm9yKCBUSVhNTF9FUlJPUl9FTUJFRERFRF9OVUxMLCAwLCAwLCBUSVhNTF9FTkNPRElOR19VTktOT1dOICk7CiAJCQkJcmV0dXJuOwogCQkJfQotCQl9ICAgIAorCisJCQkoKnRhZykgKz0gKGNoYXIpIGM7CisJCQlpbi0+Z2V0KCk7CisJCX0KIAl9CiB9CiAjZW5kaWYKQEAgLTE1MTQsOCArMTQ0OSw3IEBACiAKIAkJaWYgKCAhU3RyaW5nRXF1YWwoIHAsIHN0YXJ0VGFnLCBmYWxzZSwgZW5jb2RpbmcgKSApCiAJCXsKLQkJCWlmICggZG9jdW1lbnQgKQotCQkJCWRvY3VtZW50LT5TZXRFcnJvciggVElYTUxfRVJST1JfUEFSU0lOR19DREFUQSwgcCwgZGF0YSwgZW5jb2RpbmcgKTsKKwkJCWRvY3VtZW50LT5TZXRFcnJvciggVElYTUxfRVJST1JfUEFSU0lOR19DREFUQSwgcCwgZGF0YSwgZW5jb2RpbmcgKTsKIAkJCXJldHVybiAwOwogCQl9CiAJCXAgKz0gc3RybGVuKCBzdGFydFRhZyApOwpAQCAtMTUzOSwxNCArMTQ3MywxNCBAQAogCiAJCWNvbnN0IGNoYXIqIGVuZCA9ICI8IjsKIAkJcCA9IFJlYWRUZXh0KCBwLCAmdmFsdWUsIGlnbm9yZVdoaXRlLCBlbmQsIGZhbHNlLCBlbmNvZGluZyApOwotCQlpZiAoIHAgJiYgKnAgKQorCQlpZiAoIHAgKQogCQkJcmV0dXJuIHAtMTsJLy8gZG9uJ3QgdHJ1bmNhdGUgdGhlICc8JwogCQlyZXR1cm4gMDsKIAl9CiB9CiAKICNpZmRlZiBUSVhNTF9VU0VfU1RMCi12b2lkIFRpWG1sRGVjbGFyYXRpb246OlN0cmVhbUluKCBzdGQ6OmlzdHJlYW0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICkKK3ZvaWQgVGlYbWxEZWNsYXJhdGlvbjo6U3RyZWFtSW4oIFRJWE1MX0lTVFJFQU0gKiBpbiwgVElYTUxfU1RSSU5HICogdGFnICkKIHsKIAl3aGlsZSAoIGluLT5nb29kKCkgKQogCXsKZGlmZiAtLWdpdCBhL3V0Zjh0ZXN0LnhtbCBiL3V0Zjh0ZXN0LnhtbAppbmRleCA0ZmQ3MWNlLi5hYmZiYzZmIDEwMDY0NAotLS0gYS91dGY4dGVzdC54bWwKKysrIGIvdXRmOHRlc3QueG1sCkBAIC0yLDcgKzIsNyBAQAogPGRvY3VtZW50PgogICAgIDxFbmdsaXNoIG5hbWU9Im5hbWUiIHZhbHVlPSJ2YWx1ZSI+VGhlIHdvcmxkIGhhcyBtYW55IGxhbmd1YWdlczwvRW5nbGlzaD4KICAgICA8UnVzc2lhbiBuYW1lPSLQvdCw0LfQstCw0L3QuNC1KNC40LzRjykiIHZhbHVlPSLRhtC10L3QvdC+0YHRgtGMIj7QnNC40YAg0LjQvNC10LXRgiDQvNC90L7Qs9C+INGP0LfRi9C60L7QsjwvUnVzc2lhbj4KLSAgICA8U3BhbmlzaCBuYW1lPSJlbCBub21icmUiIHZhbHVlPSJlbCB2YWxvciI+ZWwgbXVuZG8gdGllbmUgbXVjaG9zIGlkaW9tYXM8L1NwYW5pc2g+CisgICAgPFNwYW5pc2ggbmFtZT0ibm9tYnJlIiB2YWx1ZT0idmFsb3IiPkVsIG11bmRvIHRpZW5lIG11Y2hvcyBpZGlvbWFzPC9TcGFuaXNoPgogICAgIDxTaW1wbGlmaWVkQ2hpbmVzZSBuYW1lPSLlkI3lrZciIHZhbHVlPSLku7flgLwiPuS4lueVjOacieW+iOWkmuivreiogDwvU2ltcGxpZmllZENoaW5lc2U+CiAgICAgPNCg0YPRgdGB0LrQuNC5INC90LDQt9Cy0LDQvdC40LU9Im5hbWUiINGG0LXQvdC90L7RgdGC0Yw9InZhbHVlIj4mbHQ70LjQvNC10LXRgiZndDs8L9Cg0YPRgdGB0LrQuNC5PgogICAgIDzmsYnor60g5ZCN5a2XPSJuYW1lIiDku7flgLw9InZhbHVlIj7kuJbnlYzmnInlvojlpJror63oqIA8L+axieivrT4KZGlmZiAtLWdpdCBhL3V0Zjh0ZXN0dmVyaWZ5LnhtbCBiL3V0Zjh0ZXN0dmVyaWZ5LnhtbAppbmRleCA5MWEzMTlkLi5lMTAwZTI0IDEwMDY0NAotLS0gYS91dGY4dGVzdHZlcmlmeS54bWwKKysrIGIvdXRmOHRlc3R2ZXJpZnkueG1sCkBAIC0yLDcgKzIsNyBAQAogPGRvY3VtZW50PgogICAgIDxFbmdsaXNoIG5hbWU9Im5hbWUiIHZhbHVlPSJ2YWx1ZSI+VGhlIHdvcmxkIGhhcyBtYW55IGxhbmd1YWdlczwvRW5nbGlzaD4KICAgICA8UnVzc2lhbiBuYW1lPSLQvdCw0LfQstCw0L3QuNC1KNC40LzRjykiIHZhbHVlPSLRhtC10L3QvdC+0YHRgtGMIj7QnNC40YAg0LjQvNC10LXRgiDQvNC90L7Qs9C+INGP0LfRi9C60L7QsjwvUnVzc2lhbj4KLSAgICA8U3BhbmlzaCBuYW1lPSJlbCBub21icmUiIHZhbHVlPSJlbCB2YWxvciI+ZWwgbXVuZG8gdGllbmUgbXVjaG9zIGlkaW9tYXM8L1NwYW5pc2g+CisgICAgPFNwYW5pc2ggbmFtZT0ibm9tYnJlIiB2YWx1ZT0idmFsb3IiPkVsIG11bmRvIHRpZW5lIG11Y2hvcyBpZGlvbWFzPC9TcGFuaXNoPgogICAgIDxTaW1wbGlmaWVkQ2hpbmVzZSBuYW1lPSLlkI3lrZciIHZhbHVlPSLku7flgLwiPuS4lueVjOacieW+iOWkmuivreiogDwvU2ltcGxpZmllZENoaW5lc2U+CiAgICAgPNCg0YPRgdGB0LrQuNC5INC90LDQt9Cy0LDQvdC40LU9Im5hbWUiINGG0LXQvdC90L7RgdGC0Yw9InZhbHVlIj4mbHQ70LjQvNC10LXRgiZndDs8L9Cg0YPRgdGB0LrQuNC5PgogICAgIDzmsYnor60g5ZCN5a2XPSJuYW1lIiDku7flgLw9InZhbHVlIj7kuJbnlYzmnInlvojlpJror63oqIA8L+axieivrT4KZGlmZiAtLWdpdCBhL3htbHRlc3QuY3BwIGIveG1sdGVzdC5jcHAKaW5kZXggNjYzYzE1Ny4uOGFhMzUwZSAxMDA2NDQKLS0tIGEveG1sdGVzdC5jcHAKKysrIGIveG1sdGVzdC5jcHAKQEAgLTMsNiArMyw4IEBACiAqLwogCiAKKyNpbmNsdWRlICJ0aW55eG1sLmgiCisKICNpZmRlZiBUSVhNTF9VU0VfU1RMCiAJI2luY2x1ZGUgPGlvc3RyZWFtPgogCSNpbmNsdWRlIDxzc3RyZWFtPgpAQCAtMTIsMjIgKzE0LDE5IEBACiAjZW5kaWYKIAogI2lmIGRlZmluZWQoIFdJTjMyICkgJiYgZGVmaW5lZCggVFVORSApCi0JI2luY2x1ZGUgPGNydGRiZy5oPgotCV9DcnRNZW1TdGF0ZSBzdGFydE1lbVN0YXRlOwotCV9DcnRNZW1TdGF0ZSBlbmRNZW1TdGF0ZTsKKwkjaW5jbHVkZSA8d2luZG93cy5oPgorCS8vIEFwb2xvZ2llcyB0byBub24td2luZG93cyB1c2VycyEgQnV0IEkgbmVlZCBzb21lIGdvb2QgdGltZXJzIGZvcgorCS8vIHByb2ZpbGluZywgYW5kIHRoZXNlIGFyZSB2ZXJ5IHBsYXRmb3JtIHNwZWNpZmljLgorCV9faW50NjQgc3RhcnQ7CisJX19pbnQ2NCBlbmQ7CisJX19pbnQ2NCBmcmVxOwogI2VuZGlmCiAKLSNpbmNsdWRlICJ0aW55eG1sLmgiCi0KLWJvb2wgWG1sVGVzdCAoY29uc3QgY2hhciogdGVzdFN0cmluZywgY29uc3QgY2hhciogZXhwZWN0ZWQsIGNvbnN0IGNoYXIqIGZvdW5kLCBib29sIG5vRWNobyA9IGZhbHNlKTsKLWJvb2wgWG1sVGVzdCggY29uc3QgY2hhciogdGVzdFN0cmluZywgaW50IGV4cGVjdGVkLCBpbnQgZm91bmQsIGJvb2wgbm9FY2hvID0gZmFsc2UgKTsKLQogc3RhdGljIGludCBnUGFzcyA9IDA7CiBzdGF0aWMgaW50IGdGYWlsID0gMDsKIAogCi0KLWJvb2wgWG1sVGVzdCAoY29uc3QgY2hhciogdGVzdFN0cmluZywgY29uc3QgY2hhciogZXhwZWN0ZWQsIGNvbnN0IGNoYXIqIGZvdW5kLCBib29sIG5vRWNobyApCitib29sIFhtbFRlc3QgKGNvbnN0IGNoYXIqIHRlc3RTdHJpbmcsIGNvbnN0IGNoYXIqIGV4cGVjdGVkLCBjb25zdCBjaGFyKiBmb3VuZCwgYm9vbCBub0VjaG8gPSBmYWxzZSkKIHsKIAlib29sIHBhc3MgPSAhc3RyY21wKCBleHBlY3RlZCwgZm91bmQgKTsKIAlpZiAoIHBhc3MgKQpAQCAtNDgsNyArNDcsNyBAQAogfQogCiAKLWJvb2wgWG1sVGVzdCggY29uc3QgY2hhciogdGVzdFN0cmluZywgaW50IGV4cGVjdGVkLCBpbnQgZm91bmQsIGJvb2wgbm9FY2hvICkKK2Jvb2wgWG1sVGVzdCggY29uc3QgY2hhciogdGVzdFN0cmluZywgaW50IGV4cGVjdGVkLCBpbnQgZm91bmQsIGJvb2wgbm9FY2hvID0gZmFsc2UgKQogewogCWJvb2wgcGFzcyA9ICggZXhwZWN0ZWQgPT0gZm91bmQgKTsKIAlpZiAoIHBhc3MgKQpAQCAtNjksMTcgKzY4LDYgQEAKIH0KIAogCi12b2lkIE51bGxMaW5lRW5kaW5ncyggY2hhciogcCApCi17Ci0Jd2hpbGUoIHAgJiYgKnAgKSB7Ci0JCWlmICggKnAgPT0gJ1xuJyB8fCAqcCA9PSAnXHInICkgewotCQkJKnAgPSAwOwotCQkJcmV0dXJuOwotCQl9Ci0JCSsrcDsKLQl9Ci19Ci0KIC8vCiAvLyBUaGlzIGZpbGUgZGVtb25zdHJhdGVzIHNvbWUgYmFzaWMgZnVuY3Rpb25hbGl0eSBvZiBUaW55WG1sLgogLy8gTm90ZSB0aGF0IHRoZSBleGFtcGxlIGlzIHZlcnkgY29udHJpdmVkLiBJdCBwcmVzdW1lcyB5b3Uga25vdwpAQCAtODksNyArNzcsNiBAQAogCiBpbnQgbWFpbigpCiB7Ci0KIAkvLwogCS8vIFdlIHN0YXJ0IHdpdGggdGhlICdkZW1vU3RhcnQnIHRvZG8gbGlzdC4gUHJvY2VzcyBpdC4gQW5kCiAJLy8gc2hvdWxkIGhvcGVmdWxseSBlbmQgdXAgd2l0aCB0aGUgdG9kbyBsaXN0IGFzIGlsbHVzdHJhdGVkLgpAQCAtMTAzLDM5MyArOTAsMjc0IEBACiAJCSI8SXRlbSBwcmlvcml0eT1cIjJcIiBkaXN0YW5jZT0nbm9uZSc+IERvIGJpbGxzICAgPC9JdGVtPiIKIAkJIjxJdGVtIHByaW9yaXR5PVwiMlwiIGRpc3RhbmNlPSdmYXIgJmFtcDsgYmFjayc+IExvb2sgZm9yIEV2aWwgRGlub3NhdXJzISA8L0l0ZW0+IgogCQkiPC9Ub0RvPiI7Ci0JCQorCisjaWZkZWYgVElYTUxfVVNFX1NUTAorCS8qCVdoYXQgdGhlIHRvZG8gbGlzdCBzaG91bGQgbG9vayBsaWtlIGFmdGVyIHByb2Nlc3NpbmcuCisJCUluIHN0cmVhbSAobm8gZm9ybWF0dGluZykgcmVwcmVzZW50YXRpb24uICovCisJY29uc3QgY2hhciogZGVtb0VuZCA9CisJCSI8P3htbCB2ZXJzaW9uPVwiMS4wXCIgc3RhbmRhbG9uZT1cIm5vXCIgPz4iCisJCSI8IS0tIE91ciB0byBkbyBsaXN0IGRhdGEgLS0+IgorCQkiPFRvRG8+IgorCQkiPCEtLSBEbyBJIG5lZWQgYSBzZWN1cmUgUERBPyAtLT4iCisJCSI8SXRlbSBwcmlvcml0eT1cIjJcIiBkaXN0YW5jZT1cImNsb3NlXCI+R28gdG8gdGhlIgorCQkiPGJvbGQ+VG95IHN0b3JlISIKKwkJIjwvYm9sZD4iCisJCSI8L0l0ZW0+IgorCQkiPEl0ZW0gcHJpb3JpdHk9XCIxXCIgZGlzdGFuY2U9XCJmYXJcIj5UYWxrIHRvOiIKKwkJIjxNZWV0aW5nIHdoZXJlPVwiU2Nob29sXCI+IgorCQkiPEF0dGVuZGVlIG5hbWU9XCJNYXJwbGVcIiBwb3NpdGlvbj1cInRlYWNoZXJcIiAvPiIKKwkJIjxBdHRlbmRlZSBuYW1lPVwiVm9lbFwiIHBvc2l0aW9uPVwiY291bnNlbG9yXCIgLz4iCisJCSI8L01lZXRpbmc+IgorCQkiPE1lZXRpbmcgd2hlcmU9XCJMdW5jaFwiIC8+IgorCQkiPC9JdGVtPiIKKwkJIjxJdGVtIHByaW9yaXR5PVwiMlwiIGRpc3RhbmNlPVwiaGVyZVwiPkRvIGJpbGxzIgorCQkiPC9JdGVtPiIKKwkJIjwvVG9Ebz4iOworI2VuZGlmCisKKwkvLyBUaGUgZXhhbXBsZSBwYXJzZXMgZnJvbSB0aGUgY2hhcmFjdGVyIHN0cmluZyAoYWJvdmUpOgorCSNpZiBkZWZpbmVkKCBXSU4zMiApICYmIGRlZmluZWQoIFRVTkUgKQorCVF1ZXJ5UGVyZm9ybWFuY2VDb3VudGVyKCAoTEFSR0VfSU5URUdFUiopICgmc3RhcnQpICk7CisJI2VuZGlmCQorCiAJewotCi0JI2lmZGVmIFRJWE1MX1VTRV9TVEwKLQkJLy8JV2hhdCB0aGUgdG9kbyBsaXN0IHNob3VsZCBsb29rIGxpa2UgYWZ0ZXIgcHJvY2Vzc2luZy4KLQkJLy8gSW4gc3RyZWFtIChubyBmb3JtYXR0aW5nKSByZXByZXNlbnRhdGlvbi4KLQkJY29uc3QgY2hhciogZGVtb0VuZCA9Ci0JCQkiPD94bWwgdmVyc2lvbj1cIjEuMFwiIHN0YW5kYWxvbmU9XCJub1wiID8+IgotCQkJIjwhLS0gT3VyIHRvIGRvIGxpc3QgZGF0YSAtLT4iCi0JCQkiPFRvRG8+IgotCQkJIjwhLS0gRG8gSSBuZWVkIGEgc2VjdXJlIFBEQT8gLS0+IgotCQkJIjxJdGVtIHByaW9yaXR5PVwiMlwiIGRpc3RhbmNlPVwiY2xvc2VcIj5HbyB0byB0aGUiCi0JCQkiPGJvbGQ+VG95IHN0b3JlISIKLQkJCSI8L2JvbGQ+IgotCQkJIjwvSXRlbT4iCi0JCQkiPEl0ZW0gcHJpb3JpdHk9XCIxXCIgZGlzdGFuY2U9XCJmYXJcIj5UYWxrIHRvOiIKLQkJCSI8TWVldGluZyB3aGVyZT1cIlNjaG9vbFwiPiIKLQkJCSI8QXR0ZW5kZWUgbmFtZT1cIk1hcnBsZVwiIHBvc2l0aW9uPVwidGVhY2hlclwiIC8+IgotCQkJIjxBdHRlbmRlZSBuYW1lPVwiVm9lbFwiIHBvc2l0aW9uPVwiY291bnNlbG9yXCIgLz4iCi0JCQkiPC9NZWV0aW5nPiIKLQkJCSI8TWVldGluZyB3aGVyZT1cIkx1bmNoXCIgLz4iCi0JCQkiPC9JdGVtPiIKLQkJCSI8SXRlbSBwcmlvcml0eT1cIjJcIiBkaXN0YW5jZT1cImhlcmVcIj5EbyBiaWxscyIKLQkJCSI8L0l0ZW0+IgotCQkJIjwvVG9Ebz4iOwotCSNlbmRpZgotCi0JCS8vIFRoZSBleGFtcGxlIHBhcnNlcyBmcm9tIHRoZSBjaGFyYWN0ZXIgc3RyaW5nIChhYm92ZSk6Ci0JCSNpZiBkZWZpbmVkKCBXSU4zMiApICYmIGRlZmluZWQoIFRVTkUgKQotCQlfQ3J0TWVtQ2hlY2twb2ludCggJnN0YXJ0TWVtU3RhdGUgKTsKLQkJI2VuZGlmCQotCi0JCXsKLQkJCS8vIFdyaXRlIHRvIGEgZmlsZSBhbmQgcmVhZCBpdCBiYWNrLCB0byBjaGVjayBmaWxlIEkvTy4KLQotCQkJVGlYbWxEb2N1bWVudCBkb2MoICJkZW1vdGVzdC54bWwiICk7Ci0JCQlkb2MuUGFyc2UoIGRlbW9TdGFydCApOwotCi0JCQlpZiAoIGRvYy5FcnJvcigpICkKLQkJCXsKLQkJCQlwcmludGYoICJFcnJvciBpbiAlczogJXNcbiIsIGRvYy5WYWx1ZSgpLCBkb2MuRXJyb3JEZXNjKCkgKTsKLQkJCQlleGl0KCAxICk7Ci0JCQl9Ci0JCQlkb2MuU2F2ZUZpbGUoKTsKLQkJfQorCQkvLyBXcml0ZSB0byBhIGZpbGUgYW5kIHJlYWQgaXQgYmFjaywgdG8gY2hlY2sgZmlsZSBJL08uCiAKIAkJVGlYbWxEb2N1bWVudCBkb2MoICJkZW1vdGVzdC54bWwiICk7Ci0JCWJvb2wgbG9hZE9rYXkgPSBkb2MuTG9hZEZpbGUoKTsKKwkJZG9jLlBhcnNlKCBkZW1vU3RhcnQgKTsKIAotCQlpZiAoICFsb2FkT2theSApCisJCWlmICggZG9jLkVycm9yKCkgKQogCQl7Ci0JCQlwcmludGYoICJDb3VsZCBub3QgbG9hZCB0ZXN0IGZpbGUgJ2RlbW90ZXN0LnhtbCcuIEVycm9yPSclcycuIEV4aXRpbmcuXG4iLCBkb2MuRXJyb3JEZXNjKCkgKTsKKwkJCXByaW50ZiggIkVycm9yIGluICVzOiAlc1xuIiwgZG9jLlZhbHVlKCksIGRvYy5FcnJvckRlc2MoKSApOwogCQkJZXhpdCggMSApOwogCQl9Ci0KLQkJcHJpbnRmKCAiKiogRGVtbyBkb2MgcmVhZCBmcm9tIGRpc2s6ICoqIFxuXG4iICk7Ci0JCXByaW50ZiggIioqIFByaW50aW5nIHZpYSBkb2MuUHJpbnQgKipcbiIgKTsKLQkJZG9jLlByaW50KCBzdGRvdXQgKTsKLQotCQl7Ci0JCQlwcmludGYoICIqKiBQcmludGluZyB2aWEgVGlYbWxQcmludGVyICoqXG4iICk7Ci0JCQlUaVhtbFByaW50ZXIgcHJpbnRlcjsKLQkJCWRvYy5BY2NlcHQoICZwcmludGVyICk7Ci0JCQlmcHJpbnRmKCBzdGRvdXQsICIlcyIsIHByaW50ZXIuQ1N0cigpICk7Ci0JCX0KLQkJI2lmZGVmIFRJWE1MX1VTRV9TVEwJCi0JCXsKLQkJCXByaW50ZiggIioqIFByaW50aW5nIHZpYSBvcGVyYXRvcjw8ICoqXG4iICk7Ci0JCQlzdGQ6OmNvdXQgPDwgZG9jOwotCQl9Ci0JCSNlbmRpZgotCQlUaVhtbE5vZGUqIG5vZGUgPSAwOwotCQlUaVhtbEVsZW1lbnQqIHRvZG9FbGVtZW50ID0gMDsKLQkJVGlYbWxFbGVtZW50KiBpdGVtRWxlbWVudCA9IDA7Ci0KLQotCQkvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCQkvLyBBbiBleGFtcGxlIG9mIGNoYW5naW5nIGV4aXN0aW5nIGF0dHJpYnV0ZXMsIGFuZCByZW1vdmluZwotCQkvLyBhbiBlbGVtZW50IGZyb20gdGhlIGRvY3VtZW50LgotCQkvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotCi0JCS8vIEdldCB0aGUgIlRvRG8iIGVsZW1lbnQuCi0JCS8vIEl0IGlzIGEgY2hpbGQgb2YgdGhlIGRvY3VtZW50LCBhbmQgY2FuIGJlIHNlbGVjdGVkIGJ5IG5hbWUuCi0JCW5vZGUgPSBkb2MuRmlyc3RDaGlsZCggIlRvRG8iICk7Ci0JCWFzc2VydCggbm9kZSApOwotCQl0b2RvRWxlbWVudCA9IG5vZGUtPlRvRWxlbWVudCgpOwotCQlhc3NlcnQoIHRvZG9FbGVtZW50ICApOwotCi0JCS8vIEdvaW5nIHRvIHRoZSB0b3kgc3RvcmUgaXMgbm93IG91ciBzZWNvbmQgcHJpb3JpdHkuLi4KLQkJLy8gU28gc2V0IHRoZSAicHJpb3JpdHkiIGF0dHJpYnV0ZSBvZiB0aGUgZmlyc3QgaXRlbSBpbiB0aGUgbGlzdC4KLQkJbm9kZSA9IHRvZG9FbGVtZW50LT5GaXJzdENoaWxkRWxlbWVudCgpOwkvLyBUaGlzIHNraXBzIHRoZSAiUERBIiBjb21tZW50LgotCQlhc3NlcnQoIG5vZGUgKTsKLQkJaXRlbUVsZW1lbnQgPSBub2RlLT5Ub0VsZW1lbnQoKTsKLQkJYXNzZXJ0KCBpdGVtRWxlbWVudCAgKTsKLQkJaXRlbUVsZW1lbnQtPlNldEF0dHJpYnV0ZSggInByaW9yaXR5IiwgMiApOwotCi0JCS8vIENoYW5nZSB0aGUgZGlzdGFuY2UgdG8gImRvaW5nIGJpbGxzIiBmcm9tCi0JCS8vICJub25lIiB0byAiaGVyZSIuIEl0J3MgdGhlIG5leHQgc2libGluZyBlbGVtZW50LgotCQlpdGVtRWxlbWVudCA9IGl0ZW1FbGVtZW50LT5OZXh0U2libGluZ0VsZW1lbnQoKTsKLQkJYXNzZXJ0KCBpdGVtRWxlbWVudCApOwotCQlpdGVtRWxlbWVudC0+U2V0QXR0cmlidXRlKCAiZGlzdGFuY2UiLCAiaGVyZSIgKTsKLQotCQkvLyBSZW1vdmUgdGhlICJMb29rIGZvciBFdmlsIERpbm9zYXVycyEiIGl0ZW0uCi0JCS8vIEl0IGlzIDEgbW9yZSBzaWJsaW5nIGF3YXkuIFdlIGFzayB0aGUgcGFyZW50IHRvIHJlbW92ZQotCQkvLyBhIHBhcnRpY3VsYXIgY2hpbGQuCi0JCWl0ZW1FbGVtZW50ID0gaXRlbUVsZW1lbnQtPk5leHRTaWJsaW5nRWxlbWVudCgpOwotCQl0b2RvRWxlbWVudC0+UmVtb3ZlQ2hpbGQoIGl0ZW1FbGVtZW50ICk7Ci0KLQkJaXRlbUVsZW1lbnQgPSAwOwotCi0JCS8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0JCS8vIFdoYXQgZm9sbG93cyBpcyBhbiBleGFtcGxlIG9mIGNyZWF0ZWQgZWxlbWVudHMgYW5kIHRleHQKLQkJLy8gbm9kZXMgYW5kIGFkZGluZyB0aGVtIHRvIHRoZSBkb2N1bWVudC4KLQkJLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLQotCQkvLyBBZGQgc29tZSBtZWV0aW5ncy4KLQkJVGlYbWxFbGVtZW50IGl0ZW0oICJJdGVtIiApOwotCQlpdGVtLlNldEF0dHJpYnV0ZSggInByaW9yaXR5IiwgIjEiICk7Ci0JCWl0ZW0uU2V0QXR0cmlidXRlKCAiZGlzdGFuY2UiLCAiZmFyIiApOwotCi0JCVRpWG1sVGV4dCB0ZXh0KCAiVGFsayB0bzoiICk7Ci0KLQkJVGlYbWxFbGVtZW50IG1lZXRpbmcxKCAiTWVldGluZyIgKTsKLQkJbWVldGluZzEuU2V0QXR0cmlidXRlKCAid2hlcmUiLCAiU2Nob29sIiApOwotCi0JCVRpWG1sRWxlbWVudCBtZWV0aW5nMiggIk1lZXRpbmciICk7Ci0JCW1lZXRpbmcyLlNldEF0dHJpYnV0ZSggIndoZXJlIiwgIkx1bmNoIiApOwotCi0JCVRpWG1sRWxlbWVudCBhdHRlbmRlZTEoICJBdHRlbmRlZSIgKTsKLQkJYXR0ZW5kZWUxLlNldEF0dHJpYnV0ZSggIm5hbWUiLCAiTWFycGxlIiApOwotCQlhdHRlbmRlZTEuU2V0QXR0cmlidXRlKCAicG9zaXRpb24iLCAidGVhY2hlciIgKTsKLQotCQlUaVhtbEVsZW1lbnQgYXR0ZW5kZWUyKCAiQXR0ZW5kZWUiICk7Ci0JCWF0dGVuZGVlMi5TZXRBdHRyaWJ1dGUoICJuYW1lIiwgIlZvZWwiICk7Ci0JCWF0dGVuZGVlMi5TZXRBdHRyaWJ1dGUoICJwb3NpdGlvbiIsICJjb3Vuc2Vsb3IiICk7Ci0KLQkJLy8gQXNzZW1ibGUgdGhlIG5vZGVzIHdlJ3ZlIGNyZWF0ZWQ6Ci0JCW1lZXRpbmcxLkluc2VydEVuZENoaWxkKCBhdHRlbmRlZTEgKTsKLQkJbWVldGluZzEuSW5zZXJ0RW5kQ2hpbGQoIGF0dGVuZGVlMiApOwotCi0JCWl0ZW0uSW5zZXJ0RW5kQ2hpbGQoIHRleHQgKTsKLQkJaXRlbS5JbnNlcnRFbmRDaGlsZCggbWVldGluZzEgKTsKLQkJaXRlbS5JbnNlcnRFbmRDaGlsZCggbWVldGluZzIgKTsKLQotCQkvLyBBbmQgYWRkIHRoZSBub2RlIHRvIHRoZSBleGlzdGluZyBsaXN0IGFmdGVyIHRoZSBmaXJzdCBjaGlsZC4KLQkJbm9kZSA9IHRvZG9FbGVtZW50LT5GaXJzdENoaWxkKCAiSXRlbSIgKTsKLQkJYXNzZXJ0KCBub2RlICk7Ci0JCWl0ZW1FbGVtZW50ID0gbm9kZS0+VG9FbGVtZW50KCk7Ci0JCWFzc2VydCggaXRlbUVsZW1lbnQgKTsKLQotCQl0b2RvRWxlbWVudC0+SW5zZXJ0QWZ0ZXJDaGlsZCggaXRlbUVsZW1lbnQsIGl0ZW0gKTsKLQotCQlwcmludGYoICJcbioqIERlbW8gZG9jIHByb2Nlc3NlZDogKiogXG5cbiIgKTsKLQkJZG9jLlByaW50KCBzdGRvdXQgKTsKLQotCi0JI2lmZGVmIFRJWE1MX1VTRV9TVEwKLQkJcHJpbnRmKCAiKiogRGVtbyBkb2MgcHJvY2Vzc2VkIHRvIHN0cmVhbTogKiogXG5cbiIgKTsKLQkJY291dCA8PCBkb2MgPDwgZW5kbCA8PCBlbmRsOwotCSNlbmRpZgotCi0JCS8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0JCS8vIERpZmZlcmVudCB0ZXN0cy4uLmRvIHdlIGhhdmUgd2hhdCB3ZSBleHBlY3Q/Ci0JCS8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0KLQkJaW50IGNvdW50ID0gMDsKLQkJVGlYbWxFbGVtZW50KgllbGVtZW50OwotCi0JCS8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwotCi0JI2lmZGVmIFRJWE1MX1VTRV9TVEwKLQkJY291dCA8PCAiKiogQmFzaWMgc3RydWN0dXJlLiAqKlxuIjsKLQkJb3N0cmluZ3N0cmVhbSBvdXRwdXRTdHJlYW0oIG9zdHJpbmdzdHJlYW06Om91dCApOwotCQlvdXRwdXRTdHJlYW0gPDwgZG9jOwotCQlYbWxUZXN0KCAiT3V0cHV0IHN0cmVhbSBjb3JyZWN0LiIsCXN0cmluZyggZGVtb0VuZCApLmNfc3RyKCksCi0JCQkJCQkJCQkJCW91dHB1dFN0cmVhbS5zdHIoKS5jX3N0cigpLCB0cnVlICk7Ci0JI2VuZGlmCi0KLQkJbm9kZSA9IGRvYy5Sb290RWxlbWVudCgpOwotCQlhc3NlcnQoIG5vZGUgKTsKLQkJWG1sVGVzdCggIlJvb3QgZWxlbWVudCBleGlzdHMuIiwgdHJ1ZSwgKCBub2RlICE9IDAgJiYgbm9kZS0+VG9FbGVtZW50KCkgKSApOwotCQlYbWxUZXN0ICggIlJvb3QgZWxlbWVudCB2YWx1ZSBpcyAnVG9EbycuIiwgIlRvRG8iLCAgbm9kZS0+VmFsdWUoKSk7Ci0KLQkJbm9kZSA9IG5vZGUtPkZpcnN0Q2hpbGQoKTsKLQkJWG1sVGVzdCggIkZpcnN0IGNoaWxkIGV4aXN0cyAmIGlzIGEgY29tbWVudC4iLCB0cnVlLCAoIG5vZGUgIT0gMCAmJiBub2RlLT5Ub0NvbW1lbnQoKSApICk7Ci0JCW5vZGUgPSBub2RlLT5OZXh0U2libGluZygpOwotCQlYbWxUZXN0KCAiU2libGluZyBlbGVtZW50IGV4aXN0cyAmIGlzIGFuIGVsZW1lbnQuIiwgdHJ1ZSwgKCBub2RlICE9IDAgJiYgbm9kZS0+VG9FbGVtZW50KCkgKSApOwotCQlYbWxUZXN0ICggIlZhbHVlIGlzICdJdGVtJy4iLCAiSXRlbSIsIG5vZGUtPlZhbHVlKCkgKTsKLQotCQlub2RlID0gbm9kZS0+Rmlyc3RDaGlsZCgpOwotCQlYbWxUZXN0ICggIkZpcnN0IGNoaWxkIGV4aXN0cy4iLCB0cnVlLCAoIG5vZGUgIT0gMCAmJiBub2RlLT5Ub1RleHQoKSApICk7Ci0JCVhtbFRlc3QgKCAiVmFsdWUgaXMgJ0dvIHRvIHRoZScuIiwgIkdvIHRvIHRoZSIsIG5vZGUtPlZhbHVlKCkgKTsKLQotCi0JCS8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwotCQlwcmludGYgKCJcbioqIEl0ZXJhdG9ycy4gKipcbiIpOwotCi0JCS8vIFdhbGsgYWxsIHRoZSB0b3AgbGV2ZWwgbm9kZXMgb2YgdGhlIGRvY3VtZW50LgotCQljb3VudCA9IDA7Ci0JCWZvciggbm9kZSA9IGRvYy5GaXJzdENoaWxkKCk7Ci0JCQkgbm9kZTsKLQkJCSBub2RlID0gbm9kZS0+TmV4dFNpYmxpbmcoKSApCi0JCXsKLQkJCWNvdW50Kys7Ci0JCX0KLQkJWG1sVGVzdCggIlRvcCBsZXZlbCBub2RlcywgdXNpbmcgRmlyc3QgLyBOZXh0LiIsIDMsIGNvdW50ICk7Ci0KLQkJY291bnQgPSAwOwotCQlmb3IoIG5vZGUgPSBkb2MuTGFzdENoaWxkKCk7Ci0JCQkgbm9kZTsKLQkJCSBub2RlID0gbm9kZS0+UHJldmlvdXNTaWJsaW5nKCkgKQotCQl7Ci0JCQljb3VudCsrOwotCQl9Ci0JCVhtbFRlc3QoICJUb3AgbGV2ZWwgbm9kZXMsIHVzaW5nIExhc3QgLyBQcmV2aW91cy4iLCAzLCBjb3VudCApOwotCi0JCS8vIFdhbGsgYWxsIHRoZSB0b3AgbGV2ZWwgbm9kZXMgb2YgdGhlIGRvY3VtZW50LAotCQkvLyB1c2luZyBhIGRpZmZlcmVudCBzeW50YXguCi0JCWNvdW50ID0gMDsKLQkJZm9yKCBub2RlID0gZG9jLkl0ZXJhdGVDaGlsZHJlbiggMCApOwotCQkJIG5vZGU7Ci0JCQkgbm9kZSA9IGRvYy5JdGVyYXRlQ2hpbGRyZW4oIG5vZGUgKSApCi0JCXsKLQkJCWNvdW50Kys7Ci0JCX0KLQkJWG1sVGVzdCggIlRvcCBsZXZlbCBub2RlcywgdXNpbmcgSXRlcmF0ZUNoaWxkcmVuLiIsIDMsIGNvdW50ICk7Ci0KLQkJLy8gV2FsayBhbGwgdGhlIGVsZW1lbnRzIGluIGEgbm9kZS4KLQkJY291bnQgPSAwOwotCQlmb3IoIGVsZW1lbnQgPSB0b2RvRWxlbWVudC0+Rmlyc3RDaGlsZEVsZW1lbnQoKTsKLQkJCSBlbGVtZW50OwotCQkJIGVsZW1lbnQgPSBlbGVtZW50LT5OZXh0U2libGluZ0VsZW1lbnQoKSApCi0JCXsKLQkJCWNvdW50Kys7Ci0JCX0KLQkJWG1sVGVzdCggIkNoaWxkcmVuIG9mIHRoZSAnVG9EbycgZWxlbWVudCwgdXNpbmcgRmlyc3QgLyBOZXh0LiIsCi0JCQkzLCBjb3VudCApOwotCi0JCS8vIFdhbGsgYWxsIHRoZSBlbGVtZW50cyBpbiBhIG5vZGUgYnkgdmFsdWUuCi0JCWNvdW50ID0gMDsKLQkJZm9yKCBub2RlID0gdG9kb0VsZW1lbnQtPkZpcnN0Q2hpbGQoICJJdGVtIiApOwotCQkJIG5vZGU7Ci0JCQkgbm9kZSA9IG5vZGUtPk5leHRTaWJsaW5nKCAiSXRlbSIgKSApCi0JCXsKLQkJCWNvdW50Kys7Ci0JCX0KLQkJWG1sVGVzdCggIidJdGVtJyBjaGlsZHJlbiBvZiB0aGUgJ1RvRG8nIGVsZW1lbnQsIHVzaW5nIEZpcnN0L05leHQuIiwgMywgY291bnQgKTsKLQotCQljb3VudCA9IDA7Ci0JCWZvciggbm9kZSA9IHRvZG9FbGVtZW50LT5MYXN0Q2hpbGQoICJJdGVtIiApOwotCQkJIG5vZGU7Ci0JCQkgbm9kZSA9IG5vZGUtPlByZXZpb3VzU2libGluZyggIkl0ZW0iICkgKQotCQl7Ci0JCQljb3VudCsrOwotCQl9Ci0JCVhtbFRlc3QoICInSXRlbScgY2hpbGRyZW4gb2YgdGhlICdUb0RvJyBlbGVtZW50LCB1c2luZyBMYXN0L1ByZXZpb3VzLiIsIDMsIGNvdW50ICk7Ci0KLQkjaWZkZWYgVElYTUxfVVNFX1NUTAotCQl7Ci0JCQljb3V0IDw8ICJcbioqIFBhcnNpbmcuICoqXG4iOwotCQkJaXN0cmluZ3N0cmVhbSBwYXJzZTAoICI8RWxlbWVudDAgYXR0cmlidXRlMD0nZm9vMCcgYXR0cmlidXRlMT0gbm9xdW90ZXMgYXR0cmlidXRlMiA9ICcmZ3Q7JyAvPiIgKTsKLQkJCVRpWG1sRWxlbWVudCBlbGVtZW50MCggImRlZmF1bHQiICk7Ci0JCQlwYXJzZTAgPj4gZWxlbWVudDA7Ci0KLQkJCVhtbFRlc3QgKCAiRWxlbWVudCBwYXJzZWQsIHZhbHVlIGlzICdFbGVtZW50MCcuIiwgIkVsZW1lbnQwIiwgZWxlbWVudDAuVmFsdWUoKSApOwotCQkJWG1sVGVzdCAoICJSZWFkcyBhdHRyaWJ1dGUgJ2F0dHJpYnV0ZTA9XCJmb28wXCInLiIsICJmb28wIiwgZWxlbWVudDAuQXR0cmlidXRlKCAiYXR0cmlidXRlMCIgKSk7Ci0JCQlYbWxUZXN0ICggIlJlYWRzIGluY29ycmVjdGx5IGZvcm1hdHRlZCAnYXR0cmlidXRlMT1ub3F1b3RlcycuIiwgIm5vcXVvdGVzIiwgZWxlbWVudDAuQXR0cmlidXRlKCAiYXR0cmlidXRlMSIgKSApOwotCQkJWG1sVGVzdCAoICJSZWFkIGF0dHJpYnV0ZSB3aXRoIGVudGl0eSB2YWx1ZSAnPicuIiwgIj4iLCBlbGVtZW50MC5BdHRyaWJ1dGUoICJhdHRyaWJ1dGUyIiApICk7Ci0JCX0KLQkjZW5kaWYKLQotCQl7Ci0JCQljb25zdCBjaGFyKiBlcnJvciA9CSI8P3htbCB2ZXJzaW9uPVwiMS4wXCIgc3RhbmRhbG9uZT1cIm5vXCIgPz5cbiIKLQkJCQkJCQkJIjxwYXNzYWdlcyBjb3VudD1cIjAwNlwiIGZvcm1hdHZlcnNpb249XCIyMDAyMDYyMFwiPlxuIgotCQkJCQkJCQkiICAgIDx3cm9uZyBlcnJvcj5cbiIKLQkJCQkJCQkJIjwvcGFzc2FnZXM+IjsKLQotCQkJVGlYbWxEb2N1bWVudCBkb2NUZXN0OwotCQkJZG9jVGVzdC5QYXJzZSggZXJyb3IgKTsKLQkJCVhtbFRlc3QoICJFcnJvciByb3ciLCBkb2NUZXN0LkVycm9yUm93KCksIDMgKTsKLQkJCVhtbFRlc3QoICJFcnJvciBjb2x1bW4iLCBkb2NUZXN0LkVycm9yQ29sKCksIDE3ICk7Ci0JCQkvL3ByaW50ZiggImVycm9yPSVkIGlkPSclcycgcm93ICVkIGNvbCVkXG4iLCAoaW50KSBkb2MuRXJyb3IoKSwgZG9jLkVycm9yRGVzYygpLCBkb2MuRXJyb3JSb3coKSsxLCBkb2MuRXJyb3JDb2woKSArIDEgKTsKLQotCQl9Ci0KLQkjaWZkZWYgVElYTUxfVVNFX1NUTAotCQl7Ci0JCQkvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KLQkJCWNvdXQgPDwgIlxuKiogU3RyZWFtaW5nLiAqKlxuIjsKLQotCQkJLy8gUm91bmQgdHJpcCBjaGVjazogc3RyZWFtIGluLCB0aGVuIHN0cmVhbSBiYWNrIG91dCB0byB2ZXJpZnkuIFRoZSBzdHJlYW0KLQkJCS8vIG91dCBoYXMgYWxyZWFkeSBiZWVuIGNoZWNrZWQsIGFib3ZlLiBXZSB1c2UgdGhlIG91dHB1dAotCi0JCQlpc3RyaW5nc3RyZWFtIGlucHV0U3RyaW5nU3RyZWFtKCBvdXRwdXRTdHJlYW0uc3RyKCkgKTsKLQkJCVRpWG1sRG9jdW1lbnQgZG9jdW1lbnQwOwotCi0JCQlpbnB1dFN0cmluZ1N0cmVhbSA+PiBkb2N1bWVudDA7Ci0KLQkJCW9zdHJpbmdzdHJlYW0gb3V0cHV0U3RyZWFtMCggb3N0cmluZ3N0cmVhbTo6b3V0ICk7Ci0JCQlvdXRwdXRTdHJlYW0wIDw8IGRvY3VtZW50MDsKLQotCQkJWG1sVGVzdCggIlN0cmVhbSByb3VuZCB0cmlwIGNvcnJlY3QuIiwJc3RyaW5nKCBkZW1vRW5kICkuY19zdHIoKSwgCi0JCQkJCQkJCQkJCQkJb3V0cHV0U3RyZWFtMC5zdHIoKS5jX3N0cigpLCB0cnVlICk7Ci0KLQkJCXN0ZDo6c3RyaW5nIHN0cjsKLQkJCXN0ciA8PCBkb2N1bWVudDA7Ci0KLQkJCVhtbFRlc3QoICJTdHJpbmcgcHJpbnRpbmcgY29ycmVjdC4iLCBzdHJpbmcoIGRlbW9FbmQgKS5jX3N0cigpLCAKLQkJCQkJCQkJCQkJCSBzdHIuY19zdHIoKSwgdHJ1ZSApOwotCQl9Ci0JI2VuZGlmCisJCWRvYy5TYXZlRmlsZSgpOwogCX0KIAorCVRpWG1sRG9jdW1lbnQgZG9jKCAiZGVtb3Rlc3QueG1sIiApOworCWJvb2wgbG9hZE9rYXkgPSBkb2MuTG9hZEZpbGUoKTsKKworCWlmICggIWxvYWRPa2F5ICkKKwl7CisJCXByaW50ZiggIkNvdWxkIG5vdCBsb2FkIHRlc3QgZmlsZSAnZGVtb3Rlc3QueG1sJy4gRXJyb3I9JyVzJy4gRXhpdGluZy5cbiIsIGRvYy5FcnJvckRlc2MoKSApOworCQlleGl0KCAxICk7CisJfQorCisJcHJpbnRmKCAiKiogRGVtbyBkb2MgcmVhZCBmcm9tIGRpc2s6ICoqIFxuXG4iICk7CisJZG9jLlByaW50KCBzdGRvdXQgKTsKKworCVRpWG1sTm9kZSogbm9kZSA9IDA7CisJVGlYbWxFbGVtZW50KiB0b2RvRWxlbWVudCA9IDA7CisJVGlYbWxFbGVtZW50KiBpdGVtRWxlbWVudCA9IDA7CisKKworCS8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisJLy8gQW4gZXhhbXBsZSBvZiBjaGFuZ2luZyBleGlzdGluZyBhdHRyaWJ1dGVzLCBhbmQgcmVtb3ZpbmcKKwkvLyBhbiBlbGVtZW50IGZyb20gdGhlIGRvY3VtZW50LgorCS8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKwkvLyBHZXQgdGhlICJUb0RvIiBlbGVtZW50LgorCS8vIEl0IGlzIGEgY2hpbGQgb2YgdGhlIGRvY3VtZW50LCBhbmQgY2FuIGJlIHNlbGVjdGVkIGJ5IG5hbWUuCisJbm9kZSA9IGRvYy5GaXJzdENoaWxkKCAiVG9EbyIgKTsKKwlhc3NlcnQoIG5vZGUgKTsKKwl0b2RvRWxlbWVudCA9IG5vZGUtPlRvRWxlbWVudCgpOworCWFzc2VydCggdG9kb0VsZW1lbnQgICk7CisKKwkvLyBHb2luZyB0byB0aGUgdG95IHN0b3JlIGlzIG5vdyBvdXIgc2Vjb25kIHByaW9yaXR5Li4uCisJLy8gU28gc2V0IHRoZSAicHJpb3JpdHkiIGF0dHJpYnV0ZSBvZiB0aGUgZmlyc3QgaXRlbSBpbiB0aGUgbGlzdC4KKwlub2RlID0gdG9kb0VsZW1lbnQtPkZpcnN0Q2hpbGRFbGVtZW50KCk7CS8vIFRoaXMgc2tpcHMgdGhlICJQREEiIGNvbW1lbnQuCisJYXNzZXJ0KCBub2RlICk7CisJaXRlbUVsZW1lbnQgPSBub2RlLT5Ub0VsZW1lbnQoKTsKKwlhc3NlcnQoIGl0ZW1FbGVtZW50ICApOworCWl0ZW1FbGVtZW50LT5TZXRBdHRyaWJ1dGUoICJwcmlvcml0eSIsIDIgKTsKKworCS8vIENoYW5nZSB0aGUgZGlzdGFuY2UgdG8gImRvaW5nIGJpbGxzIiBmcm9tCisJLy8gIm5vbmUiIHRvICJoZXJlIi4gSXQncyB0aGUgbmV4dCBzaWJsaW5nIGVsZW1lbnQuCisJaXRlbUVsZW1lbnQgPSBpdGVtRWxlbWVudC0+TmV4dFNpYmxpbmdFbGVtZW50KCk7CisJYXNzZXJ0KCBpdGVtRWxlbWVudCApOworCWl0ZW1FbGVtZW50LT5TZXRBdHRyaWJ1dGUoICJkaXN0YW5jZSIsICJoZXJlIiApOworCisJLy8gUmVtb3ZlIHRoZSAiTG9vayBmb3IgRXZpbCBEaW5vc2F1cnMhIiBpdGVtLgorCS8vIEl0IGlzIDEgbW9yZSBzaWJsaW5nIGF3YXkuIFdlIGFzayB0aGUgcGFyZW50IHRvIHJlbW92ZQorCS8vIGEgcGFydGljdWxhciBjaGlsZC4KKwlpdGVtRWxlbWVudCA9IGl0ZW1FbGVtZW50LT5OZXh0U2libGluZ0VsZW1lbnQoKTsKKwl0b2RvRWxlbWVudC0+UmVtb3ZlQ2hpbGQoIGl0ZW1FbGVtZW50ICk7CisKKwlpdGVtRWxlbWVudCA9IDA7CisKKwkvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCS8vIFdoYXQgZm9sbG93cyBpcyBhbiBleGFtcGxlIG9mIGNyZWF0ZWQgZWxlbWVudHMgYW5kIHRleHQKKwkvLyBub2RlcyBhbmQgYWRkaW5nIHRoZW0gdG8gdGhlIGRvY3VtZW50LgorCS8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKwkvLyBBZGQgc29tZSBtZWV0aW5ncy4KKwlUaVhtbEVsZW1lbnQgaXRlbSggIkl0ZW0iICk7CisJaXRlbS5TZXRBdHRyaWJ1dGUoICJwcmlvcml0eSIsICIxIiApOworCWl0ZW0uU2V0QXR0cmlidXRlKCAiZGlzdGFuY2UiLCAiZmFyIiApOworCisJVGlYbWxUZXh0IHRleHQoICJUYWxrIHRvOiIgKTsKKworCVRpWG1sRWxlbWVudCBtZWV0aW5nMSggIk1lZXRpbmciICk7CisJbWVldGluZzEuU2V0QXR0cmlidXRlKCAid2hlcmUiLCAiU2Nob29sIiApOworCisJVGlYbWxFbGVtZW50IG1lZXRpbmcyKCAiTWVldGluZyIgKTsKKwltZWV0aW5nMi5TZXRBdHRyaWJ1dGUoICJ3aGVyZSIsICJMdW5jaCIgKTsKKworCVRpWG1sRWxlbWVudCBhdHRlbmRlZTEoICJBdHRlbmRlZSIgKTsKKwlhdHRlbmRlZTEuU2V0QXR0cmlidXRlKCAibmFtZSIsICJNYXJwbGUiICk7CisJYXR0ZW5kZWUxLlNldEF0dHJpYnV0ZSggInBvc2l0aW9uIiwgInRlYWNoZXIiICk7CisKKwlUaVhtbEVsZW1lbnQgYXR0ZW5kZWUyKCAiQXR0ZW5kZWUiICk7CisJYXR0ZW5kZWUyLlNldEF0dHJpYnV0ZSggIm5hbWUiLCAiVm9lbCIgKTsKKwlhdHRlbmRlZTIuU2V0QXR0cmlidXRlKCAicG9zaXRpb24iLCAiY291bnNlbG9yIiApOworCisJLy8gQXNzZW1ibGUgdGhlIG5vZGVzIHdlJ3ZlIGNyZWF0ZWQ6CisJbWVldGluZzEuSW5zZXJ0RW5kQ2hpbGQoIGF0dGVuZGVlMSApOworCW1lZXRpbmcxLkluc2VydEVuZENoaWxkKCBhdHRlbmRlZTIgKTsKKworCWl0ZW0uSW5zZXJ0RW5kQ2hpbGQoIHRleHQgKTsKKwlpdGVtLkluc2VydEVuZENoaWxkKCBtZWV0aW5nMSApOworCWl0ZW0uSW5zZXJ0RW5kQ2hpbGQoIG1lZXRpbmcyICk7CisKKwkvLyBBbmQgYWRkIHRoZSBub2RlIHRvIHRoZSBleGlzdGluZyBsaXN0IGFmdGVyIHRoZSBmaXJzdCBjaGlsZC4KKwlub2RlID0gdG9kb0VsZW1lbnQtPkZpcnN0Q2hpbGQoICJJdGVtIiApOworCWFzc2VydCggbm9kZSApOworCWl0ZW1FbGVtZW50ID0gbm9kZS0+VG9FbGVtZW50KCk7CisJYXNzZXJ0KCBpdGVtRWxlbWVudCApOworCisJdG9kb0VsZW1lbnQtPkluc2VydEFmdGVyQ2hpbGQoIGl0ZW1FbGVtZW50LCBpdGVtICk7CisKKwlwcmludGYoICJcbioqIERlbW8gZG9jIHByb2Nlc3NlZDogKiogXG5cbiIgKTsKKwlkb2MuUHJpbnQoIHN0ZG91dCApOworCisKKyNpZmRlZiBUSVhNTF9VU0VfU1RMCisJcHJpbnRmKCAiKiogRGVtbyBkb2MgcHJvY2Vzc2VkIHRvIHN0cmVhbTogKiogXG5cbiIgKTsKKwljb3V0IDw8IGRvYyA8PCBlbmRsIDw8IGVuZGw7CisjZW5kaWYKKworCS8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisJLy8gRGlmZmVyZW50IHRlc3RzLi4uZG8gd2UgaGF2ZSB3aGF0IHdlIGV4cGVjdD8KKwkvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisJaW50IGNvdW50ID0gMDsKKwlUaVhtbEVsZW1lbnQqCWVsZW1lbnQ7CisKKwkvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KKworI2lmZGVmIFRJWE1MX1VTRV9TVEwKKwljb3V0IDw8ICIqKiBCYXNpYyBzdHJ1Y3R1cmUuICoqXG4iOworCW9zdHJpbmdzdHJlYW0gb3V0cHV0U3RyZWFtKCBvc3RyaW5nc3RyZWFtOjpvdXQgKTsKKwlvdXRwdXRTdHJlYW0gPDwgZG9jOworCVhtbFRlc3QoICJPdXRwdXQgc3RyZWFtIGNvcnJlY3QuIiwJc3RyaW5nKCBkZW1vRW5kICkuY19zdHIoKSwKKwkJCQkJCQkJCQlvdXRwdXRTdHJlYW0uc3RyKCkuY19zdHIoKSwgdHJ1ZSApOworI2VuZGlmCisKKwlub2RlID0gZG9jLlJvb3RFbGVtZW50KCk7CisJWG1sVGVzdCggIlJvb3QgZWxlbWVudCBleGlzdHMuIiwgdHJ1ZSwgKCBub2RlICE9IDAgJiYgbm9kZS0+VG9FbGVtZW50KCkgKSApOworCVhtbFRlc3QgKCAiUm9vdCBlbGVtZW50IHZhbHVlIGlzICdUb0RvJy4iLCAiVG9EbyIsICBub2RlLT5WYWx1ZSgpKTsKKworCW5vZGUgPSBub2RlLT5GaXJzdENoaWxkKCk7CisJWG1sVGVzdCggIkZpcnN0IGNoaWxkIGV4aXN0cyAmIGlzIGEgY29tbWVudC4iLCB0cnVlLCAoIG5vZGUgIT0gMCAmJiBub2RlLT5Ub0NvbW1lbnQoKSApICk7CisJbm9kZSA9IG5vZGUtPk5leHRTaWJsaW5nKCk7CisJWG1sVGVzdCggIlNpYmxpbmcgZWxlbWVudCBleGlzdHMgJiBpcyBhbiBlbGVtZW50LiIsIHRydWUsICggbm9kZSAhPSAwICYmIG5vZGUtPlRvRWxlbWVudCgpICkgKTsKKwlYbWxUZXN0ICggIlZhbHVlIGlzICdJdGVtJy4iLCAiSXRlbSIsIG5vZGUtPlZhbHVlKCkgKTsKKworCW5vZGUgPSBub2RlLT5GaXJzdENoaWxkKCk7CisJWG1sVGVzdCAoICJGaXJzdCBjaGlsZCBleGlzdHMuIiwgdHJ1ZSwgKCBub2RlICE9IDAgJiYgbm9kZS0+VG9UZXh0KCkgKSApOworCVhtbFRlc3QgKCAiVmFsdWUgaXMgJ0dvIHRvIHRoZScuIiwgIkdvIHRvIHRoZSIsIG5vZGUtPlZhbHVlKCkgKTsKKworCisJLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCisJcHJpbnRmICgiXG4qKiBJdGVyYXRvcnMuICoqXG4iKTsKKworCS8vIFdhbGsgYWxsIHRoZSB0b3AgbGV2ZWwgbm9kZXMgb2YgdGhlIGRvY3VtZW50LgorCWNvdW50ID0gMDsKKwlmb3IoIG5vZGUgPSBkb2MuRmlyc3RDaGlsZCgpOworCQkgbm9kZTsKKwkJIG5vZGUgPSBub2RlLT5OZXh0U2libGluZygpICkKKwl7CisJCWNvdW50Kys7CisJfQorCVhtbFRlc3QoICJUb3AgbGV2ZWwgbm9kZXMsIHVzaW5nIEZpcnN0IC8gTmV4dC4iLCAzLCBjb3VudCApOworCisJY291bnQgPSAwOworCWZvciggbm9kZSA9IGRvYy5MYXN0Q2hpbGQoKTsKKwkJIG5vZGU7CisJCSBub2RlID0gbm9kZS0+UHJldmlvdXNTaWJsaW5nKCkgKQorCXsKKwkJY291bnQrKzsKKwl9CisJWG1sVGVzdCggIlRvcCBsZXZlbCBub2RlcywgdXNpbmcgTGFzdCAvIFByZXZpb3VzLiIsIDMsIGNvdW50ICk7CisKKwkvLyBXYWxrIGFsbCB0aGUgdG9wIGxldmVsIG5vZGVzIG9mIHRoZSBkb2N1bWVudCwKKwkvLyB1c2luZyBhIGRpZmZlcmVudCBzeW50YXguCisJY291bnQgPSAwOworCWZvciggbm9kZSA9IGRvYy5JdGVyYXRlQ2hpbGRyZW4oIDAgKTsKKwkJIG5vZGU7CisJCSBub2RlID0gZG9jLkl0ZXJhdGVDaGlsZHJlbiggbm9kZSApICkKKwl7CisJCWNvdW50Kys7CisJfQorCVhtbFRlc3QoICJUb3AgbGV2ZWwgbm9kZXMsIHVzaW5nIEl0ZXJhdGVDaGlsZHJlbi4iLCAzLCBjb3VudCApOworCisJLy8gV2FsayBhbGwgdGhlIGVsZW1lbnRzIGluIGEgbm9kZS4KKwljb3VudCA9IDA7CisJZm9yKCBlbGVtZW50ID0gdG9kb0VsZW1lbnQtPkZpcnN0Q2hpbGRFbGVtZW50KCk7CisJCSBlbGVtZW50OworCQkgZWxlbWVudCA9IGVsZW1lbnQtPk5leHRTaWJsaW5nRWxlbWVudCgpICkKKwl7CisJCWNvdW50Kys7CisJfQorCVhtbFRlc3QoICJDaGlsZHJlbiBvZiB0aGUgJ1RvRG8nIGVsZW1lbnQsIHVzaW5nIEZpcnN0IC8gTmV4dC4iLAorCQkzLCBjb3VudCApOworCisJLy8gV2FsayBhbGwgdGhlIGVsZW1lbnRzIGluIGEgbm9kZSBieSB2YWx1ZS4KKwljb3VudCA9IDA7CisJZm9yKCBub2RlID0gdG9kb0VsZW1lbnQtPkZpcnN0Q2hpbGQoICJJdGVtIiApOworCQkgbm9kZTsKKwkJIG5vZGUgPSBub2RlLT5OZXh0U2libGluZyggIkl0ZW0iICkgKQorCXsKKwkJY291bnQrKzsKKwl9CisJWG1sVGVzdCggIidJdGVtJyBjaGlsZHJlbiBvZiB0aGUgJ1RvRG8nIGVsZW1lbnQsIHVzaW5nIEZpcnN0L05leHQuIiwgMywgY291bnQgKTsKKworCWNvdW50ID0gMDsKKwlmb3IoIG5vZGUgPSB0b2RvRWxlbWVudC0+TGFzdENoaWxkKCAiSXRlbSIgKTsKKwkJIG5vZGU7CisJCSBub2RlID0gbm9kZS0+UHJldmlvdXNTaWJsaW5nKCAiSXRlbSIgKSApCisJeworCQljb3VudCsrOworCX0KKwlYbWxUZXN0KCAiJ0l0ZW0nIGNoaWxkcmVuIG9mIHRoZSAnVG9EbycgZWxlbWVudCwgdXNpbmcgTGFzdC9QcmV2aW91cy4iLCAzLCBjb3VudCApOworCisjaWZkZWYgVElYTUxfVVNFX1NUTAorCXsKKwkJY291dCA8PCAiXG4qKiBQYXJzaW5nLiAqKlxuIjsKKwkJaXN0cmluZ3N0cmVhbSBwYXJzZTAoICI8RWxlbWVudDAgYXR0cmlidXRlMD0nZm9vMCcgYXR0cmlidXRlMT0gbm9xdW90ZXMgYXR0cmlidXRlMiA9ICcmZ3Q7JyAvPiIgKTsKKwkJVGlYbWxFbGVtZW50IGVsZW1lbnQwKCAiZGVmYXVsdCIgKTsKKwkJcGFyc2UwID4+IGVsZW1lbnQwOworCisJCVhtbFRlc3QgKCAiRWxlbWVudCBwYXJzZWQsIHZhbHVlIGlzICdFbGVtZW50MCcuIiwgIkVsZW1lbnQwIiwgZWxlbWVudDAuVmFsdWUoKSApOworCQlYbWxUZXN0ICggIlJlYWRzIGF0dHJpYnV0ZSAnYXR0cmlidXRlMD1cImZvbzBcIicuIiwgImZvbzAiLCBlbGVtZW50MC5BdHRyaWJ1dGUoICJhdHRyaWJ1dGUwIiApKTsKKwkJWG1sVGVzdCAoICJSZWFkcyBpbmNvcnJlY3RseSBmb3JtYXR0ZWQgJ2F0dHJpYnV0ZTE9bm9xdW90ZXMnLiIsICJub3F1b3RlcyIsIGVsZW1lbnQwLkF0dHJpYnV0ZSggImF0dHJpYnV0ZTEiICkgKTsKKwkJWG1sVGVzdCAoICJSZWFkIGF0dHJpYnV0ZSB3aXRoIGVudGl0eSB2YWx1ZSAnPicuIiwgIj4iLCBlbGVtZW50MC5BdHRyaWJ1dGUoICJhdHRyaWJ1dGUyIiApICk7CisJfQorI2VuZGlmCisKIAl7Ci0JCWNvbnN0IGNoYXIqIHN0ciA9ICI8ZG9jIGF0dHIwPScxJyBhdHRyMT0nMi4wJyBhdHRyMj0nZm9vJyAvPiI7CisJCWNvbnN0IGNoYXIqIGVycm9yID0JIjw/eG1sIHZlcnNpb249XCIxLjBcIiBzdGFuZGFsb25lPVwibm9cIiA/PlxuIgorCQkJCQkJCSI8cGFzc2FnZXMgY291bnQ9XCIwMDZcIiBmb3JtYXR2ZXJzaW9uPVwiMjAwMjA2MjBcIj5cbiIKKwkJCQkJCQkiICAgIDx3cm9uZyBlcnJvcj5cbiIKKwkJCQkJCQkiPC9wYXNzYWdlcz4iOwogCi0JCVRpWG1sRG9jdW1lbnQgZG9jOwotCQlkb2MuUGFyc2UoIHN0ciApOworICAgICAgICBUaVhtbERvY3VtZW50IGRvYzsKKwkJZG9jLlBhcnNlKCBlcnJvciApOworCQlYbWxUZXN0KCAiRXJyb3Igcm93IiwgZG9jLkVycm9yUm93KCksIDMgKTsKKwkJWG1sVGVzdCggIkVycm9yIGNvbHVtbiIsIGRvYy5FcnJvckNvbCgpLCAxNyApOworCQkvL3ByaW50ZiggImVycm9yPSVkIGlkPSclcycgcm93ICVkIGNvbCVkXG4iLCAoaW50KSBkb2MuRXJyb3IoKSwgZG9jLkVycm9yRGVzYygpLCBkb2MuRXJyb3JSb3coKSsxLCBkb2MuRXJyb3JDb2woKSArIDEgKTsKIAotCQlUaVhtbEVsZW1lbnQqIGVsZSA9IGRvYy5GaXJzdENoaWxkRWxlbWVudCgpOwotCi0JCWludCBpVmFsLCByZXN1bHQ7Ci0JCWRvdWJsZSBkVmFsOwotCi0JCXJlc3VsdCA9IGVsZS0+UXVlcnlEb3VibGVBdHRyaWJ1dGUoICJhdHRyMCIsICZkVmFsICk7Ci0JCVhtbFRlc3QoICJRdWVyeSBhdHRyaWJ1dGU6IGludCBhcyBkb3VibGUiLCByZXN1bHQsIFRJWE1MX1NVQ0NFU1MgKTsKLQkJWG1sVGVzdCggIlF1ZXJ5IGF0dHJpYnV0ZTogaW50IGFzIGRvdWJsZSIsIChpbnQpZFZhbCwgMSApOwotCQlyZXN1bHQgPSBlbGUtPlF1ZXJ5RG91YmxlQXR0cmlidXRlKCAiYXR0cjEiLCAmZFZhbCApOwotCQlYbWxUZXN0KCAiUXVlcnkgYXR0cmlidXRlOiBkb3VibGUgYXMgZG91YmxlIiwgKGludClkVmFsLCAyICk7Ci0JCXJlc3VsdCA9IGVsZS0+UXVlcnlJbnRBdHRyaWJ1dGUoICJhdHRyMSIsICZpVmFsICk7Ci0JCVhtbFRlc3QoICJRdWVyeSBhdHRyaWJ1dGU6IGRvdWJsZSBhcyBpbnQiLCByZXN1bHQsIFRJWE1MX1NVQ0NFU1MgKTsKLQkJWG1sVGVzdCggIlF1ZXJ5IGF0dHJpYnV0ZTogZG91YmxlIGFzIGludCIsIGlWYWwsIDIgKTsKLQkJcmVzdWx0ID0gZWxlLT5RdWVyeUludEF0dHJpYnV0ZSggImF0dHIyIiwgJmlWYWwgKTsKLQkJWG1sVGVzdCggIlF1ZXJ5IGF0dHJpYnV0ZTogbm90IGEgbnVtYmVyIiwgcmVzdWx0LCBUSVhNTF9XUk9OR19UWVBFICk7Ci0JCXJlc3VsdCA9IGVsZS0+UXVlcnlJbnRBdHRyaWJ1dGUoICJiYXIiLCAmaVZhbCApOwotCQlYbWxUZXN0KCAiUXVlcnkgYXR0cmlidXRlOiBkb2VzIG5vdCBleGlzdCIsIHJlc3VsdCwgVElYTUxfTk9fQVRUUklCVVRFICk7CiAJfQotCi0JewotCQljb25zdCBjaGFyKiBzdHIgPSAiPGRvYy8+IjsKLQotCQlUaVhtbERvY3VtZW50IGRvYzsKLQkJZG9jLlBhcnNlKCBzdHIgKTsKLQotCQlUaVhtbEVsZW1lbnQqIGVsZSA9IGRvYy5GaXJzdENoaWxkRWxlbWVudCgpOwotCi0JCWludCBpVmFsOwotCQlkb3VibGUgZFZhbDsKLQotCQllbGUtPlNldEF0dHJpYnV0ZSggInN0ciIsICJzdHJWYWx1ZSIgKTsKLQkJZWxlLT5TZXRBdHRyaWJ1dGUoICJpbnQiLCAxICk7Ci0JCWVsZS0+U2V0RG91YmxlQXR0cmlidXRlKCAiZG91YmxlIiwgLTEuMCApOwotCi0JCWNvbnN0IGNoYXIqIGNTdHIgPSBlbGUtPkF0dHJpYnV0ZSggInN0ciIgKTsKLQkJZWxlLT5RdWVyeUludEF0dHJpYnV0ZSggImludCIsICZpVmFsICk7Ci0JCWVsZS0+UXVlcnlEb3VibGVBdHRyaWJ1dGUoICJkb3VibGUiLCAmZFZhbCApOwotCi0JCVhtbFRlc3QoICJBdHRyaWJ1dGUgcm91bmQgdHJpcC4gYy1zdHJpbmcuIiwgInN0clZhbHVlIiwgY1N0ciApOwotCQlYbWxUZXN0KCAiQXR0cmlidXRlIHJvdW5kIHRyaXAuIGludC4iLCAxLCBpVmFsICk7Ci0JCVhtbFRlc3QoICJBdHRyaWJ1dGUgcm91bmQgdHJpcC4gZG91YmxlLiIsIC0xLCAoaW50KWRWYWwgKTsKLQl9Ci0JCi0JewotCQljb25zdCBjaGFyKiBzdHIgPQkiXHQ8P3htbCB2ZXJzaW9uPVwiMS4wXCIgc3RhbmRhbG9uZT1cIm5vXCIgPz5cdDxyb29tIGRvb3JzPScyJz5cbiIKLQkJCQkJCQkiPC9yb29tPiI7Ci0KLQkJVGlYbWxEb2N1bWVudCBkb2M7Ci0JCWRvYy5TZXRUYWJTaXplKCA4ICk7Ci0JCWRvYy5QYXJzZSggc3RyICk7Ci0KLQkJVGlYbWxIYW5kbGUgZG9jSGFuZGxlKCAmZG9jICk7Ci0JCVRpWG1sSGFuZGxlIHJvb21IYW5kbGUgPSBkb2NIYW5kbGUuRmlyc3RDaGlsZEVsZW1lbnQoICJyb29tIiApOwotCi0JCWFzc2VydCggZG9jSGFuZGxlLk5vZGUoKSApOwotCQlhc3NlcnQoIHJvb21IYW5kbGUuRWxlbWVudCgpICk7Ci0KLQkJVGlYbWxFbGVtZW50KiByb29tID0gcm9vbUhhbmRsZS5FbGVtZW50KCk7Ci0JCWFzc2VydCggcm9vbSApOwotCQlUaVhtbEF0dHJpYnV0ZSogZG9vcnMgPSByb29tLT5GaXJzdEF0dHJpYnV0ZSgpOwotCQlhc3NlcnQoIGRvb3JzICk7Ci0KLQkJWG1sVGVzdCggIkxvY2F0aW9uIHRyYWNraW5nOiBUYWIgODogcm9vbSByb3ciLCByb29tLT5Sb3coKSwgMSApOwotCQlYbWxUZXN0KCAiTG9jYXRpb24gdHJhY2tpbmc6IFRhYiA4OiByb29tIGNvbCIsIHJvb20tPkNvbHVtbigpLCA0OSApOwotCQlYbWxUZXN0KCAiTG9jYXRpb24gdHJhY2tpbmc6IFRhYiA4OiBkb29ycyByb3ciLCBkb29ycy0+Um93KCksIDEgKTsKLQkJWG1sVGVzdCggIkxvY2F0aW9uIHRyYWNraW5nOiBUYWIgODogZG9vcnMgY29sIiwgZG9vcnMtPkNvbHVtbigpLCA1NSApOwotCX0KLQkKIAl7CiAJCWNvbnN0IGNoYXIqIHN0ciA9CSJcdDw/eG1sIHZlcnNpb249XCIxLjBcIiBzdGFuZGFsb25lPVwibm9cIiA/Plx0PHJvb20gZG9vcnM9JzInPlxuIgogCQkJCQkJCSIgIDwhLS0gU2lsbHkgZXhhbXBsZSAtLT5cbiIKQEAgLTQ5Nyw3ICszNjUsNyBAQAogCQkJCQkJCSJcdDxkb29yIHdhbGw9J2Vhc3QnLz4iCiAJCQkJCQkJIjwvcm9vbT4iOwogCi0JCVRpWG1sRG9jdW1lbnQgZG9jOworICAgICAgICBUaVhtbERvY3VtZW50IGRvYzsKIAkJZG9jLlBhcnNlKCBzdHIgKTsKIAogCQlUaVhtbEhhbmRsZSBkb2NIYW5kbGUoICZkb2MgKTsKQEAgLTU0MSw3ICs0MDksODIgQEAKIAkJWG1sVGVzdCggIkxvY2F0aW9uIHRyYWNraW5nOiBkb29yMSByb3ciLCBkb29yMS0+Um93KCksIDQgKTsKIAkJWG1sVGVzdCggIkxvY2F0aW9uIHRyYWNraW5nOiBkb29yMSBjb2wiLCBkb29yMS0+Q29sdW1uKCksIDUgKTsKIAl9CisJeworCQljb25zdCBjaGFyKiBzdHIgPQkiXHQ8P3htbCB2ZXJzaW9uPVwiMS4wXCIgc3RhbmRhbG9uZT1cIm5vXCIgPz5cdDxyb29tIGRvb3JzPScyJz5cbiIKKwkJCQkJCQkiPC9yb29tPiI7CiAKKyAgICAgICAgVGlYbWxEb2N1bWVudCBkb2M7CisJCWRvYy5TZXRUYWJTaXplKCA4ICk7CisJCWRvYy5QYXJzZSggc3RyICk7CisKKwkJVGlYbWxIYW5kbGUgZG9jSGFuZGxlKCAmZG9jICk7CisJCVRpWG1sSGFuZGxlIHJvb21IYW5kbGUgPSBkb2NIYW5kbGUuRmlyc3RDaGlsZEVsZW1lbnQoICJyb29tIiApOworCisJCWFzc2VydCggZG9jSGFuZGxlLk5vZGUoKSApOworCQlhc3NlcnQoIHJvb21IYW5kbGUuRWxlbWVudCgpICk7CisKKwkJVGlYbWxFbGVtZW50KiByb29tID0gcm9vbUhhbmRsZS5FbGVtZW50KCk7CisJCWFzc2VydCggcm9vbSApOworCQlUaVhtbEF0dHJpYnV0ZSogZG9vcnMgPSByb29tLT5GaXJzdEF0dHJpYnV0ZSgpOworCQlhc3NlcnQoIGRvb3JzICk7CisKKwkJWG1sVGVzdCggIkxvY2F0aW9uIHRyYWNraW5nOiBUYWIgODogcm9vbSByb3ciLCByb29tLT5Sb3coKSwgMSApOworCQlYbWxUZXN0KCAiTG9jYXRpb24gdHJhY2tpbmc6IFRhYiA4OiByb29tIGNvbCIsIHJvb20tPkNvbHVtbigpLCA0OSApOworCQlYbWxUZXN0KCAiTG9jYXRpb24gdHJhY2tpbmc6IFRhYiA4OiBkb29ycyByb3ciLCBkb29ycy0+Um93KCksIDEgKTsKKwkJWG1sVGVzdCggIkxvY2F0aW9uIHRyYWNraW5nOiBUYWIgODogZG9vcnMgY29sIiwgZG9vcnMtPkNvbHVtbigpLCA1NSApOworCX0KKworCXsKKwkJY29uc3QgY2hhciogc3RyID0gIjxkb2MgYXR0cjA9JzEnIGF0dHIxPScyLjAnIGF0dHIyPSdmb28nIC8+IjsKKworCQlUaVhtbERvY3VtZW50IGRvYzsKKwkJZG9jLlBhcnNlKCBzdHIgKTsKKworCQlUaVhtbEVsZW1lbnQqIGVsZSA9IGRvYy5GaXJzdENoaWxkRWxlbWVudCgpOworCisJCWludCBpVmFsLCByZXN1bHQ7CisJCWRvdWJsZSBkVmFsOworCisJCXJlc3VsdCA9IGVsZS0+UXVlcnlEb3VibGVBdHRyaWJ1dGUoICJhdHRyMCIsICZkVmFsICk7CisJCVhtbFRlc3QoICJRdWVyeSBhdHRyaWJ1dGU6IGludCBhcyBkb3VibGUiLCByZXN1bHQsIFRJWE1MX1NVQ0NFU1MgKTsKKwkJWG1sVGVzdCggIlF1ZXJ5IGF0dHJpYnV0ZTogaW50IGFzIGRvdWJsZSIsIChpbnQpZFZhbCwgMSApOworCQlyZXN1bHQgPSBlbGUtPlF1ZXJ5RG91YmxlQXR0cmlidXRlKCAiYXR0cjEiLCAmZFZhbCApOworCQlYbWxUZXN0KCAiUXVlcnkgYXR0cmlidXRlOiBkb3VibGUgYXMgZG91YmxlIiwgKGludClkVmFsLCAyICk7CisJCXJlc3VsdCA9IGVsZS0+UXVlcnlJbnRBdHRyaWJ1dGUoICJhdHRyMSIsICZpVmFsICk7CisJCVhtbFRlc3QoICJRdWVyeSBhdHRyaWJ1dGU6IGRvdWJsZSBhcyBpbnQiLCByZXN1bHQsIFRJWE1MX1NVQ0NFU1MgKTsKKwkJWG1sVGVzdCggIlF1ZXJ5IGF0dHJpYnV0ZTogZG91YmxlIGFzIGludCIsIGlWYWwsIDIgKTsKKwkJcmVzdWx0ID0gZWxlLT5RdWVyeUludEF0dHJpYnV0ZSggImF0dHIyIiwgJmlWYWwgKTsKKwkJWG1sVGVzdCggIlF1ZXJ5IGF0dHJpYnV0ZTogbm90IGEgbnVtYmVyIiwgcmVzdWx0LCBUSVhNTF9XUk9OR19UWVBFICk7CisJCXJlc3VsdCA9IGVsZS0+UXVlcnlJbnRBdHRyaWJ1dGUoICJiYXIiLCAmaVZhbCApOworCQlYbWxUZXN0KCAiUXVlcnkgYXR0cmlidXRlOiBkb2VzIG5vdCBleGlzdCIsIHJlc3VsdCwgVElYTUxfTk9fQVRUUklCVVRFICk7CisJfQorCisjaWZkZWYgVElYTUxfVVNFX1NUTAorCXsKKwkJLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCisJCWNvdXQgPDwgIlxuKiogU3RyZWFtaW5nLiAqKlxuIjsKKworCQkvLyBSb3VuZCB0cmlwIGNoZWNrOiBzdHJlYW0gaW4sIHRoZW4gc3RyZWFtIGJhY2sgb3V0IHRvIHZlcmlmeS4gVGhlIHN0cmVhbQorCQkvLyBvdXQgaGFzIGFscmVhZHkgYmVlbiBjaGVja2VkLCBhYm92ZS4gV2UgdXNlIHRoZSBvdXRwdXQKKworCQlpc3RyaW5nc3RyZWFtIGlucHV0U3RyaW5nU3RyZWFtKCBvdXRwdXRTdHJlYW0uc3RyKCkgKTsKKwkJVGlYbWxEb2N1bWVudCBkb2N1bWVudDA7CisKKwkJaW5wdXRTdHJpbmdTdHJlYW0gPj4gZG9jdW1lbnQwOworCisJCW9zdHJpbmdzdHJlYW0gb3V0cHV0U3RyZWFtMCggb3N0cmluZ3N0cmVhbTo6b3V0ICk7CisJCW91dHB1dFN0cmVhbTAgPDwgZG9jdW1lbnQwOworCisJCVhtbFRlc3QoICJTdHJlYW0gcm91bmQgdHJpcCBjb3JyZWN0LiIsCXN0cmluZyggZGVtb0VuZCApLmNfc3RyKCksIAorCQkJCQkJCQkJCQkJb3V0cHV0U3RyZWFtMC5zdHIoKS5jX3N0cigpLCB0cnVlICk7CisKKwkJc3RkOjpzdHJpbmcgc3RyOworCQlzdHIgPDwgZG9jdW1lbnQwOworCisJCVhtbFRlc3QoICJTdHJpbmcgcHJpbnRpbmcgY29ycmVjdC4iLCBzdHJpbmcoIGRlbW9FbmQgKS5jX3N0cigpLCAKKwkJCQkJCQkJCQkJIHN0ci5jX3N0cigpLCB0cnVlICk7CisJfQorI2VuZGlmCiAKIAkvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCS8vIFVURi04IHRlc3RpbmcuIEl0IGlzIGltcG9ydGFudCB0byB0ZXN0OgpAQCAtNTk4LDMwICs1NDEsMjAgQEAKIAogCQkJRklMRSogc2F2ZWQgID0gZm9wZW4oICJ1dGY4dGVzdG91dC54bWwiLCAiciIgKTsKIAkJCUZJTEUqIHZlcmlmeSA9IGZvcGVuKCAidXRmOHRlc3R2ZXJpZnkueG1sIiwgInIiICk7Ci0KLQkJCS8vYm9vbCBmaXJzdExpbmVCT009dHJ1ZTsKIAkJCWlmICggc2F2ZWQgJiYgdmVyaWZ5ICkKIAkJCXsKIAkJCQl3aGlsZSAoIGZnZXRzKCB2ZXJpZnlCdWYsIDI1NiwgdmVyaWZ5ICkgKQogCQkJCXsKIAkJCQkJZmdldHMoIHNhdmVkQnVmLCAyNTYsIHNhdmVkICk7Ci0JCQkJCU51bGxMaW5lRW5kaW5ncyggdmVyaWZ5QnVmICk7Ci0JCQkJCU51bGxMaW5lRW5kaW5ncyggc2F2ZWRCdWYgKTsKLQotCQkJCQlpZiAoIC8qIWZpcnN0TGluZUJPTSAmJiAqLyBzdHJjbXAoIHZlcmlmeUJ1Ziwgc2F2ZWRCdWYgKSApCisJCQkJCWlmICggc3RyY21wKCB2ZXJpZnlCdWYsIHNhdmVkQnVmICkgKQogCQkJCQl7Ci0JCQkJCQlwcmludGYoICJ2ZXJpZnk6JXM8XG4iLCB2ZXJpZnlCdWYgKTsKLQkJCQkJCXByaW50ZiggInNhdmVkIDolczxcbiIsIHNhdmVkQnVmICk7CiAJCQkJCQlva2F5ID0gMDsKIAkJCQkJCWJyZWFrOwogCQkJCQl9Ci0JCQkJCS8vZmlyc3RMaW5lQk9NID0gZmFsc2U7CiAJCQkJfQotCQkJfQotCQkJaWYgKCBzYXZlZCApCiAJCQkJZmNsb3NlKCBzYXZlZCApOwotCQkJaWYgKCB2ZXJpZnkgKQogCQkJCWZjbG9zZSggdmVyaWZ5ICk7CisJCQl9CiAJCQlYbWxUZXN0KCAiVVRGLTg6IFZlcmlmaWVkIG11bHRpLWxhbmd1YWdlIHJvdW5kIHRyaXAuIiwgMSwgb2theSApOwogCiAJCQkvLyBPbiBtb3N0IFdlc3Rlcm4gbWFjaGluZXMsIHRoaXMgaXMgYW4gZWxlbWVudCB0aGF0IGNvbnRhaW5zCkBAIC02NTUsNyArNTg4LDcgQEAKIAkJWG1sVGVzdCggIkNvcHkvQXNzaWduOiBlbGVtZW50IGNvcHkgIzIuIiwgInZhbHVlIiwgZWxlbWVudENvcHkuQXR0cmlidXRlKCAibmFtZSIgKSApOwogCQlYbWxUZXN0KCAiQ29weS9Bc3NpZ246IGVsZW1lbnQgYXNzaWduICMxLiIsICJlbGVtZW50IiwgZWxlbWVudEFzc2lnbi5WYWx1ZSgpICk7CiAJCVhtbFRlc3QoICJDb3B5L0Fzc2lnbjogZWxlbWVudCBhc3NpZ24gIzIuIiwgInZhbHVlIiwgZWxlbWVudEFzc2lnbi5BdHRyaWJ1dGUoICJuYW1lIiApICk7Ci0JCVhtbFRlc3QoICJDb3B5L0Fzc2lnbjogZWxlbWVudCBhc3NpZ24gIzMuIiwgdHJ1ZSwgKCAwID09IGVsZW1lbnRBc3NpZ24uQXR0cmlidXRlKCAiZm9vIiApKSApOworCQlYbWxUZXN0KCAiQ29weS9Bc3NpZ246IGVsZW1lbnQgYXNzaWduICMzLiIsIDAsIChpbnQpIGVsZW1lbnRBc3NpZ24uQXR0cmlidXRlKCAiZm9vIiApICk7CiAKIAkJVGlYbWxDb21tZW50IGNvbW1lbnQ7CiAJCWNvbW1lbnQuUGFyc2UoICI8IS0tY29tbWVudC0tPiIsIDAsIFRJWE1MX0VOQ09ESU5HX1VOS05PV04gKTsKQEAgLTcxNSwxNSArNjQ4LDE1IEBACiAjaWZkZWYgVElYTUxfVVNFX1NUTAogCXByaW50ZiAoIlxuKiogUGFyc2luZywgbm8gQ29uZGVuc2UgV2hpdGVzcGFjZSAqKlxuIik7CiAJVGlYbWxCYXNlOjpTZXRDb25kZW5zZVdoaXRlU3BhY2UoIGZhbHNlICk7Ci0JewotCQlpc3RyaW5nc3RyZWFtIHBhcnNlMSggIjxzdGFydD5UaGlzICBpcyAgICBcbnRleHQ8L3N0YXJ0PiIgKTsKLQkJVGlYbWxFbGVtZW50IHRleHQxKCAidGV4dCIgKTsKLQkJcGFyc2UxID4+IHRleHQxOwogCi0JCVhtbFRlc3QgKCAiQ29uZGVuc2Ugd2hpdGUgc3BhY2UgT0ZGLiIsICJUaGlzICBpcyAgICBcbnRleHQiLAotCQkJCQl0ZXh0MS5GaXJzdENoaWxkKCktPlZhbHVlKCksCi0JCQkJCXRydWUgKTsKLQl9CisJaXN0cmluZ3N0cmVhbSBwYXJzZTEoICI8c3RhcnQ+VGhpcyAgaXMgICAgXG50ZXh0PC9zdGFydD4iICk7CisJVGlYbWxFbGVtZW50IHRleHQxKCAidGV4dCIgKTsKKwlwYXJzZTEgPj4gdGV4dDE7CisKKwlYbWxUZXN0ICggIkNvbmRlbnNlIHdoaXRlIHNwYWNlIE9GRi4iLCAiVGhpcyAgaXMgICAgXG50ZXh0IiwKKwkJCQl0ZXh0MS5GaXJzdENoaWxkKCktPlZhbHVlKCksCisJCQkJdHJ1ZSApOworCiAJVGlYbWxCYXNlOjpTZXRDb25kZW5zZVdoaXRlU3BhY2UoIHRydWUgKTsKICNlbmRpZgogCkBAIC03NjYsNyArNjk5LDcgQEAKIAkJCQkJCQkiPC94bWxFbGVtZW50PiI7CiAJCVRpWG1sRG9jdW1lbnQgZG9jOwogCQlkb2MuUGFyc2UoIHN0ciApOwotCQlkb2MuUHJpbnQoKTsKKwkJLy9kb2MuUHJpbnQoKTsKIAogCQlYbWxUZXN0KCAiQ0RBVEEgcGFyc2UuIiwgZG9jLkZpcnN0Q2hpbGRFbGVtZW50KCktPkZpcnN0Q2hpbGQoKS0+VmFsdWUoKSwgCiAJCQkJCQkJCSAiSSBhbSA+IHRoZSBydWxlcyFcbi4uLnNpbmNlIEkgbWFrZSBzeW1ib2xpYyBwdW5zIiwKQEAgLTc5Myw5OSArNzI2LDggQEAKIAkJCQkJCQkJICJJIGFtID4gdGhlIHJ1bGVzIVxuLi4uc2luY2UgSSBtYWtlIHN5bWJvbGljIHB1bnMiLAogCQkJCQkJCQkgdHJ1ZSApOwogCX0KLQl7Ci0JCS8vIFsgMTQ4MjcyOCBdIFdyb25nIHdpZGUgY2hhciBwYXJzaW5nCi0JCWNoYXIgYnVmWzI1Nl07Ci0JCWJ1ZlsyNTVdID0gMDsKLQkJZm9yKCBpbnQgaT0wOyBpPDI1NTsgKytpICkgewotCQkJYnVmW2ldID0gKGNoYXIpKChpPj0zMikgPyBpIDogMzIpOwotCQl9Ci0JCVRJWE1MX1NUUklORyBzdHIoICI8eG1sRWxlbWVudD48IVtDREFUQVsiICk7Ci0JCXN0ciArPSBidWY7Ci0JCXN0ciArPSAiXV0+PC94bWxFbGVtZW50PiI7Ci0KLQkJVGlYbWxEb2N1bWVudCBkb2M7Ci0JCWRvYy5QYXJzZSggc3RyLmNfc3RyKCkgKTsKLQotCQlUaVhtbFByaW50ZXIgcHJpbnRlcjsKLQkJcHJpbnRlci5TZXRTdHJlYW1QcmludGluZygpOwotCQlkb2MuQWNjZXB0KCAmcHJpbnRlciApOwotCi0JCVhtbFRlc3QoICJDREFUQSB3aXRoIGFsbCBieXRlcyAjMS4iLCBzdHIuY19zdHIoKSwgcHJpbnRlci5DU3RyKCksIHRydWUgKTsKLQotCQkjaWZkZWYgVElYTUxfVVNFX1NUTAotCQlkb2MuQ2xlYXIoKTsKLQkJaXN0cmluZ3N0cmVhbSBpc3MoIHByaW50ZXIuU3RyKCkgKTsKLQkJaXNzID4+IGRvYzsKLQkJc3RkOjpzdHJpbmcgb3V0OwotCQlvdXQgPDwgZG9jOwotCQlYbWxUZXN0KCAiQ0RBVEEgd2l0aCBhbGwgYnl0ZXMgIzIuIiwgb3V0LmNfc3RyKCksIHByaW50ZXIuQ1N0cigpLCB0cnVlICk7Ci0JCSNlbmRpZgotCX0KLQl7Ci0JCS8vIFsgMTQ4MDEwNyBdIEJ1Zy1maXggZm9yIFNUTC1zdHJlYW1pbmcgb2YgQ0RBVEEgdGhhdCBjb250YWlucyB0YWdzCi0JCS8vIENEQVRBIHN0cmVhbWluZyBoYWQgYSBjb3VwbGUgb2YgYnVncywgdGhhdCB0aGlzIHRlc3RzIGZvci4KLQkJY29uc3QgY2hhciogc3RyID0JIjx4bWxFbGVtZW50PiIKLQkJCQkJCQkJIjwhW0NEQVRBWyIKLQkJCQkJCQkJCSI8Yj5JIGFtID4gdGhlIHJ1bGVzITwvYj5cbiIKLQkJCQkJCQkJCSIuLi5zaW5jZSBJIG1ha2Ugc3ltYm9saWMgcHVucyIKLQkJCQkJCQkJIl1dPiIKLQkJCQkJCQkiPC94bWxFbGVtZW50PiI7Ci0JCVRpWG1sRG9jdW1lbnQgZG9jOwotCQlkb2MuUGFyc2UoIHN0ciApOwotCQlkb2MuUHJpbnQoKTsKLQotCQlYbWxUZXN0KCAiQ0RBVEEgcGFyc2UuIFsgMTQ4MDEwNyBdIiwgZG9jLkZpcnN0Q2hpbGRFbGVtZW50KCktPkZpcnN0Q2hpbGQoKS0+VmFsdWUoKSwgCi0JCQkJCQkJCSAiPGI+SSBhbSA+IHRoZSBydWxlcyE8L2I+XG4uLi5zaW5jZSBJIG1ha2Ugc3ltYm9saWMgcHVucyIsCi0JCQkJCQkJCSB0cnVlICk7Ci0KLQkJI2lmZGVmIFRJWE1MX1VTRV9TVEwKLQotCQlkb2MuQ2xlYXIoKTsKLQotCQlpc3RyaW5nc3RyZWFtIHBhcnNlMCggc3RyICk7Ci0JCXBhcnNlMCA+PiBkb2M7Ci0KLQkJWG1sVGVzdCggIkNEQVRBIHN0cmVhbS4gWyAxNDgwMTA3IF0iLCBkb2MuRmlyc3RDaGlsZEVsZW1lbnQoKS0+Rmlyc3RDaGlsZCgpLT5WYWx1ZSgpLCAKLQkJCQkJCQkJICI8Yj5JIGFtID4gdGhlIHJ1bGVzITwvYj5cbi4uLnNpbmNlIEkgbWFrZSBzeW1ib2xpYyBwdW5zIiwKLQkJCQkJCQkJIHRydWUgKTsKLQkJI2VuZGlmCi0KLQkJVGlYbWxEb2N1bWVudCBkb2MxID0gZG9jOwotCQkvL2RvYy5QcmludCgpOwotCi0JCVhtbFRlc3QoICJDREFUQSBjb3B5LiBbIDE0ODAxMDcgXSIsIGRvYzEuRmlyc3RDaGlsZEVsZW1lbnQoKS0+Rmlyc3RDaGlsZCgpLT5WYWx1ZSgpLCAKLQkJCQkJCQkJICI8Yj5JIGFtID4gdGhlIHJ1bGVzITwvYj5cbi4uLnNpbmNlIEkgbWFrZSBzeW1ib2xpYyBwdW5zIiwKLQkJCQkJCQkJIHRydWUgKTsKLQl9Ci0JLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi0JLy8gVmlzaXQoKQogCiAKLQotCS8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwotCXByaW50ZiggIlxuKiogRnV6emluZy4uLiAqKlxuIiApOwotCi0JY29uc3QgaW50IEZVWlpfSVRFUkFUSU9OID0gMzAwOwotCi0JLy8gVGhlIG9ubHkgZ29hbCBpcyBub3QgdG8gY3Jhc2ggb24gYmFkIGlucHV0LgotCWludCBsZW4gPSAoaW50KSBzdHJsZW4oIGRlbW9TdGFydCApOwotCWZvciggaW50IGk9MDsgaTxGVVpaX0lURVJBVElPTjsgKytpICkgCi0JewotCQljaGFyKiBkZW1vQ29weSA9IG5ldyBjaGFyWyBsZW4rMSBdOwotCQlzdHJjcHkoIGRlbW9Db3B5LCBkZW1vU3RhcnQgKTsKLQotCQlkZW1vQ29weVsgaSVsZW4gXSA9IChjaGFyKSgoaSsxKSozKTsKLQkJZGVtb0NvcHlbIChpKjcpJWxlbiBdID0gJz4nOwotCQlkZW1vQ29weVsgKGkqMTEpJWxlbiBdID0gJzwnOwotCi0JCVRpWG1sRG9jdW1lbnQgeG1sOwotCQl4bWwuUGFyc2UoIGRlbW9Db3B5ICk7Ci0KLQkJZGVsZXRlIFtdIGRlbW9Db3B5OwotCX0KLQlwcmludGYoICIqKiBGdXp6aW5nIENvbXBsZXRlLiAqKlxuIiApOwotCQogCS8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogCXByaW50ZiAoIlxuKiogQnVnIHJlZ3Jlc3Npb24gdGVzdHMgKipcbiIpOwogCkBAIC0xMTEzLDggKzk1NSw4IEBACiAJCVRpWG1sRG9jdW1lbnQgZG9jOwogCQlkb2MuUGFyc2UoIGRvY3R5cGUgKTsKIAkJCi0JCVhtbFRlc3QoICJQYXJzaW5nIHJlcGVhdGVkIGF0dHJpYnV0ZXMuIiwgdHJ1ZSwgZG9jLkVycm9yKCkgKTsJLy8gaXMgYW4gIGVycm9yIHRvIHRpbnl4bWwgKGRpZG4ndCB1c2UgdG8gYmUsIGJ1dCBjYXVzZWQgaXNzdWVzKQotCQkvL1htbFRlc3QoICJQYXJzaW5nIHJlcGVhdGVkIGF0dHJpYnV0ZXMuIiwgImJsdWUiLCBkb2MuRmlyc3RDaGlsZEVsZW1lbnQoICJlbGVtZW50IiApLT5BdHRyaWJ1dGUoICJhdHRyIiApICk7CisJCVhtbFRlc3QoICJQYXJzaW5nIHJlcGVhdGVkIGF0dHJpYnV0ZXMuIiwgMCwgKGludClkb2MuRXJyb3IoKSApOwkvLyBub3QgYW4gIGVycm9yIHRvIHRpbnl4bWwKKwkJWG1sVGVzdCggIlBhcnNpbmcgcmVwZWF0ZWQgYXR0cmlidXRlcy4iLCAiYmx1ZSIsIGRvYy5GaXJzdENoaWxkRWxlbWVudCggImVsZW1lbnQiICktPkF0dHJpYnV0ZSggImF0dHIiICkgKTsKIAl9CiAKIAl7CkBAIC0xMTQ1LDYgKzk4Nyw4IEBACiAgICAgICAgICAgICBUaVhtbERvY3VtZW50IGRvYzsKICAgICAgICAgICAgIGRvYy5QYXJzZSggc3RyICk7CiAKKwkJCS8vZG9jLlByaW50KCBzdGRvdXQsIDAgKTsKKwogICAgICAgICAgICAgVGlYbWxIYW5kbGUgZG9jSGFuZGxlKCAmZG9jICk7CiAgICAgICAgICAgICBUaVhtbEhhbmRsZSBhSGFuZGxlID0gZG9jSGFuZGxlLkZpcnN0Q2hpbGRFbGVtZW50KCAi5CIgKTsKICAgICAgICAgICAgIFRpWG1sSGFuZGxlIHRIYW5kbGUgPSBhSGFuZGxlLkNoaWxkKCAwICk7CkBAIC0xMTk0LDIwMCArMTAzOCwxNSBAQAogCQlYbWxUZXN0KCAiTG93IGVudGl0aWVzLiIsIHhtbC5GaXJzdENoaWxkRWxlbWVudCgpLT5HZXRUZXh0KCksIHJlc3VsdCApOwogCQl4bWwuUHJpbnQoKTsKIAl9Ci0JewotCQkvLyBCdWcgWyAxNDUxNjQ5IF0gQXR0cmlidXRlIHZhbHVlcyB3aXRoIHRyYWlsaW5nIHF1b3RlcyBub3QgaGFuZGxlZCBjb3JyZWN0bHkKLQkJVGlYbWxEb2N1bWVudCB4bWw7Ci0JCXhtbC5QYXJzZSggIjxmb28gYXR0cmlidXRlPWJhclwiIC8+IiApOwotCQlYbWxUZXN0KCAiVGhyb3cgZXJyb3Igd2l0aCBiYWQgZW5kIHF1b3Rlcy4iLCB4bWwuRXJyb3IoKSwgdHJ1ZSApOwotCX0KLQkjaWZkZWYgVElYTUxfVVNFX1NUTAotCXsKLQkJLy8gQnVnIFsgMTQ0OTQ2MyBdIENvbnNpZGVyIGdlbmVyaWMgcXVlcnkKLQkJVGlYbWxEb2N1bWVudCB4bWw7Ci0JCXhtbC5QYXJzZSggIjxmb28gYmFyPSczJyBiYXJTdHI9J2Egc3RyaW5nJy8+IiApOwotCi0JCVRpWG1sRWxlbWVudCogZWxlID0geG1sLkZpcnN0Q2hpbGRFbGVtZW50KCk7Ci0JCWRvdWJsZSBkOwotCQlpbnQgaTsKLQkJZmxvYXQgZjsKLQkJYm9vbCBiOwotCQlzdGQ6OnN0cmluZyBzdHI7Ci0KLQkJWG1sVGVzdCggIlF1ZXJ5VmFsdWVBdHRyaWJ1dGUiLCBlbGUtPlF1ZXJ5VmFsdWVBdHRyaWJ1dGUoICJiYXIiLCAmZCApLCBUSVhNTF9TVUNDRVNTICk7Ci0JCVhtbFRlc3QoICJRdWVyeVZhbHVlQXR0cmlidXRlIiwgZWxlLT5RdWVyeVZhbHVlQXR0cmlidXRlKCAiYmFyIiwgJmkgKSwgVElYTUxfU1VDQ0VTUyApOwotCQlYbWxUZXN0KCAiUXVlcnlWYWx1ZUF0dHJpYnV0ZSIsIGVsZS0+UXVlcnlWYWx1ZUF0dHJpYnV0ZSggImJhciIsICZmICksIFRJWE1MX1NVQ0NFU1MgKTsKLQkJWG1sVGVzdCggIlF1ZXJ5VmFsdWVBdHRyaWJ1dGUiLCBlbGUtPlF1ZXJ5VmFsdWVBdHRyaWJ1dGUoICJiYXIiLCAmYiApLCBUSVhNTF9XUk9OR19UWVBFICk7Ci0JCVhtbFRlc3QoICJRdWVyeVZhbHVlQXR0cmlidXRlIiwgZWxlLT5RdWVyeVZhbHVlQXR0cmlidXRlKCAibm9iYXIiLCAmYiApLCBUSVhNTF9OT19BVFRSSUJVVEUgKTsKLQkJWG1sVGVzdCggIlF1ZXJ5VmFsdWVBdHRyaWJ1dGUiLCBlbGUtPlF1ZXJ5VmFsdWVBdHRyaWJ1dGUoICJiYXJTdHIiLCAmc3RyICksIFRJWE1MX1NVQ0NFU1MgKTsKLQotCQlYbWxUZXN0KCAiUXVlcnlWYWx1ZUF0dHJpYnV0ZSIsIChkPT0zLjApLCB0cnVlICk7Ci0JCVhtbFRlc3QoICJRdWVyeVZhbHVlQXR0cmlidXRlIiwgKGk9PTMpLCB0cnVlICk7Ci0JCVhtbFRlc3QoICJRdWVyeVZhbHVlQXR0cmlidXRlIiwgKGY9PTMuMGYpLCB0cnVlICk7Ci0JCVhtbFRlc3QoICJRdWVyeVZhbHVlQXR0cmlidXRlIiwgKHN0cj09c3RkOjpzdHJpbmcoICJhIHN0cmluZyIgKSksIHRydWUgKTsKLQl9Ci0JI2VuZGlmCi0KLQkjaWZkZWYgVElYTUxfVVNFX1NUTAotCXsKLQkJLy8gWyAxNTA1MjY3IF0gcmVkdW5kYW50IG1hbGxvYyBpbiBUaVhtbEVsZW1lbnQ6OkF0dHJpYnV0ZQotCQlUaVhtbERvY3VtZW50IHhtbDsKLQkJeG1sLlBhcnNlKCAiPGZvbyBiYXI9JzMnIC8+IiApOwotCQlUaVhtbEVsZW1lbnQqIGVsZSA9IHhtbC5GaXJzdENoaWxkRWxlbWVudCgpOwotCQlkb3VibGUgZDsKLQkJaW50IGk7Ci0KLQkJc3RkOjpzdHJpbmcgYmFyID0gImJhciI7Ci0KLQkJY29uc3Qgc3RkOjpzdHJpbmcqIGF0cnJpYiA9IGVsZS0+QXR0cmlidXRlKCBiYXIgKTsKLQkJZWxlLT5BdHRyaWJ1dGUoIGJhciwgJmQgKTsKLQkJZWxlLT5BdHRyaWJ1dGUoIGJhciwgJmkgKTsKLQotCQlYbWxUZXN0KCAiQXR0cmlidXRlIiwgYXRycmliLT5lbXB0eSgpLCBmYWxzZSApOwotCQlYbWxUZXN0KCAiQXR0cmlidXRlIiwgKGQ9PTMuMCksIHRydWUgKTsKLQkJWG1sVGVzdCggIkF0dHJpYnV0ZSIsIChpPT0zKSwgdHJ1ZSApOwotCX0KLQkjZW5kaWYKLQotCXsKLQkJLy8gWyAxMzU2MDU5IF0gQWxsb3cgVGlYTUxEb2N1bWVudCB0byBvbmx5IGJlIGF0IHRoZSB0b3AgbGV2ZWwKLQkJVGlYbWxEb2N1bWVudCB4bWwsIHhtbDI7Ci0JCXhtbC5JbnNlcnRFbmRDaGlsZCggeG1sMiApOwotCQlYbWxUZXN0KCAiRG9jdW1lbnQgb25seSBhdCB0b3AgbGV2ZWwuIiwgeG1sLkVycm9yKCksIHRydWUgKTsKLQkJWG1sVGVzdCggIkRvY3VtZW50IG9ubHkgYXQgdG9wIGxldmVsLiIsIHhtbC5FcnJvcklkKCksIFRpWG1sQmFzZTo6VElYTUxfRVJST1JfRE9DVU1FTlRfVE9QX09OTFkgKTsKLQl9Ci0KLQl7Ci0JCS8vIFsgMTY2Mzc1OCBdIEZhaWx1cmUgdG8gcmVwb3J0IGVycm9yIG9uIGJhZCBYTUwKLQkJVGlYbWxEb2N1bWVudCB4bWw7Ci0JCXhtbC5QYXJzZSgiPHg+Iik7Ci0JCVhtbFRlc3QoIk1pc3NpbmcgZW5kIHRhZyBhdCBlbmQgb2YgaW5wdXQiLCB4bWwuRXJyb3IoKSwgdHJ1ZSk7Ci0JCXhtbC5QYXJzZSgiPHg+ICIpOwotCQlYbWxUZXN0KCJNaXNzaW5nIGVuZCB0YWcgd2l0aCB0cmFpbGluZyB3aGl0ZXNwYWNlIiwgeG1sLkVycm9yKCksIHRydWUpOwotCX0gCi0KLQl7Ci0JCS8vIFsgMTYzNTcwMSBdIGZhaWwgdG8gcGFyc2UgZmlsZXMgd2l0aCBhIHRhZyBzZXBhcmF0ZWQgaW50byB0d28gbGluZXMKLQkJLy8gSSdtIG5vdCBzdXJlIHRoaXMgaXMgYSBidWcuIE1hcmtlZCAncGVuZGluZycgZm9yIGZlZWRiYWNrLgotCQlUaVhtbERvY3VtZW50IHhtbDsKLQkJeG1sLlBhcnNlKCAiPHRpdGxlPjxwPnRleHQ8L3Bcbj48dGl0bGU+IiApOwotCQkvL3htbC5QcmludCgpOwotCQkvL1htbFRlc3QoICJUYWcgc3BsaXQgYnkgbmV3bGluZSIsIHhtbC5FcnJvcigpLCBmYWxzZSApOwotCX0KLQotCSNpZmRlZiBUSVhNTF9VU0VfU1RMCi0JewotCQkvLyBbIDE0NzUyMDEgXSBUaW55WE1MIHBhcnNlcyBlbnRpdGllcyBpbiBjb21tZW50cwotCQlUaVhtbERvY3VtZW50IHhtbDsKLQkJaXN0cmluZ3N0cmVhbSBwYXJzZTEoICI8IS0tIGRlY2xhcmF0aW9ucyBmb3IgPGhlYWQ+ICYgPGJvZHk+IC0tPiIKLQkJCQkJCSAgICAgICI8IS0tIGZhciAmYW1wOyBhd2F5IC0tPiIgKTsKLQkJcGFyc2UxID4+IHhtbDsKLQotCQlUaVhtbE5vZGUqIGUwID0geG1sLkZpcnN0Q2hpbGQoKTsKLQkJVGlYbWxOb2RlKiBlMSA9IGUwLT5OZXh0U2libGluZygpOwotCQlUaVhtbENvbW1lbnQqIGMwID0gZTAtPlRvQ29tbWVudCgpOwotCQlUaVhtbENvbW1lbnQqIGMxID0gZTEtPlRvQ29tbWVudCgpOwotCi0JCVhtbFRlc3QoICJDb21tZW50cyBpZ25vcmUgZW50aXRpZXMuIiwgIiBkZWNsYXJhdGlvbnMgZm9yIDxoZWFkPiAmIDxib2R5PiAiLCBjMC0+VmFsdWUoKSwgdHJ1ZSApOwotCQlYbWxUZXN0KCAiQ29tbWVudHMgaWdub3JlIGVudGl0aWVzLiIsICIgZmFyICZhbXA7IGF3YXkgIiwgYzEtPlZhbHVlKCksIHRydWUgKTsKLQl9Ci0JI2VuZGlmCi0KLQl7Ci0JCS8vIFsgMTQ3NTIwMSBdIFRpbnlYTUwgcGFyc2VzIGVudGl0aWVzIGluIGNvbW1lbnRzCi0JCVRpWG1sRG9jdW1lbnQgeG1sOwotCQl4bWwuUGFyc2UoIjwhLS0gZGVjbGFyYXRpb25zIGZvciA8aGVhZD4gJiA8Ym9keT4gLS0+IgotCQkJCSAgIjwhLS0gZmFyICZhbXA7IGF3YXkgLS0+IiApOwotCi0JCVRpWG1sTm9kZSogZTAgPSB4bWwuRmlyc3RDaGlsZCgpOwotCQlUaVhtbE5vZGUqIGUxID0gZTAtPk5leHRTaWJsaW5nKCk7Ci0JCVRpWG1sQ29tbWVudCogYzAgPSBlMC0+VG9Db21tZW50KCk7Ci0JCVRpWG1sQ29tbWVudCogYzEgPSBlMS0+VG9Db21tZW50KCk7Ci0KLQkJWG1sVGVzdCggIkNvbW1lbnRzIGlnbm9yZSBlbnRpdGllcy4iLCAiIGRlY2xhcmF0aW9ucyBmb3IgPGhlYWQ+ICYgPGJvZHk+ICIsIGMwLT5WYWx1ZSgpLCB0cnVlICk7Ci0JCVhtbFRlc3QoICJDb21tZW50cyBpZ25vcmUgZW50aXRpZXMuIiwgIiBmYXIgJmFtcDsgYXdheSAiLCBjMS0+VmFsdWUoKSwgdHJ1ZSApOwotCX0KLQotCXsKLQkJVGlYbWxEb2N1bWVudCB4bWw7Ci0JCXhtbC5QYXJzZSggIjxQYXJlbnQ+IgotCQkJCQkJIjxjaGlsZDEgYXR0PScnLz4iCi0JCQkJCQkiPCEtLSBXaXRoIHRoaXMgY29tbWVudCwgY2hpbGQyIHdpbGwgbm90IGJlIHBhcnNlZCEgLS0+IgotCQkJCQkJIjxjaGlsZDIgYXR0PScnLz4iCi0JCQkJCSI8L1BhcmVudD4iICk7Ci0JCWludCBjb3VudCA9IDA7Ci0KLQkJVGlYbWxOb2RlKiBlbGUgPSAwOwotCQl3aGlsZSAoIChlbGUgPSB4bWwuRmlyc3RDaGlsZEVsZW1lbnQoICJQYXJlbnQiICktPkl0ZXJhdGVDaGlsZHJlbiggZWxlICkgKSAhPSAwICkgewotCQkJKytjb3VudDsKLQkJfQotCQlYbWxUZXN0KCAiQ29tbWVudHMgaXRlcmF0ZSBjb3JyZWN0bHkuIiwgMywgY291bnQgKTsKLQl9Ci0KLQl7Ci0JCS8vIHRyeWluZyB0byByZXBybyBdMTg3NDMwMV0uIElmIGl0IGRvZXNuJ3QgZ28gaW50byBhbiBpbmZpbml0ZSBsb29wLCBhbGwgaXMgd2VsbC4KLQkJdW5zaWduZWQgY2hhciBidWZbXSA9ICI8P3htbCB2ZXJzaW9uPVwiMS4wXCIgZW5jb2Rpbmc9XCJ1dGYtOFwiPz48ZmVlZD48IVtDREFUQVtUZXN0IFhNTGJsYWJsYWJsYWxibGJsIjsKLQkJYnVmWzYwXSA9IDIzOTsKLQkJYnVmWzYxXSA9IDA7Ci0KLQkJVGlYbWxEb2N1bWVudCBkb2M7Ci0JCWRvYy5QYXJzZSggKGNvbnN0IGNoYXIqKWJ1Zik7Ci0JfSAKLQotCi0JewotCQkvLyBidWcgMTgyNzI0OCBFcnJvciB3aGlsZSBwYXJzaW5nIGEgbGl0dGxlIGJpdCBtYWxmb3JtZWQgZmlsZQotCQkvLyBBY3R1YWxseSBub3QgbWFsZm9ybWVkIC0gc2hvdWxkIHdvcmsuCi0JCVRpWG1sRG9jdW1lbnQgeG1sOwotCQl4bWwuUGFyc2UoICI8YXR0cmlidXRlbGlzdD4gPC9hdHRyaWJ1dGVsaXN0ID4iICk7Ci0JCVhtbFRlc3QoICJIYW5kbGUgZW5kIHRhZyB3aGl0ZXNwYWNlIiwgZmFsc2UsIHhtbC5FcnJvcigpICk7Ci0JfQotCi0JewotCQkvLyBUaGlzIG9uZSBtdXN0IG5vdCByZXN1bHQgaW4gYW4gaW5maW5pdGUgbG9vcAotCQlUaVhtbERvY3VtZW50IHhtbDsKLQkJeG1sLlBhcnNlKCAiPGluZmluaXRlPmxvb3AiICk7Ci0JCVhtbFRlc3QoICJJbmZpbml0ZSBsb29wIHRlc3QuIiwgdHJ1ZSwgdHJ1ZSApOwotCX0KLQotCXsKLQkJLy8gMTcwOTkwNCAtIGNhbiBub3QgcmVwcm8gdGhlIGNyYXNoCi0JCXsKLQkJCVRpWG1sRG9jdW1lbnQgeG1sOwotCQkJeG1sLlBhcnNlKCAiPHRhZz4vPC90YWc+IiApOwotCQkJWG1sVGVzdCggIk9kZCBYTUwgcGFyc2luZy4iLCB4bWwuRmlyc3RDaGlsZCgpLT5WYWx1ZSgpLCAidGFnIiApOwotCQl9Ci0JCS8qIENvdWxkIG5vdCByZXByby4gewotCQkJVGlYbWxEb2N1bWVudCB4bWw7Ci0JCQl4bWwuTG9hZEZpbGUoICJFUVVJX0ludmVudG9yeS54bWwiICk7Ci0JCQkvL1htbFRlc3QoICJPZGQgWE1MIHBhcnNpbmcuIiwgeG1sLkZpcnN0Q2hpbGRFbGVtZW50KCktPlZhbHVlKCksICJYTUwiICk7Ci0JCQlUaVhtbFByaW50ZXIgcHJpbnRlcjsKLQkJCXhtbC5BY2NlcHQoICZwcmludGVyICk7Ci0JCQlmcHJpbnRmKCBzdGRvdXQsICIlcyIsIHByaW50ZXIuQ1N0cigpICk7Ci0JCX0qLwotCX0KLQotCS8qICAxNDE3NzE3IGV4cGVyaW1lbnQKLQl7Ci0JCVRpWG1sRG9jdW1lbnQgeG1sOwotCQl4bWwuUGFyc2UoIjx0ZXh0PkRhbiAmIFRyYWNpZTwvdGV4dD4iKTsKLQkJeG1sLlByaW50KHN0ZG91dCk7Ci0JfQotCXsKLQkJVGlYbWxEb2N1bWVudCB4bWw7Ci0JCXhtbC5QYXJzZSgiPHRleHQ+RGFuICZmb287IFRyYWNpZTwvdGV4dD4iKTsKLQkJeG1sLlByaW50KHN0ZG91dCk7Ci0JfQotCSovCiAKIAkjaWYgZGVmaW5lZCggV0lOMzIgKSAmJiBkZWZpbmVkKCBUVU5FICkKLQlfQ3J0TWVtQ2hlY2twb2ludCggJmVuZE1lbVN0YXRlICk7Ci0JLy9fQ3J0TWVtRHVtcFN0YXRpc3RpY3MoICZlbmRNZW1TdGF0ZSApOwotCi0JX0NydE1lbVN0YXRlIGRpZmZNZW1TdGF0ZTsKLQlfQ3J0TWVtRGlmZmVyZW5jZSggJmRpZmZNZW1TdGF0ZSwgJnN0YXJ0TWVtU3RhdGUsICZlbmRNZW1TdGF0ZSApOwotCV9DcnRNZW1EdW1wU3RhdGlzdGljcyggJmRpZmZNZW1TdGF0ZSApOworCVF1ZXJ5UGVyZm9ybWFuY2VDb3VudGVyKCAoTEFSR0VfSU5URUdFUiopICgmZW5kKSApOworCVF1ZXJ5UGVyZm9ybWFuY2VGcmVxdWVuY3koIChMQVJHRV9JTlRFR0VSKikgKCZmcmVxKSApOworCXByaW50ZiggIlRpbWUgZm9yIHJ1bjogJWZcbiIsICggZG91YmxlICkoIGVuZC1zdGFydCApIC8gKGRvdWJsZSkgZnJlcSApOwogCSNlbmRpZgogCiAJcHJpbnRmICgiXG5QYXNzICVkLCBGYWlsICVkXG4iLCBnUGFzcywgZ0ZhaWwpOwogCXJldHVybiBnRmFpbDsKIH0KKworCg==