CuEFChFkbWkvY29tbW9ucy5wcm90bxIDZG1pKj8KBlN0YXR1cxIUChBVTkRFRklORURfU1RBVFVTEAASDQoJT0tfU1RBVFVTEAESEAoMRVJST1JfU1RBVFVTEAIqPwoITG9nTGV2ZWwSCQoFVFJBQ0UQABIJCgVERUJVRxABEggKBElORk8QAhIICgRXQVJOEAMSCQoFRVJST1IQBEI7WjlnaXRodWIuY29tL29wZW5jb3JkL2RldmljZS1tYW5hZ2VtZW50LWludGVyZmFjZS92My9nby9kbWlK/wMKBhIEAAAUAQoICgEMEgMAABIKCAoBCBIDAgBQCgkKAggLEgMCAFAKCAoBAhIDAwAMClQKAgUAEgQHAAsBMkggQ29tbW9uIHN0cnVjdHVyZXMgdXNlZCBhY3Jvc3MgdGhlIGRpZmZlcmVudCBEZXZpY2UgTWFuYWdlbWVudCBzZXJ2aWNlcwoKCgoDBQABEgMHBQsKCwoEBQACABIDCAQZCgwKBQUAAgABEgMIBBQKDAoFBQACAAISAwgXGAoLCgQFAAIBEgMJBBIKDAoFBQACAQESAwkEDQoMCgUFAAIBAhIDCRARCgsKBAUAAgISAwoEFQoMCgUFAAICARIDCgQQCgwKBQUAAgICEgMKExQKFgoCBQESBA4AFAEaCkxvZyBMZXZlbAoKCgoDBQEBEgMOBQ0KCwoEBQECABIDDwQOCgwKBQUBAgABEgMPBAkKDAoFBQECAAISAw8MDQoLCgQFAQIBEgMQBA4KDAoFBQECAQESAxAECQoMCgUFAQIBAhIDEAwNCgsKBAUBAgISAxEEDgoMCgUFAQICARIDEQQICgwKBQUBAgICEgMRDA0KCwoEBQECAxIDEgQOCgwKBQUBAgMBEgMSBAgKDAoFBQECAwISAxIMDQoLCgQFAQIEEgMTBA4KDAoFBQECBAESAxMECQoMCgUFAQIEAhIDEwwNYgZwcm90bzMK8i8KH2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiI7CglUaW1lc3RhbXASGAoHc2Vjb25kcxgBIAEoA1IHc2Vjb25kcxIUCgVuYW5vcxgCIAEoBVIFbmFub3NCfgoTY29tLmdvb2dsZS5wcm90b2J1ZkIOVGltZXN0YW1wUHJvdG9QAVorZ2l0aHViLmNvbS9nb2xhbmcvcHJvdG9idWYvcHR5cGVzL3RpbWVzdGFtcPgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0r4LQoHEgUeAIgBAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIAOwoJCgIIJRIDIgA7CggKAQgSAyMAHwoJCgIIHxIDIwAfCggKAQgSAyQAQgoJCgIICxIDJABCCggKAQgSAyUALAoJCgIIARIDJQAsCggKAQgSAyYALwoJCgIICBIDJgAvCggKAQgSAycAIgoJCgIIChIDJwAiCggKAQgSAygAIQoJCgIIJBIDKAAhCvEbCgIEABIFfACIAQEa4xsgQSBUaW1lc3RhbXAgcmVwcmVzZW50cyBhIHBvaW50IGluIHRpbWUgaW5kZXBlbmRlbnQgb2YgYW55IHRpbWUgem9uZSBvciBsb2NhbAogY2FsZW5kYXIsIGVuY29kZWQgYXMgYSBjb3VudCBvZiBzZWNvbmRzIGFuZCBmcmFjdGlvbnMgb2Ygc2Vjb25kcyBhdAogbmFub3NlY29uZCByZXNvbHV0aW9uLiBUaGUgY291bnQgaXMgcmVsYXRpdmUgdG8gYW4gZXBvY2ggYXQgVVRDIG1pZG5pZ2h0IG9uCiBKYW51YXJ5IDEsIDE5NzAsIGluIHRoZSBwcm9sZXB0aWMgR3JlZ29yaWFuIGNhbGVuZGFyIHdoaWNoIGV4dGVuZHMgdGhlCiBHcmVnb3JpYW4gY2FsZW5kYXIgYmFja3dhcmRzIHRvIHllYXIgb25lLgoKIEFsbCBtaW51dGVzIGFyZSA2MCBzZWNvbmRzIGxvbmcuIExlYXAgc2Vjb25kcyBhcmUgInNtZWFyZWQiIHNvIHRoYXQgbm8gbGVhcAogc2Vjb25kIHRhYmxlIGlzIG5lZWRlZCBmb3IgaW50ZXJwcmV0YXRpb24sIHVzaW5nIGEgWzI0LWhvdXIgbGluZWFyCiBzbWVhcl0oaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vdGltZS9zbWVhcikuCgogVGhlIHJhbmdlIGlzIGZyb20gMDAwMS0wMS0wMVQwMDowMDowMFogdG8gOTk5OS0xMi0zMVQyMzo1OTo1OS45OTk5OTk5OTlaLiBCeQogcmVzdHJpY3RpbmcgdG8gdGhhdCByYW5nZSwgd2UgZW5zdXJlIHRoYXQgd2UgY2FuIGNvbnZlcnQgdG8gYW5kIGZyb20gW1JGQwogMzMzOV0oaHR0cHM6Ly93d3cuaWV0Zi5vcmcvcmZjL3JmYzMzMzkudHh0KSBkYXRlIHN0cmluZ3MuCgogIyBFeGFtcGxlcwoKIEV4YW1wbGUgMTogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBQT1NJWCBgdGltZSgpYC4KCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcDsKICAgICB0aW1lc3RhbXAuc2V0X3NlY29uZHModGltZShOVUxMKSk7CiAgICAgdGltZXN0YW1wLnNldF9uYW5vcygwKTsKCiBFeGFtcGxlIDI6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gUE9TSVggYGdldHRpbWVvZmRheSgpYC4KCiAgICAgc3RydWN0IHRpbWV2YWwgdHY7CiAgICAgZ2V0dGltZW9mZGF5KCZ0diwgTlVMTCk7CgogICAgIFRpbWVzdGFtcCB0aW1lc3RhbXA7CiAgICAgdGltZXN0YW1wLnNldF9zZWNvbmRzKHR2LnR2X3NlYyk7CiAgICAgdGltZXN0YW1wLnNldF9uYW5vcyh0di50dl91c2VjICogMTAwMCk7CgogRXhhbXBsZSAzOiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIFdpbjMyIGBHZXRTeXN0ZW1UaW1lQXNGaWxlVGltZSgpYC4KCiAgICAgRklMRVRJTUUgZnQ7CiAgICAgR2V0U3lzdGVtVGltZUFzRmlsZVRpbWUoJmZ0KTsKICAgICBVSU5UNjQgdGlja3MgPSAoKChVSU5UNjQpZnQuZHdIaWdoRGF0ZVRpbWUpIDw8IDMyKSB8IGZ0LmR3TG93RGF0ZVRpbWU7CgogICAgIC8vIEEgV2luZG93cyB0aWNrIGlzIDEwMCBuYW5vc2Vjb25kcy4gV2luZG93cyBlcG9jaCAxNjAxLTAxLTAxVDAwOjAwOjAwWgogICAgIC8vIGlzIDExNjQ0NDczNjAwIHNlY29uZHMgYmVmb3JlIFVuaXggZXBvY2ggMTk3MC0wMS0wMVQwMDowMDowMFouCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcDsKICAgICB0aW1lc3RhbXAuc2V0X3NlY29uZHMoKElOVDY0KSAoKHRpY2tzIC8gMTAwMDAwMDApIC0gMTE2NDQ0NzM2MDBMTCkpOwogICAgIHRpbWVzdGFtcC5zZXRfbmFub3MoKElOVDMyKSAoKHRpY2tzICUgMTAwMDAwMDApICogMTAwKSk7CgogRXhhbXBsZSA0OiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIEphdmEgYFN5c3RlbS5jdXJyZW50VGltZU1pbGxpcygpYC4KCiAgICAgbG9uZyBtaWxsaXMgPSBTeXN0ZW0uY3VycmVudFRpbWVNaWxsaXMoKTsKCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcCA9IFRpbWVzdGFtcC5uZXdCdWlsZGVyKCkuc2V0U2Vjb25kcyhtaWxsaXMgLyAxMDAwKQogICAgICAgICAuc2V0TmFub3MoKGludCkgKChtaWxsaXMgJSAxMDAwKSAqIDEwMDAwMDApKS5idWlsZCgpOwoKCiBFeGFtcGxlIDU6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gY3VycmVudCB0aW1lIGluIFB5dGhvbi4KCiAgICAgdGltZXN0YW1wID0gVGltZXN0YW1wKCkKICAgICB0aW1lc3RhbXAuR2V0Q3VycmVudFRpbWUoKQoKICMgSlNPTiBNYXBwaW5nCgogSW4gSlNPTiBmb3JtYXQsIHRoZSBUaW1lc3RhbXAgdHlwZSBpcyBlbmNvZGVkIGFzIGEgc3RyaW5nIGluIHRoZQogW1JGQyAzMzM5XShodHRwczovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzMzOS50eHQpIGZvcm1hdC4gVGhhdCBpcywgdGhlCiBmb3JtYXQgaXMgInt5ZWFyfS17bW9udGh9LXtkYXl9VHtob3VyfTp7bWlufTp7c2VjfVsue2ZyYWNfc2VjfV1aIgogd2hlcmUge3llYXJ9IGlzIGFsd2F5cyBleHByZXNzZWQgdXNpbmcgZm91ciBkaWdpdHMgd2hpbGUge21vbnRofSwge2RheX0sCiB7aG91cn0sIHttaW59LCBhbmQge3NlY30gYXJlIHplcm8tcGFkZGVkIHRvIHR3byBkaWdpdHMgZWFjaC4gVGhlIGZyYWN0aW9uYWwKIHNlY29uZHMsIHdoaWNoIGNhbiBnbyB1cCB0byA5IGRpZ2l0cyAoaS5lLiB1cCB0byAxIG5hbm9zZWNvbmQgcmVzb2x1dGlvbiksCiBhcmUgb3B0aW9uYWwuIFRoZSAiWiIgc3VmZml4IGluZGljYXRlcyB0aGUgdGltZXpvbmUgKCJVVEMiKTsgdGhlIHRpbWV6b25lCiBpcyByZXF1aXJlZC4gQSBwcm90bzMgSlNPTiBzZXJpYWxpemVyIHNob3VsZCBhbHdheXMgdXNlIFVUQyAoYXMgaW5kaWNhdGVkIGJ5CiAiWiIpIHdoZW4gcHJpbnRpbmcgdGhlIFRpbWVzdGFtcCB0eXBlIGFuZCBhIHByb3RvMyBKU09OIHBhcnNlciBzaG91bGQgYmUKIGFibGUgdG8gYWNjZXB0IGJvdGggVVRDIGFuZCBvdGhlciB0aW1lem9uZXMgKGFzIGluZGljYXRlZCBieSBhbiBvZmZzZXQpLgoKIEZvciBleGFtcGxlLCAiMjAxNy0wMS0xNVQwMTozMDoxNS4wMVoiIGVuY29kZXMgMTUuMDEgc2Vjb25kcyBwYXN0CiAwMTozMCBVVEMgb24gSmFudWFyeSAxNSwgMjAxNy4KCiBJbiBKYXZhU2NyaXB0LCBvbmUgY2FuIGNvbnZlcnQgYSBEYXRlIG9iamVjdCB0byB0aGlzIGZvcm1hdCB1c2luZyB0aGUKIHN0YW5kYXJkIFt0b0lTT1N0cmluZygpXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9EYXRlL3RvSVNPU3RyaW5nKQogbWV0aG9kLiBJbiBQeXRob24sIGEgc3RhbmRhcmQgYGRhdGV0aW1lLmRhdGV0aW1lYCBvYmplY3QgY2FuIGJlIGNvbnZlcnRlZAogdG8gdGhpcyBmb3JtYXQgdXNpbmcgW2BzdHJmdGltZWBdKGh0dHBzOi8vZG9jcy5weXRob24ub3JnLzIvbGlicmFyeS90aW1lLmh0bWwjdGltZS5zdHJmdGltZSkKIHdpdGggdGhlIHRpbWUgZm9ybWF0IHNwZWMgJyVZLSVtLSVkVCVIOiVNOiVTLiVmWicuIExpa2V3aXNlLCBpbiBKYXZhLCBvbmUKIGNhbiB1c2UgdGhlIEpvZGEgVGltZSdzIFtgSVNPRGF0ZVRpbWVGb3JtYXQuZGF0ZVRpbWUoKWBdKAogaHR0cDovL3d3dy5qb2RhLm9yZy9qb2RhLXRpbWUvYXBpZG9jcy9vcmcvam9kYS90aW1lL2Zvcm1hdC9JU09EYXRlVGltZUZvcm1hdC5odG1sI2RhdGVUaW1lJTJEJTJECiApIHRvIG9idGFpbiBhIGZvcm1hdHRlciBjYXBhYmxlIG9mIGdlbmVyYXRpbmcgdGltZXN0YW1wcyBpbiB0aGlzIGZvcm1hdC4KCgoKCgoDBAABEgN8CBEKnQEKBAQAAgASBIEBAhQajgEgUmVwcmVzZW50cyBzZWNvbmRzIG9mIFVUQyB0aW1lIHNpbmNlIFVuaXggZXBvY2gKIDE5NzAtMDEtMDFUMDA6MDA6MDBaLiBNdXN0IGJlIGZyb20gMDAwMS0wMS0wMVQwMDowMDowMFogdG8KIDk5OTktMTItMzFUMjM6NTk6NTlaIGluY2x1c2l2ZS4KCg4KBQQAAgAEEgWBAQJ8EwoNCgUEAAIABRIEgQECBwoNCgUEAAIAARIEgQEIDwoNCgUEAAIAAxIEgQESEwrlAQoEBAACARIEhwECEhrWASBOb24tbmVnYXRpdmUgZnJhY3Rpb25zIG9mIGEgc2Vjb25kIGF0IG5hbm9zZWNvbmQgcmVzb2x1dGlvbi4gTmVnYXRpdmUKIHNlY29uZCB2YWx1ZXMgd2l0aCBmcmFjdGlvbnMgbXVzdCBzdGlsbCBoYXZlIG5vbi1uZWdhdGl2ZSBuYW5vcyB2YWx1ZXMKIHRoYXQgY291bnQgZm9yd2FyZCBpbiB0aW1lLiBNdXN0IGJlIGZyb20gMCB0byA5OTksOTk5LDk5OQogaW5jbHVzaXZlLgoKDwoFBAACAQQSBocBAoEBFAoNCgUEAAIBBRIEhwECBwoNCgUEAAIBARIEhwEIDQoNCgUEAAIBAxIEhwEQEWIGcHJvdG8zCs+YAQoMZG1pL2h3LnByb3RvEgNkbWkaH2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAucHJvdG8iGgoEVXVpZBISCgR1dWlkGAEgASgJUgR1dWlkIisKCkhhcmR3YXJlSUQSHQoEdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgR1dWlkIhcKA1VyaRIQCgN1cmkYASABKAlSA3VyaSKEAwoOQ29tcG9uZW50U3RhdGUSSAoSc3RhdGVfbGFzdF9jaGFuZ2VkGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIQc3RhdGVMYXN0Q2hhbmdlZBI5CgthZG1pbl9zdGF0ZRgCIAEoDjIYLmRtaS5Db21wb25lbnRBZG1pblN0YXRlUgphZG1pblN0YXRlEjYKCm9wZXJfc3RhdGUYAyABKA4yFy5kbWkuQ29tcG9uZW50T3BlclN0YXRlUglvcGVyU3RhdGUSOQoLdXNhZ2Vfc3RhdGUYBCABKA4yGC5kbWkuQ29tcG9uZW50VXNhZ2VTdGF0ZVIKdXNhZ2VTdGF0ZRI5CgthbGFybV9zdGF0ZRgFIAEoDjIYLmRtaS5Db21wb25lbnRBbGFybVN0YXRlUgphbGFybVN0YXRlEj8KDXN0YW5kYnlfc3RhdGUYBiABKA4yGi5kbWkuQ29tcG9uZW50U3RhbmRieVN0YXRlUgxzdGFuZGJ5U3RhdGUi6wIKE0NvbXBvbmVudFNlbnNvckRhdGESFAoFdmFsdWUYASABKAVSBXZhbHVlEiYKBHR5cGUYAiABKA4yEi5kbWkuRGF0YVZhbHVlVHlwZVIEdHlwZRIlCgVzY2FsZRgDIAEoDjIPLmRtaS5WYWx1ZVNjYWxlUgVzY2FsZRIcCglwcmVjaXNpb24YBCABKAVSCXByZWNpc2lvbhIpCgZzdGF0dXMYBSABKA4yES5kbWkuU2Vuc29yU3RhdHVzUgZzdGF0dXMSIwoNdW5pdHNfZGlzcGxheRgGIAEoCVIMdW5pdHNEaXNwbGF5EjgKCXRpbWVzdGFtcBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSCXRpbWVzdGFtcBIqChF2YWx1ZV91cGRhdGVfcmF0ZRgIIAEoDVIPdmFsdWVVcGRhdGVSYXRlEhsKCWRhdGFfdHlwZRgJIAEoCVIIZGF0YVR5cGUinAUKF1BvcnRDb21wb25lbnRBdHRyaWJ1dGVzElEKDmNvbm5lY3Rvcl90eXBlGAEgASgOMiouZG1pLlBvcnRDb21wb25lbnRBdHRyaWJ1dGVzLkNvbm5lY3RvclR5cGVSDWNvbm5lY3RvclR5cGUSOAoFc3BlZWQYAiABKA4yIi5kbWkuUG9ydENvbXBvbmVudEF0dHJpYnV0ZXMuU3BlZWRSBXNwZWVkEkEKCHByb3RvY29sGAMgASgOMiUuZG1pLlBvcnRDb21wb25lbnRBdHRyaWJ1dGVzLlByb3RvY29sUghwcm90b2NvbBIlCg5waHlzaWNhbF9sYWJlbBgEIAEoCVINcGh5c2ljYWxMYWJlbCJlCg1Db25uZWN0b3JUeXBlEhwKGENPTk5FQ1RPUl9UWVBFX1VOREVGSU5FRBAAEggKBFJKNDUQARIMCghGSUJFUl9MQxACEg8KC0ZJQkVSX1NDX1BDEAMSDQoJRklCRVJfTVBPEAQirgEKBVNwZWVkEhMKD1NQRUVEX1VOREVGSU5FRBAAEgsKB0RZTkFNSUMQARINCglHSUdBQklUXzEQAhIOCgpHSUdBQklUXzEwEAMSDgoKR0lHQUJJVF8yNRAEEg4KCkdJR0FCSVRfNDAQBRIPCgtHSUdBQklUXzEwMBAGEg8KC0dJR0FCSVRfNDAwEAcSEAoMTUVHQUJJVF8yNTAwEAgSEAoMTUVHQUJJVF8xMjUwEAkicgoIUHJvdG9jb2wSFgoSUFJPVE9DT0xfVU5ERUZJTkVEEAASDAoIRVRIRVJORVQQARIICgRHUE9OEAISCQoFWEdQT04QAxIKCgZYR1NQT04QBBIJCgVHRkFTVBAFEgoKBlNFUklBTBAGEggKBEVQT04QByJFChxDb250YWluZXJDb21wb25lbnRBdHRyaWJ1dGVzEiUKDnBoeXNpY2FsX2xhYmVsGAEgASgJUg1waHlzaWNhbExhYmVsIsUBChZQc3VDb21wb25lbnRBdHRyaWJ1dGVzElkKEXN1cHBvcnRlZF92b2x0YWdlGAEgASgOMiwuZG1pLlBzdUNvbXBvbmVudEF0dHJpYnV0ZXMuU3VwcG9ydGVkVm9sdGFnZVIQc3VwcG9ydGVkVm9sdGFnZSJQChBTdXBwb3J0ZWRWb2x0YWdlEh8KG1NVUFBPUlRFRF9WT0xUQUdFX1VOREVGSU5FRBAAEgcKA1Y0OBABEggKBFYyMzAQAhIICgRWMTE1EAMi0gUKH1RyYW5zY2VpdmVyQ29tcG9uZW50c0F0dHJpYnV0ZXMSUAoLZm9ybV9mYWN0b3IYASABKA4yLy5kbWkuVHJhbnNjZWl2ZXJDb21wb25lbnRzQXR0cmlidXRlcy5Gb3JtRmFjdG9yUgpmb3JtRmFjdG9yEkgKCnRyYW5zX3R5cGUYAiABKA4yKS5kbWkuVHJhbnNjZWl2ZXJDb21wb25lbnRzQXR0cmlidXRlcy5UeXBlUgl0cmFuc1R5cGUSIQoMbWF4X2Rpc3RhbmNlGAMgASgNUgttYXhEaXN0YW5jZRI9ChJtYXhfZGlzdGFuY2Vfc2NhbGUYBCABKA4yDy5kbWkuVmFsdWVTY2FsZVIQbWF4RGlzdGFuY2VTY2FsZRIjCg1yeF93YXZlbGVuZ3RoGAUgAygNUgxyeFdhdmVsZW5ndGgSIwoNdHhfd2F2ZWxlbmd0aBgGIAMoDVIMdHhXYXZlbGVuZ3RoEjoKEHdhdmVsZW5ndGhfc2NhbGUYByABKA4yDy5kbWkuVmFsdWVTY2FsZVIPd2F2ZWxlbmd0aFNjYWxlIsABCgpGb3JtRmFjdG9yEhcKE0ZPUk1fRkFDVE9SX1VOS05PV04QABIICgRRU0ZQEAESDQoJUVNGUF9QTFVTEAISCgoGUVNGUDI4EAMSBwoDU0ZQEAQSDAoIU0ZQX1BMVVMQBRIHCgNYRlAQBhIICgRDRlA0EAcSCAoEQ0ZQMhAIEggKBENQQUsQCRIGCgJYMhAKEgkKBU9USEVSEAsSBwoDQ0ZQEAwSDAoIQ0ZQMl9BQ08QDRIMCghDRlAyX0RDTxAOImgKBFR5cGUSEAoMVFlQRV9VTktOT1dOEAASDAoIRVRIRVJORVQQARIICgRHUE9OEAISCQoFWEdQT04QAxIKCgZYR1NQT04QBBIICgRDUE9OEAUSCwoHTkdfUE9OMhAGEggKBEVQT04QByLZBwoJQ29tcG9uZW50EhIKBG5hbWUYASABKAlSBG5hbWUSKAoFY2xhc3MYAiABKA4yEi5kbWkuQ29tcG9uZW50VHlwZVIFY2xhc3MSIAoLZGVzY3JpcHRpb24YAyABKAlSC2Rlc2NyaXB0aW9uEhYKBnBhcmVudBgEIAEoCVIGcGFyZW50EiQKDnBhcmVudF9yZWxfcG9zGAUgASgFUgxwYXJlbnRSZWxQb3MSKgoIY2hpbGRyZW4YBiADKAsyDi5kbWkuQ29tcG9uZW50UghjaGlsZHJlbhIhCgxoYXJkd2FyZV9yZXYYByABKAlSC2hhcmR3YXJlUmV2EiEKDGZpcm13YXJlX3JldhgIIAEoCVILZmlybXdhcmVSZXYSIQoMc29mdHdhcmVfcmV2GAkgASgJUgtzb2Z0d2FyZVJldhIdCgpzZXJpYWxfbnVtGAogASgJUglzZXJpYWxOdW0SGQoIbWZnX25hbWUYCyABKAlSB21mZ05hbWUSHQoKbW9kZWxfbmFtZRgMIAEoCVIJbW9kZWxOYW1lEhQKBWFsaWFzGA0gASgJUgVhbGlhcxIZCghhc3NldF9pZBgOIAEoCVIHYXNzZXRJZBIVCgZpc19mcnUYDyABKAhSBWlzRnJ1EjUKCG1mZ19kYXRlGBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIHbWZnRGF0ZRIaCgN1cmkYESABKAsyCC5kbWkuVXJpUgN1cmkSHQoEdXVpZBgSIAEoCzIJLmRtaS5VdWlkUgR1dWlkEikKBXN0YXRlGBMgASgLMhMuZG1pLkNvbXBvbmVudFN0YXRlUgVzdGF0ZRI5CgtzZW5zb3JfZGF0YRgUIAMoCzIYLmRtaS5Db21wb25lbnRTZW5zb3JEYXRhUgpzZW5zb3JEYXRhEjsKCXBvcnRfYXR0chgyIAEoCzIcLmRtaS5Qb3J0Q29tcG9uZW50QXR0cmlidXRlc0gAUghwb3J0QXR0chJKCg5jb250YWluZXJfYXR0chgzIAEoCzIhLmRtaS5Db250YWluZXJDb21wb25lbnRBdHRyaWJ1dGVzSABSDWNvbnRhaW5lckF0dHISOAoIcHN1X2F0dHIYNCABKAsyGy5kbWkuUHN1Q29tcG9uZW50QXR0cmlidXRlc0gAUgdwc3VBdHRyElEKEHRyYW5zY2VpdmVyX2F0dHIYNSABKAsyJC5kbWkuVHJhbnNjZWl2ZXJDb21wb25lbnRzQXR0cmlidXRlc0gAUg90cmFuc2NlaXZlckF0dHJCCgoIc3BlY2lmaWMiqAEKCEhhcmR3YXJlEjsKC2xhc3RfY2hhbmdlGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIKbGFzdENoYW5nZRIiCgRyb290GAIgASgLMg4uZG1pLkNvbXBvbmVudFIEcm9vdBI7CgtsYXN0X2Jvb3RlZBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSCmxhc3RCb290ZWQiqQIKE01vZGlmaWFibGVDb21wb25lbnQSEgoEbmFtZRgBIAEoCVIEbmFtZRIoCgVjbGFzcxgCIAEoDjISLmRtaS5Db21wb25lbnRUeXBlUgVjbGFzcxImCgZwYXJlbnQYAyABKAsyDi5kbWkuQ29tcG9uZW50UgZwYXJlbnQSJAoOcGFyZW50X3JlbF9wb3MYBCABKAVSDHBhcmVudFJlbFBvcxIUCgVhbGlhcxgFIAEoCVIFYWxpYXMSGQoIYXNzZXRfaWQYBiABKAlSB2Fzc2V0SWQSGgoDdXJpGAcgASgLMgguZG1pLlVyaVIDdXJpEjkKC2FkbWluX3N0YXRlGAggASgOMhguZG1pLkNvbXBvbmVudEFkbWluU3RhdGVSCmFkbWluU3RhdGUqtAMKDUNvbXBvbmVudFR5cGUSHAoYQ09NUE9ORU5UX1RZUEVfVU5ERUZJTkVEEAASGgoWQ09NUE9ORU5UX1RZUEVfVU5LTk9XThABEhoKFkNPTVBPTkVOVF9UWVBFX0NIQVNTSVMQAhIcChhDT01QT05FTlRfVFlQRV9CQUNLUExBTkUQAxIcChhDT01QT05FTlRfVFlQRV9DT05UQUlORVIQBBIfChtDT01QT05FTlRfVFlQRV9QT1dFUl9TVVBQTFkQBRIWChJDT01QT05FTlRfVFlQRV9GQU4QBhIZChVDT01QT05FTlRfVFlQRV9TRU5TT1IQBxIZChVDT01QT05FTlRfVFlQRV9NT0RVTEUQCBIXChNDT01QT05FTlRfVFlQRV9QT1JUEAkSFgoSQ09NUE9ORU5UX1RZUEVfQ1BVEAoSGgoWQ09NUE9ORU5UX1RZUEVfQkFUVEVSWRALEhoKFkNPTVBPTkVOVF9UWVBFX1NUT1JBR0UQDBIZChVDT01QT05FTlRfVFlQRV9NRU1PUlkQDRIeChpDT01QT05FTlRfVFlQRV9UUkFOU0NFSVZFUhAOKrMBChNDb21wb25lbnRBZG1pblN0YXRlEh4KGkNPTVBfQURNSU5fU1RBVEVfVU5ERUZJTkVEEAASHAoYQ09NUF9BRE1JTl9TVEFURV9VTktOT1dOEAESGwoXQ09NUF9BRE1JTl9TVEFURV9MT0NLRUQQAhIiCh5DT01QX0FETUlOX1NUQVRFX1NIVVRUSU5HX0RPV04QAxIdChlDT01QX0FETUlOX1NUQVRFX1VOTE9DS0VEEAQqqAEKEkNvbXBvbmVudE9wZXJTdGF0ZRIdChlDT01QX09QRVJfU1RBVEVfVU5ERUZJTkVEEAASGwoXQ09NUF9PUEVSX1NUQVRFX1VOS05PV04QARIcChhDT01QX09QRVJfU1RBVEVfRElTQUJMRUQQAhIbChdDT01QX09QRVJfU1RBVEVfRU5BQkxFRBADEhsKF0NPTVBfT1BFUl9TVEFURV9URVNUSU5HEAQqpgEKE0NvbXBvbmVudFVzYWdlU3RhdGUSHgoaQ09NUF9VU0FHRV9TVEFURV9VTkRFRklORUQQABIcChhDT01QX1VTQUdFX1NUQVRFX1VOS05PV04QARIZChVDT01QX1VTQUdFX1NUQVRFX0lETEUQAhIbChdDT01QX1VTQUdFX1NUQVRFX0FDVElWRRADEhkKFUNPTVBfVVNBR0VfU1RBVEVfQlVTWRAEKo8CChNDb21wb25lbnRBbGFybVN0YXRlEh4KGkNPTVBfQUxBUk1fU1RBVEVfVU5ERUZJTkVEEAASHAoYQ09NUF9BTEFSTV9TVEFURV9VTktOT1dOEAESIQodQ09NUF9BTEFSTV9TVEFURV9VTkRFUl9SRVBBSVIQAhIdChlDT01QX0FMQVJNX1NUQVRFX0NSSVRJQ0FMEAMSGgoWQ09NUF9BTEFSTV9TVEFURV9NQUpPUhAEEhoKFkNPTVBfQUxBUk1fU1RBVEVfTUlOT1IQBRIcChhDT01QX0FMQVJNX1NUQVRFX1dBUk5JTkcQBhIiCh5DT01QX0FMQVJNX1NUQVRFX0lOREVURVJNSU5BVEUQByq8AQoVQ29tcG9uZW50U3RhbmRieVN0YXRlEiAKHENPTVBfU1RBTkRCWV9TVEFURV9VTkRFRklORUQQABIeChpDT01QX1NUQU5EQllfU1RBVEVfVU5LTk9XThABEhoKFkNPTVBfU1RBTkRCWV9TVEFURV9IT1QQAhIbChdDT01QX1NUQU5EQllfU1RBVEVfQ09MRBADEigKJENPTVBfU1RBTkRCWV9TVEFURV9QUk9WSURJTkdfU0VSVklDRRAEKsQCCg1EYXRhVmFsdWVUeXBlEhgKFFZBTFVFX1RZUEVfVU5ERUZJTkVEEAASFAoQVkFMVUVfVFlQRV9PVEhFUhABEhYKElZBTFVFX1RZUEVfVU5LTk9XThACEhcKE1ZBTFVFX1RZUEVfVk9MVFNfQUMQAxIXChNWQUxVRV9UWVBFX1ZPTFRTX0RDEAQSFgoSVkFMVUVfVFlQRV9BTVBFUkVTEAUSFAoQVkFMVUVfVFlQRV9XQVRUUxAGEhQKEFZBTFVFX1RZUEVfSEVSVFoQBxIWChJWQUxVRV9UWVBFX0NFTFNJVVMQCBIZChVWQUxVRV9UWVBFX1BFUkNFTlRfUkgQCRISCg5WQUxVRV9UWVBFX1JQTRAKEhIKDlZBTFVFX1RZUEVfQ01NEAsSGgoWVkFMVUVfVFlQRV9UUlVUSF9WQUxVRRAMKqQDCgpWYWx1ZVNjYWxlEhkKFVZBTFVFX1NDQUxFX1VOREVGSU5FRBAAEhUKEVZBTFVFX1NDQUxFX1lPQ1RPEAESFQoRVkFMVUVfU0NBTEVfWkVQVE8QAhIUChBWQUxVRV9TQ0FMRV9BVFRPEAMSFQoRVkFMVUVfU0NBTEVfRkVNVE8QBBIUChBWQUxVRV9TQ0FMRV9QSUNPEAUSFAoQVkFMVUVfU0NBTEVfTkFOTxAGEhUKEVZBTFVFX1NDQUxFX01JQ1JPEAcSFQoRVkFMVUVfU0NBTEVfTUlMTEkQCBIVChFWQUxVRV9TQ0FMRV9VTklUUxAJEhQKEFZBTFVFX1NDQUxFX0tJTE8QChIUChBWQUxVRV9TQ0FMRV9NRUdBEAsSFAoQVkFMVUVfU0NBTEVfR0lHQRAMEhQKEFZBTFVFX1NDQUxFX1RFUkEQDRIUChBWQUxVRV9TQ0FMRV9QRVRBEA4SEwoPVkFMVUVfU0NBTEVfRVhBEA8SFQoRVkFMVUVfU0NBTEVfWkVUVEEQEBIVChFWQUxVRV9TQ0FMRV9ZT1RUQRARKoIBCgxTZW5zb3JTdGF0dXMSGwoXU0VOU09SX1NUQVRVU19VTkRFRklORUQQABIUChBTRU5TT1JfU1RBVFVTX09LEAESHQoZU0VOU09SX1NUQVRVU19VTkFWQUlMQUJMRRACEiAKHFNFTlNPUl9TVEFUVVNfTk9OT1BFUkFUSU9OQUwQA0I7WjlnaXRodWIuY29tL29wZW5jb3JkL2RldmljZS1tYW5hZ2VtZW50LWludGVyZmFjZS92My9nby9kbWlKwWYKBxIFAACtAgEKCAoBDBIDAAASCggKAQgSAwIAUAoJCgIICxIDAgBQCggKAQISAwMADAoJCgIDABIDBQApCmkKAgQAEgQJAAsBMl0gVGhlIG1vZGVsIHVzZWQgdG8gcmVwcmVzZW50IGEgSFcgaXMgYmFzZWQgb24gUkZDODM0OCAoaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzgzNDgpDQoKCgoDBAABEgMJCAwKCwoEBAACABIDCgQUCg0KBQQAAgAEEgQKBAkOCgwKBQQAAgAF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dElkEiMKDWlzX2NvbmZpZ3VyZWQYAiABKAhSDGlzQ29uZmlndXJlZBIvCgp0aHJlc2hvbGRzGAMgASgLMg8uZG1pLlRocmVzaG9sZHNSCnRocmVzaG9sZHMiMAoJRXZlbnRzQ2ZnEiMKBWl0ZW1zGAEgAygLMg0uZG1pLkV2ZW50Q2ZnUgVpdGVtcyL5AQoSTGlzdEV2ZW50c1Jlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI2CgZyZWFzb24YAiABKA4yHi5kbWkuTGlzdEV2ZW50c1Jlc3BvbnNlLlJlYXNvblIGcmVhc29uEiYKBmV2ZW50cxgDIAEoCzIOLmRtaS5FdmVudHNDZmdSBmV2ZW50cyJeCgZSZWFzb24SFAoQVU5ERUZJTkVEX1JFQVNPThAAEhIKDlVOS05PV05fREVWSUNFEAESEgoOSU5URVJOQUxfRVJST1IQAhIWChJERVZJQ0VfVU5SRUFDSEFCTEUQAyKtAQoaRXZlbnRzQ29uZmlndXJhdGlvblJlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIqCgdjaGFuZ2VzGAIgASgLMg4uZG1pLkV2ZW50c0NmZ0gAUgdjaGFuZ2VzEioKEHJlc2V0X3RvX2RlZmF1bHQYAyABKAhIAFIOcmVzZXRUb0RlZmF1bHRCCwoJb3BlcmF0aW9uIvcBChtFdmVudHNDb25maWd1cmF0aW9uUmVzcG9uc2USIwoGc3RhdHVzGAEgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEj8KBnJlYXNvbhgCIAEoDjInLmRtaS5FdmVudHNDb25maWd1cmF0aW9uUmVzcG9uc2UuUmVhc29uUgZyZWFzb24icgoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhIKDklOVEVSTkFMX0VSUk9SEAISEgoOSU5WQUxJRF9DT05GSUcQAxIWChJERVZJQ0VfVU5SRUFDSEFCTEUQBCKUAQoNRXZlbnRNZXRhRGF0YRIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEjAKDmNvbXBvbmVudF91dWlkGAIgASgLMgkuZG1pLlV1aWRSDWNvbXBvbmVudFV1aWQSJQoOY29tcG9uZW50X25hbWUYAyABKAlSDWNvbXBvbmVudE5hbWUiggIKBUV2ZW50EjkKDmV2ZW50X21ldGFkYXRhGAEgASgLMhIuZG1pLkV2ZW50TWV0YURhdGFSDWV2ZW50TWV0YWRhdGESKAoIZXZlbnRfaWQYAiABKA4yDS5kbWkuRXZlbnRJZHNSB2V2ZW50SWQSNwoJcmFpc2VkX3RzGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIIcmFpc2VkVHMSQAoOdGhyZXNob2xkX2luZm8YBCABKAsyGS5kbWkuVGhyZXNob2xkSW5mb3JtYXRpb25SDXRocmVzaG9sZEluZm8SGQoIYWRkX2luZm8YBSABKAlSB2FkZEluZm8q0Q4KCEV2ZW50SWRzEhgKFEVWRU5UX05BTUVfVU5ERUZJTkVEEAASHgoaRVZFTlRfVFJBTlNDRUlWRVJfUExVR19PVVQQZBIdChlFVkVOVF9UUkFOU0NFSVZFUl9QTFVHX0lOEGUSLQopRVZFTlRfVFJBTlNDRUlWRVJfVk9MVEFHRV9BQk9WRV9USFJFU0hPTEQQZhItCilFVkVOVF9UUkFOU0NFSVZFUl9WT0xUQUdFX0JFTE9XX1RIUkVTSE9MRBBnEjEKLUVWRU5UX1RSQU5TQ0VJVkVSX1RFTVBFUkFUVVJFX0FCT1ZFX1RIUkVTSE9MRBBoEjEKLUVWRU5UX1RSQU5TQ0VJVkVSX1RFTVBFUkFUVVJFX0JFTE9XX1RIUkVTSE9MRBBpEi0KKUVWRU5UX1RSQU5TQ0VJVkVSX0NVUlJFTlRfQUJPVkVfVEhSRVNIT0xEEGoSLQopRVZFTlRfVFJBTlNDRUlWRVJfQ1VSUkVOVF9CRUxPV19USFJFU0hPTEQQaxIuCipFVkVOVF9UUkFOU0NFSVZFUl9SWF9QT1dFUl9BQk9WRV9USFJFU0hPTEQQbBIuCipFVkVOVF9UUkFOU0NFSVZFUl9SWF9QT1dFUl9CRUxPV19USFJFU0hPTEQQbRIuCipFVkVOVF9UUkFOU0NFSVZFUl9UWF9QT1dFUl9BQk9WRV9USFJFU0hPTEQQbhIuCipFVkVOVF9UUkFOU0NFSVZFUl9UWF9QT1dFUl9CRUxPV19USFJFU0hPTEQQbxIdChlFVkVOVF9UUkFOU0NFSVZFUl9GQUlMVVJFEHASNwozRVZFTlRfVFJBTlNDRUlWRVJfVk9MVEFHRV9BQk9WRV9USFJFU0hPTERfUkVDT1ZFUkVEEHESNwozRVZFTlRfVFJBTlNDRUlWRVJfVk9MVEFHRV9CRUxPV19USFJFU0hPTERfUkVDT1ZFUkVEEHISOwo3RVZFTlRfVFJBTlNDRUlWRVJfVEVNUEVSQVRVUkVfQUJPVkVfVEhSRVNIT0xEX1JFQ09WRVJFRBBzEjsKN0VWRU5UX1RSQU5TQ0VJVkVSX1RFTVBFUkFUVVJFX0JFTE9XX1RIUkVTSE9MRF9SRUNPVkVSRUQQdBI3CjNFVkVOVF9UUkFOU0NFSVZFUl9DVVJSRU5UX0FCT1ZFX1RIUkVTSE9MRF9SRUNPVkVSRUQQdRI3CjNFVkVOVF9UUkFOU0NFSVZFUl9DVVJSRU5UX0JFTE9XX1RIUkVTSE9MRF9SRUNPVkVSRUQQdhI4CjRFVkVOVF9UUkFOU0NFSVZFUl9SWF9QT1dFUl9BQk9WRV9USFJFU0hPTERfUkVDT1ZFUkVEEHcSOAo0RVZFTlRfVFJBTlNDRUlWRVJfUlhfUE9XRVJfQkVMT1dfVEhSRVNIT0xEX1JFQ09WRVJFRBB4EjgKNEVWRU5UX1RSQU5TQ0VJVkVSX1RYX1BPV0VSX0FCT1ZFX1RIUkVTSE9MRF9SRUNPVkVSRUQQeRI4CjRFVkVOVF9UUkFOU0NFSVZFUl9UWF9QT1dFUl9CRUxPV19USFJFU0hPTERfUkVDT1ZFUkVEEHoSJwojRVZFTlRfVFJBTlNDRUlWRVJfRkFJTFVSRV9SRUNPVkVSRUQQexIXChJFVkVOVF9QU1VfUExVR19PVVQQyAESFgoRRVZFTlRfUFNVX1BMVUdfSU4QyQESFgoRRVZFTlRfUFNVX0ZBSUxVUkUQygESIAobRVZFTlRfUFNVX0ZBSUxVUkVfUkVDT1ZFUkVEEMsBEhYKEUVWRU5UX0ZBTl9GQUlMVVJFEKwCEhcKEkVWRU5UX0ZBTl9QTFVHX09VVBCtAhIWChFFVkVOVF9GQU5fUExVR19JThCuAhIgChtFVkVOVF9GQU5fRkFJTFVSRV9SRUNPVkVSRUQQrwISKQokRVZFTlRfQ1BVX1RFTVBFUkFUVVJFX0FCT1ZFX0NSSVRJQ0FMEJADEiYKIUVWRU5UX0NQVV9URU1QRVJBVFVSRV9BQk9WRV9GQVRBTBCRAxIzCi5FVkVOVF9DUFVfVEVNUEVSQVRVUkVfQUJPVkVfQ1JJVElDQUxfUkVDT1ZFUkVEEJIDEjAKK0VWRU5UX0NQVV9URU1QRVJBVFVSRV9BQk9WRV9GQVRBTF9SRUNPVkVSRUQQkwMSGgoVRVZFTlRfSFdfREVWSUNFX1JFU0VUEPQDEi8KKkVWRU5UX0hXX0RFVklDRV9URU1QRVJBVFVSRV9BQk9WRV9DUklUSUNBTBD1AxIsCidFVkVOVF9IV19ERVZJQ0VfVEVNUEVSQVRVUkVfQUJPVkVfRkFUQUwQ9gMSOQo0RVZFTlRfSFdfREVWSUNFX1RFTVBFUkFUVVJFX0FCT1ZFX0NSSVRJQ0FMX1JFQ09WRVJFRBD3AxI2CjFFVkVOVF9IV19ERVZJQ0VfVEVNUEVSQVRVUkVfQUJPVkVfRkFUQUxfUkVDT1ZFUkVEEPgDMrcBCh1OYXRpdmVFdmVudHNNYW5hZ2VtZW50U2VydmljZRI2CgpMaXN0RXZlbnRzEg8uZG1pLkhhcmR3YXJlSUQaFy5kbWkuTGlzdEV2ZW50c1Jlc3BvbnNlEl4KGVVwZGF0ZUV2ZW50c0NvbmZpZ3VyYXRpb24SHy5kbWkuRXZlbnRzQ29uZmlndXJhdGlvblJlcXVlc3QaIC5kbWkuRXZlbnRzQ29uZmlndXJhdGlvblJlc3BvbnNlQjtaOWdpdGh1Yi5jb20vb3BlbmNvcmQvZGV2aWNlLW1hbmFnZW1lbnQtaW50ZXJmYWNlL3YzL2dvL2RtaUqnLAoHEgUAAKYBAQoICgEMEgMAABIKCAoBCBIDAgBQCgkKAggLEgMCAFAKCAoBAhIDAwAMCgkKAgMAEgMFABsKCQoCAwESAwYAFgoJCgIDAhIDBwApCkUKAgUAEgQLAEIBMjkgTWFuYWdlbWVudCBvZiBFdmVudHMgYW5kIHByb3RvcyBmb3IgZW5jb2Rpbmcgb2YgRXZlbnRzDQoKCgoDBQABEgMLBQ0KCwoEBQACABIDDAQdCgwKBQUAAgABEgMMBBgKDAoFBQACAAISAwwbHAosCgQFAAIBEgMPBCUaHyBFdmVudHMgZnJvbSB0aGUgVHJhbnNj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BgACAQISBKUBIjwKDQoFBgACAQMSBKUBRmFiBnByb3RvMwq4EgobZ29vZ2xlL3Byb3RvYnVmL2VtcHR5LnByb3RvEg9nb29nbGUucHJvdG9idWYiBwoFRW1wdHlCdgoTY29tLmdvb2dsZS5wcm90b2J1ZkIKRW1wdHlQcm90b1ABWidnaXRodWIuY29tL2dvbGFuZy9wcm90b2J1Zi9wdHlwZXMvZW1wdHn4AQGiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNK/hAKBhIEHgAzEArMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIAOwoJCgIIJRIDIgA7CggKAQgSAyMAPgoJCgIICxIDIwA+CggKAQgSAyQALAoJCgIIARIDJAAsCggKAQgSAyUAKwoJCgIICBIDJQArCggKAQgSAyYAIgoJCgIIChIDJgAiCggKAQgSAycAIQoJCgIIJBIDJwAhCggKAQgSAygAHwoJCgIIHxIDKAAfCvsCCgIEABIDMwAQGu8CIEEgZ2VuZXJpYyBlbXB0eSBtZXNzYWdlIHRoYXQgeW91IGNhbiByZS11c2UgdG8gYXZvaWQgZGVmaW5pbmcgZHVwbGljYXRlZAogZW1wdHkgbWVzc2FnZXMgaW4geW91ciBBUElzLiBBIHR5cGljYWwgZXhhbXBsZSBpcyB0byB1c2UgaXQgYXMgdGhlIHJlcXVlc3QKIG9yIHRoZSByZXNwb25zZSB0eXBlIG9mIGFuIEFQSSBtZXRob2QuIEZvciBpbnN0YW5jZToKCiAgICAgc2VydmljZSBGb28gewogICAgICAgcnBjIEJhcihnb29nbGUucHJvdG9idWYuRW1wdHkpIHJldHVybnMgKGdvb2dsZS5wcm90b2J1Zi5FbXB0eSk7CiAgICAgfQoKIFRoZSBKU09OIHJlcHJlc2VudGF0aW9uIGZvciBgRW1wdHlgIGlzIGVtcHR5IEpTT04gb2JqZWN0IGB7fWAuCgoKCgMEAAESAzMIDWIGcHJvdG8zCuJ2Ch9kbWkvaHdfbWFuYWdlbWVudF9zZXJ2aWNlLnByb3RvEgNkbWkaEWRtaS9jb21tb25zLnByb3RvGgxkbWkvaHcucHJvdG8aG2dvb2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90byJGChhQaHlzaWNhbEludmVudG9yeVJlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZCKMAgoZUGh5c2ljYWxJbnZlbnRvcnlSZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSPQoGcmVhc29uGAIgASgOMiUuZG1pLlBoeXNpY2FsSW52ZW50b3J5UmVzcG9uc2UuUmVhc29uUgZyZWFzb24SKwoJaW52ZW50b3J5GAMgASgLMg0uZG1pLkhhcmR3YXJlUglpbnZlbnRvcnkiXgoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhIKDklOVEVSTkFMX0VSUk9SEAISFgoSREVWSUNFX1VOUkVBQ0hBQkxFEAMioAEKGUhXQ29tcG9uZW50SW5mb0dldFJlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIwCg5jb21wb25lbnRfdXVpZBgCIAEoCzIJLmRtaS5VdWlkUg1jb21wb25lbnRVdWlkEiUKDmNvbXBvbmVudF9uYW1lGAMgASgJUg1jb21wb25lbnROYW1lIqYCChpIV0NvbXBvbmVudEluZm9HZXRSZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSPgoGcmVhc29uGAIgASgOMiYuZG1pLkhXQ29tcG9uZW50SW5mb0dldFJlc3BvbnNlLlJlYXNvblIGcmVhc29uEiwKCWNvbXBvbmVudBgDIAEoCzIOLmRtaS5Db21wb25lbnRSCWNvbXBvbmVudCJ1CgZSZWFzb24SFAoQVU5ERUZJTkVEX1JFQVNPThAAEhIKDlVOS05PV05fREVWSUNFEAESFQoRVU5LTk9XTl9DT01QT05FTlQQAhISCg5JTlRFUk5BTF9FUlJPUhADEhYKEkRFVklDRV9VTlJFQUNIQUJMRRAEItQBChlIV0NvbXBvbmVudEluZm9TZXRSZXF1ZXN0EioKC2RldmljZV91dWlkGAEgASgLMgkuZG1pLlV1aWRSCmRldmljZVV1aWQSMAoOY29tcG9uZW50X3V1aWQYAiABKAsyCS5kbWkuVXVpZFINY29tcG9uZW50VXVpZBIlCg5jb21wb25lbnRfbmFtZRgDIAEoCVINY29tcG9uZW50TmFtZRIyCgdjaGFuZ2VzGAQgASgLMhguZG1pLk1vZGlmaWFibGVDb21wb25lbnRSB2NoYW5nZXMijQIKGkhXQ29tcG9uZW50SW5mb1NldFJlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI+CgZyZWFzb24YAiABKA4yJi5kbWkuSFdDb21wb25lbnRJbmZvU2V0UmVzcG9uc2UuUmVhc29uUgZyZWFzb24iiQEKBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASEgoOVU5LTk9XTl9ERVZJQ0UQARIVChFVTktOT1dOX0NPTVBPTkVOVBACEhIKDklOVkFMSURfUEFSQU1TEAMSEgoOSU5URVJOQUxfRVJST1IQBBIWChJERVZJQ0VfVU5SRUFDSEFCTEUQBSK3AgobU3RhcnRNYW5hZ2luZ0RldmljZVJlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI/CgZyZWFzb24YAiABKA4yJy5kbWkuU3RhcnRNYW5hZ2luZ0RldmljZVJlc3BvbnNlLlJlYXNvblIGcmVhc29uEioKC2RldmljZV91dWlkGAMgASgLMgkuZG1pLlV1aWRSCmRldmljZVV1aWQihQEKBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASGgoWREVWSUNFX0FMUkVBRFlfTUFOQUdFRBABEiEKHU9QRVJBVElPTl9BTFJFQURZX0lOX1BST0dSRVNTEAISEgoOSU5WQUxJRF9QQVJBTVMQAxISCg5JTlRFUk5BTF9FUlJPUhAEIi8KGVN0b3BNYW5hZ2luZ0RldmljZVJlcXVlc3QSEgoEbmFtZRgBIAEoCVIEbmFtZSK1AQoaU3RvcE1hbmFnaW5nRGV2aWNlUmVzcG9uc2USIwoGc3RhdHVzGAEgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEj4KBnJlYXNvbhgCIAEoDjImLmRtaS5TdG9wTWFuYWdpbmdEZXZpY2VSZXNwb25zZS5SZWFzb25SBnJlYXNvbiIyCgZSZWFzb24SFAoQVU5ERUZJTkVEX1JFQVNPThAAEhIKDlVOS05PV05fREVWSUNFEAEiTAoWTWFuYWdlZERldmljZXNSZXNwb25zZRIyCgdkZXZpY2VzGAEgAygLMhguZG1pLk1vZGlmaWFibGVDb21wb25lbnRSB2RldmljZXMinQEKGVNldExvZ2dpbmdFbmRwb2ludFJlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIpChBsb2dnaW5nX2VuZHBvaW50GAIgASgJUg9sb2dnaW5nRW5kcG9pbnQSKQoQbG9nZ2luZ19wcm90b2NvbBgDIAEoCVIPbG9nZ2luZ1Byb3RvY29sIrwCChlTZXRSZW1vdGVFbmRwb2ludFJlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI9CgZyZWFzb24YAiABKA4yJS5kbWkuU2V0UmVtb3RlRW5kcG9pbnRSZXNwb25zZS5SZWFzb25SBnJlYXNvbiK6AQoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhIKDklOVEVSTkFMX0VSUk9SEAISGgoWTE9HR0lOR19FTkRQT0lOVF9FUlJPUhADEiMKH0xPR0dJTkdfRU5EUE9JTlRfUFJPVE9DT0xfRVJST1IQBBIZChVNU0dCVVNfRU5EUE9JTlRfRVJST1IQBRIWChJERVZJQ0VfVU5SRUFDSEFCTEUQBiK3AgoaR2V0TG9nZ2luZ0VuZHBvaW50UmVzcG9uc2USIwoGc3RhdHVzGAEgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEj4KBnJlYXNvbhgCIAEoDjImLmRtaS5HZXRMb2dnaW5nRW5kcG9pbnRSZXNwb25zZS5SZWFzb25SBnJlYXNvbhIpChBsb2dnaW5nX2VuZHBvaW50GAMgASgJUg9sb2dnaW5nRW5kcG9pbnQSKQoQbG9nZ2luZ19wcm90b2NvbBgEIAEoCVIPbG9nZ2luZ1Byb3RvY29sIl4KBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASEgoOVU5LTk9XTl9ERVZJQ0UQARISCg5JTlRFUk5BTF9FUlJPUhACEhYKEkRFVklDRV9VTlJFQUNIQUJMRRADIkMKGFNldE1zZ0J1c0VuZHBvaW50UmVxdWVzdBInCg9tc2didXNfZW5kcG9pbnQYASABKAlSDm1zZ2J1c0VuZHBvaW50IvQBChlHZXRNc2dCdXNFbmRwb2ludFJlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI9CgZyZWFzb24YAiABKA4yJS5kbWkuR2V0TXNnQnVzRW5kcG9pbnRSZXNwb25zZS5SZWFzb25SBnJlYXNvbhInCg9tc2didXNfZW5kcG9pbnQYAyABKAlSDm1zZ2J1c0VuZHBvaW50IkoKBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASEgoOSU5URVJOQUxfRVJST1IQARIWChJERVZJQ0VfVU5SRUFDSEFCTEUQAiJZChBFbnRpdGllc0xvZ0xldmVsEikKCGxvZ0xldmVsGAEgASgOMg0uZG1pLkxvZ0xldmVsUghsb2dMZXZlbBIaCghlbnRpdGllcxgCIAMoCVIIZW50aXRpZXMidQoSU2V0TG9nTGV2ZWxSZXF1ZXN0EioKC2RldmljZV91dWlkGAEgASgLMgkuZG1pLlV1aWRSCmRldmljZVV1aWQSMwoJbG9nbGV2ZWxzGAIgAygLMhUuZG1pLkVudGl0aWVzTG9nTGV2ZWxSCWxvZ2xldmVscyKXAgoTU2V0TG9nTGV2ZWxSZXNwb25zZRIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEiMKBnN0YXR1cxgCIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI3CgZyZWFzb24YAyABKA4yHy5kbWkuU2V0TG9nTGV2ZWxSZXNwb25zZS5SZWFzb25SBnJlYXNvbiJ2CgZSZWFzb24SFAoQVU5ERUZJTkVEX1JFQVNPThAAEhIKDlVOS05PV05fREVWSUNFEAESEgoOSU5URVJOQUxfRVJST1IQAhIWChJVTktOT1dOX0xPR19FTlRJVFkQAxIWChJERVZJQ0VfVU5SRUFDSEFCTEUQBCJcChJHZXRMb2dMZXZlbFJlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIaCghlbnRpdGllcxgCIAMoCVIIZW50aXRpZXMizAIKE0dldExvZ0xldmVsUmVzcG9uc2USKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIzCglsb2dMZXZlbHMYAiADKAsyFS5kbWkuRW50aXRpZXNMb2dMZXZlbFIJbG9nTGV2ZWxzEiMKBnN0YXR1cxgDIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI3CgZyZWFzb24YBCABKA4yHy5kbWkuR2V0TG9nTGV2ZWxSZXNwb25zZS5SZWFzb25SBnJlYXNvbiJ2CgZSZWFzb24SFAoQVU5ERUZJTkVEX1JFQVNPThAAEhIKDlVOS05PV05fREVWSUNFEAESEgoOSU5URVJOQUxfRVJST1IQAhIWChJVTktOT1dOX0xPR19FTlRJVFkQAxIWChJERVZJQ0VfVU5SRUFDSEFCTEUQBCJIChpHZXRMb2dnYWJsZUVudGl0aWVzUmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkMq8IChlOYXRpdmVIV01hbmFnZW1lbnRTZXJ2aWNlElMKE1N0YXJ0TWFuYWdpbmdEZXZpY2USGC5kbWkuTW9kaWZpYWJsZUNvbXBvbmVudBogLmRtaS5TdGFydE1hbmFnaW5nRGV2aWNlUmVzcG9uc2UwARJVChJTdG9wTWFuYWdpbmdEZXZpY2USHi5kbWkuU3RvcE1hbmFnaW5nRGV2aWNlUmVxdWVzdBofLmRtaS5TdG9wTWFuYWdpbmdEZXZpY2VSZXNwb25zZRJIChFHZXRNYW5hZ2VkRGV2aWNlcxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRobLmRtaS5NYW5hZ2VkRGV2aWNlc1Jlc3BvbnNlElcKFEdldFBoeXNpY2FsSW52ZW50b3J5Eh0uZG1pLlBoeXNpY2FsSW52ZW50b3J5UmVxdWVzdBoeLmRtaS5QaHlzaWNhbEludmVudG9yeVJlc3BvbnNlMAESVwoSR2V0SFdDb21wb25lbnRJbmZvEh4uZG1pLkhXQ29tcG9uZW50SW5mb0dldFJlcXVlc3QaHy5kbWkuSFdDb21wb25lbnRJbmZvR2V0UmVzcG9uc2UwARJVChJTZXRIV0NvbXBvbmVudEluZm8SHi5kbWkuSFdDb21wb25lbnRJbmZvU2V0UmVxdWVzdBofLmRtaS5IV0NvbXBvbmVudEluZm9TZXRSZXNwb25zZRJUChJTZXRMb2dnaW5nRW5kcG9pbnQSHi5kbWkuU2V0TG9nZ2luZ0VuZHBvaW50UmVxdWVzdBoeLmRtaS5TZXRSZW1vdGVFbmRwb2ludFJlc3BvbnNlEkYKEkdldExvZ2dpbmdFbmRwb2ludBIPLmRtaS5IYXJkd2FyZUlEGh8uZG1pLkdldExvZ2dp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dmVsLg0KIElmIG9ubHkgb25lIEVudGl0aWVzTG9nTGV2ZWwgaXMgcHJvdmlkZWQgZm9yIHRoZSBkZXZpY2UgYW5kIHRoYXQgcmVxdWVzdCBjb250YWlucyBvbmx5IGEgbG9nIGxldmVsIHdpdGgNCiBubyBlbnRpdHkgaW4gdGhlIGxpc3QgaXQncyBhc3N1bWVkIHRoYXQgdGhlIGNhbGxlciB3YW50cyB0byBzZXQgdGhhdCBsZXZlbCBmb3IgYWxsIHRoZSBlbnRpdGllcy4NCgoNCgUGAAILARIE9QEIEwoNCgUGAAILAhIE9QEUJgoNCgUGAAILAxIE9QEwQwq+AQoEBgACDBIE+QEERRqvASBHZXRzIHRoZSBjb25maWd1cmVkIGxvZyBsZXZlbCBmb3IgYSBjZXJ0YWluIGVudGl0eSBvbiBhIGNlcnRhaW4gZGV2aWNlLg0KIElmIG5vIGVudGl0eSBpcyBzcGVjaWZpZWQgaW4gdGhlIHJlcXVlc3QgYWxsIHRoZSBlbnRpdGllcyB3aXRoIHRoZWlyIGxvZyBsZXZlbCBzaG91bGQgYmUgcmV0dXJuZWQuDQoKDQoFBgACDAESBPkBCBMKDQoFBgACDAISBPkBFCYKDQoFBgACDAMSBPkBMENiBnByb3RvMwqwQAohZG1pL2h3X21ldHJpY3NfbWdtdF9zZXJ2aWNlLnByb3RvEgNkbWkaEWRtaS9jb21tb25zLnByb3RvGgxkbWkvaHcucHJvdG8ihwEKDE1ldHJpY0NvbmZpZxItCgltZXRyaWNfaWQYASABKA4yEC5kbWkuTWV0cmljTmFtZXNSCG1ldHJpY0lkEiMKDWlzX2NvbmZpZ3VyZWQYAiABKAhSDGlzQ29uZmlndXJlZBIjCg1wb2xsX2ludGVydmFsGAMgASgNUgxwb2xsSW50ZXJ2YWwiPAoNTWV0cmljc0NvbmZpZxIrCgdtZXRyaWNzGAEgAygLMhEuZG1pLk1ldHJpY0NvbmZpZ1IHbWV0cmljcyKBAgoTTGlzdE1ldHJpY3NSZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSNwoGcmVhc29uGAIgASgOMh8uZG1pLkxpc3RNZXRyaWNzUmVzcG9uc2UuUmVhc29uUgZyZWFzb24SLAoHbWV0cmljcxgDIAEoCzISLmRtaS5NZXRyaWNzQ29uZmlnUgdtZXRyaWNzIl4KBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASEgoOVU5LTk9XTl9ERVZJQ0UQARISCg5JTlRFUk5BTF9FUlJPUhACEhYKEkRFVklDRV9VTlJFQUNIQUJMRRADIrIBChtNZXRyaWNzQ29uZmlndXJhdGlvblJlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIuCgdjaGFuZ2VzGAIgASgLMhIuZG1pLk1ldHJpY3NDb25maWdIAFIHY2hhbmdlcxIqChByZXNldF90b19kZWZhdWx0GAMgASgISABSDnJlc2V0VG9EZWZhdWx0QgsKCW9wZXJhdGlvbiKZAgocTWV0cmljc0NvbmZpZ3VyYXRpb25SZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSQAoGcmVhc29uGAIgASgOMiguZG1pLk1ldHJpY3NDb25maWd1cmF0aW9uUmVzcG9uc2UuUmVhc29uUgZyZWFzb24ikQEKBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASEgoOVU5LTk9XTl9ERVZJQ0UQARISCg5JTlRFUk5BTF9FUlJPUhACEh0KGVBPTExfSU5URVJWQUxfVU5TVVBQT1JURUQQAxISCg5JTlZBTElEX01FVFJJQxAEEhYKEkRFVklDRV9VTlJFQUNIQUJMRRAFIpUBCg5NZXRyaWNNZXRhRGF0YRIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEjAKDmNvbXBvbmVudF91dWlkGAIgASgLMgkuZG1pLlV1aWRSDWNvbXBvbmVudFV1aWQSJQoOY29tcG9uZW50X25hbWUYAyABKAlSDWNvbXBvbmVudE5hbWUipQEKBk1ldHJpYxItCgltZXRyaWNfaWQYASABKA4yEC5kbWkuTWV0cmljTmFtZXNSCG1ldHJpY0lkEjwKD21ldHJpY19tZXRhZGF0YRgCIAEoCzITLmRtaS5NZXRyaWNNZXRhRGF0YVIObWV0cmljTWV0YWRhdGESLgoFdmFsdWUYAyABKAsyGC5kbWkuQ29tcG9uZW50U2Vuc29yRGF0YVIFdmFsdWUicwoQR2V0TWV0cmljUmVxdWVzdBIwCgltZXRhX2RhdGEYASABKAsyEy5kbWkuTWV0cmljTWV0YURhdGFSCG1ldGFEYXRhEi0KCW1ldHJpY19pZBgCIAEoDjIQLmRtaS5NZXRyaWNOYW1lc1IIbWV0cmljSWQioAIKEUdldE1ldHJpY1Jlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI1CgZyZWFzb24YAiABKA4yHS5kbWkuR2V0TWV0cmljUmVzcG9uc2UuUmVhc29uUgZyZWFzb24SIwoGbWV0cmljGAMgASgLMgsuZG1pLk1ldHJpY1IGbWV0cmljIokBCgZSZWFzb24SFAoQVU5ERUZJTkVEX1JFQVNPThAAEhIKDlVOS05PV05fREVWSUNFEAESFQoRVU5LTk9XTl9DT01QT05FTlQQAhISCg5JTlRFUk5BTF9FUlJPUhADEhIKDklOVkFMSURfTUVUUklDEAQSFgoSREVWSUNFX1VOUkVBQ0hBQkxFEAUq2QUKC01ldHJpY05hbWVzEhkKFU1FVFJJQ19OQU1FX1VOREVGSU5FRBAAEhQKEE1FVFJJQ19GQU5fU1BFRUQQARITCg9NRVRSSUNfQ1BVX1RFTVAQZBIfChtNRVRSSUNfQ1BVX1VTQUdFX1BFUkNFTlRBR0UQZRIcChdNRVRSSUNfVFJBTlNDRUlWRVJfVEVNUBDIARIfChpNRVRSSUNfVFJBTlNDRUlWRVJfVk9MVEFHRRDJARIcChdNRVRSSUNfVFJBTlNDRUlWRVJfQklBUxDKARIgChtNRVRSSUNfVFJBTlNDRUlWRVJfUlhfUE9XRVIQywESIAobTUVUUklDX1RSQU5TQ0VJVkVSX1RYX1BPV0VSEMwBEiIKHU1FVFJJQ19UUkFOU0NFSVZFUl9XQVZFTEVOR1RIEM0BEhUKEE1FVFJJQ19ESVNLX1RFTVAQrAISGQoUTUVUUklDX0RJU0tfQ0FQQUNJVFkQrQISFgoRTUVUUklDX0RJU0tfVVNBR0UQrgISIQocTUVUUklDX0RJU0tfVVNBR0VfUEVSQ0VOVEFHRRCvAhImCiFNRVRSSUNfRElTS19SRUFEX1dSSVRFX1BFUkNFTlRBR0UQsAISKAojTUVUUklDX0RJU0tfRkFVTFRZX0NFTExTX1BFUkNFTlRBR0UQsQISFAoPTUVUUklDX1JBTV9URU1QEJADEhgKE01FVFJJQ19SQU1fQ0FQQUNJVFkQkQMSFQoQTUVUUklDX1JBTV9VU0FHRRCSAxIgChtNRVRSSUNfUkFNX1VTQUdFX1BFUkNFTlRBR0UQkwMSFQoQTUVUUklDX1BPV0VSX01BWBD0AxIXChJNRVRSSUNfUE9XRVJfVVNBR0UQ9QMSIgodTUVUUklDX1BPV0VSX1VTQUdFX1BFUkNFTlRBR0UQ9gMSIgodTUVUUklDX0lOTkVSX1NVUlJPVU5ESU5HX1RFTVAQ2AQy+QEKHk5hdGl2ZU1ldHJpY3NNYW5hZ2VtZW50U2VydmljZRI4CgtMaXN0TWV0cmljcxIPLmRtaS5IYXJkd2FyZUlEGhguZG1pLkxpc3RNZXRyaWNzUmVzcG9uc2USYQoaVXBkYXRlTWV0cmljc0NvbmZpZ3VyYXRpb24SIC5kbWkuTWV0cmljc0NvbmZpZ3VyYXRpb25SZXF1ZXN0GiEuZG1pLk1ldHJpY3NDb25maWd1cmF0aW9uUmVzcG9uc2USOgoJR2V0TWV0cmljEhUuZG1pLkdldE1ldHJpY1JlcXVlc3QaFi5kbWkuR2V0TWV0cmljUmVzcG9uc2VCO1o5Z2l0aHViLmNvbS9vcGVuY29yZC9kZXZpY2UtbWFuYWdlbWVudC1pbnRlcmZhY2UvdjMvZ28vZG1pStIqCgcSBQAAmAEBCggKAQwSAwAAEgoICgEIEgMCAFAKCQoCCAsSAwIAUAoICgECEgMDAAwKCQoCAwASAwUAGwoJCgIDARIDBgAWCtgBCgIFABIEDQA0ATKOASBUaGUgbW9kZWwgdXNlZCB0byByZXByZXNlbnQgdGhlIGV2ZW50IGRhdGEgb24gdGhlIFNlbnNvckRhdGEgb2YgYSBjb21wb25lbnQgYXMgZGVzY3JpYmVkDQogaW4gUkZDODM0OCAoaHR0cHM6Ly90b29scy5pZXRmLm9yZy9odG1sL3JmYzgzNDgpDQoyOyBNYW5hZ2VtZW50IG9mIE1ldHJpY3MgYW5kIHByb3RvcyBmb3IgZW5jb2Rpbmcgb2YgTWV0cmljcw0KCgoKAwUAARIDDQUQCgsKBAUAAgASAw4EHgoMCgUF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IGtub3cgYWJvdXQgdGhlIG1ldHJpY3MgdGhhdCBhIHBhcnRpY3VsYXIgZGV2aWNlIHN1cHBvcnRzIGFuZA0KIHRoZW4gdXNlIHRoZSBVcGRhdGVNZXRyaWNzQ29uZmlndXJhdGlvbiBBUEkgdG8gbW9uaXRvciBvbmx5IHRoZSByZXF1aXJlZCBtZXRyaWNzLg0KCg0KBQYAAgABEgSNAQgTCg0KBQYAAgACEgSNARQeCg0KBQYAAgADEgSNASg7CqcCCgQGAAIBEgSUAQRmGpgCIFVwZGF0ZXMgdGhlIGNvbmZpZ3VyYXRpb24gb2YgdGhlIGxpc3Qgb2YgbWV0cmljcyBpbiB0aGUgcmVxdWVzdA0KIEFjdHMgdXBvbiBzaW5nbGUgbWV0cmljIGNvbmZpZ3VyYXRpb24sIGNvbGxlY3Rpb24gb2YgYSBzaW5nbGUgbWV0cmljIGNhbiBiZSBzdGFydGVkL3N0b3BwZWQNCiBieSBjaGFuZ2luZyBpdHMgY29uZmlndXJhdGlvbi4NCg0KIFRoaXMgY29uZmlndXJhdGlvbiBpcyBwZXJzaXN0ZWQgYWNyb3NzIHJlc3RhcnQgb2YgdGhlIGRldmljZSBvciB0aGUgZGV2aWNlIG1hbmFnZXINCgoNCgUGAAIBARIElAEIIgoNCgUGAAIBAhIElAEjPgoNCgUGAAIBAxIElAFIZAo3CgQGAAICEgSXAQQ/GikgR2V0IHRoZSBpbnN0YW50ZW5vdXMgdmFsdWUgb2YgYSBtZXRyaWMNCgoNCgUGAAICARIElwEIEQoNCgUGAAICAhIElwESIgoNCgUGAAICAxIElwEsPWIGcHJvdG8zCpwcChJkbWkvc3dfaW1hZ2UucHJvdG8SA2RtaRoRZG1pL2NvbW1vbnMucHJvdG8iRwoMSW1hZ2VWZXJzaW9uEh0KCmltYWdlX25hbWUYASABKAlSCWltYWdlTmFtZRIYCgd2ZXJzaW9uGAIgASgJUgd2ZXJzaW9uIqgBChBJbWFnZUluZm9ybWF0aW9uEicKBWltYWdlGAEgASgLMhEuZG1pLkltYWdlVmVyc2lvblIFaW1hZ2USMAoUaW1hZ2VfaW5zdGFsbF9zY3JpcHQYAiABKAlSEmltYWdlSW5zdGFsbFNjcmlwdBIbCglpbWFnZV91cmwYAyABKAlSCGltYWdlVXJsEhwKCXNoYTI1NnN1bRgFIAEoCVIJc2hhMjU2c3VtIu8ECgtJbWFnZVN0YXR1cxIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSLwoGcmVhc29uGAIgASgOMhcuZG1pLkltYWdlU3RhdHVzLlJlYXNvblIGcmVhc29uEjEKBXN0YXRlGAMgASgOMhsuZG1pLkltYWdlU3RhdHVzLkltYWdlU3RhdGVSBXN0YXRlEiAKC2Rlc2NyaXB0aW9uGAQgASgJUgtkZXNjcmlwdGlvbiLQAQoKSW1hZ2VTdGF0ZRITCg9VTkRFRklORURfU1RBVEUQABIRCg1DT1BZSU5HX0lNQUdFEAESFAoQSU5TVEFMTElOR19JTUFHRRACEhQKEENPTU1JVFRJTkdfSU1BR0UQAxIUChBSRUJPT1RJTkdfREVWSUNFEAQSFAoQVVBHUkFERV9DT01QTEVURRAFEhIKDlVQR1JBREVfRkFJTEVEEAYSFwoTQUNUSVZBVElPTl9DT01QTEVURRAHEhUKEUFDVElWQVRJT05fRkFJTEVEEAgi4QEKBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASFAoQRVJST1JfSU5fUkVRVUVTVBABEhIKDklOVEVSTkFMX0VSUk9SEAISGQoVREVWSUNFX0lOX1dST05HX1NUQVRFEAMSEQoNSU5WQUxJRF9JTUFHRRAEEhgKFFdST05HX0lNQUdFX0NIRUNLU1VNEAUSIQodT1BFUkFUSU9OX0FMUkVBRFlfSU5fUFJPR1JFU1MQBhISCg5VTktOT1dOX0RFVklDRRAHEhgKFERFVklDRV9OT1RfUkVBQ0hBQkxFEAhCO1o5Z2l0aHViLmNvbS9vcGVuY29yZC9kZXZpY2UtbWFuYWdlbWVudC1pbnRlcmZhY2UvdjMvZ28vZG1pSsIUCgYSBAAAOwEKCAoBDBIDAAASCggKAQgSAwIAUAoJCgIICxIDAgBQCggKAQISAwMADAoJCgIDABIDBQAbCkMKAgQAEgQJAAwBMjcgUHJvdG9zIGZvciBtb2RlbGluZyBhIHNvZnR3YXJlIGltYWdlIGFuZCBpdCdzIHN0YXR1cw0KCgoKAwQAARIDCQgUCgsKBAQAAgASAwoEGgoNCgUEAAIABBIECgQJFgoMCgUE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ZXJzaW9ucyKsAgolR2V0U29mdHdhcmVWZXJzaW9uSW5mb3JtYXRpb25SZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSSQoGcmVhc29uGAIgASgOMjEuZG1pLkdldFNvZnR3YXJlVmVyc2lvbkluZm9ybWF0aW9uUmVzcG9uc2UuUmVhc29uUgZyZWFzb24SMwoEaW5mbxgDIAEoCzIfLmRtaS5Tb2Z0d2FyZVZlcnNpb25JbmZvcm1hdGlvblIEaW5mbyJeCgZSZWFzb24SFAoQVU5ERUZJTkVEX1JFQVNPThAAEhIKDlVOS05PV05fREVWSUNFEAESEgoOSU5URVJOQUxfRVJST1IQAhIWChJERVZJQ0VfVU5SRUFDSEFCTEUQAyJ4ChREb3dubG9hZEltYWdlUmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEjQKCmltYWdlX2luZm8YAiABKAsyFS5kbWkuSW1hZ2VJbmZvcm1hdGlvblIJaW1hZ2VJbmZvIloKDUNvbmZpZ1JlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIdCgpjb25maWdfdXJsGAIgASgJUgljb25maWdVcmwinAIKDkNvbmZpZ1Jlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxIyCgZyZWFzb24YAiABKA4yGi5kbWkuQ29uZmlnUmVzcG9uc2UuUmVhc29uUgZyZWFzb24isAEKBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASEgoOVU5LTk9XTl9ERVZJQ0UQARISCg5JTlRFUk5BTF9FUlJPUhACEhkKFUVSUk9SX0ZFVENISU5HX0NPTkZJRxADEhIKDklOVkFMSURfQ09ORklHEAQSIQodT1BFUkFUSU9OX0FMUkVBRFlfSU5fUFJPR1JFU1MQBRIWChJERVZJQ0VfVU5SRUFDSEFCTEUQBiJGChhTdGFydHVwQ29uZmlnSW5mb1JlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZCKYAgoZU3RhcnR1cENvbmZpZ0luZm9SZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSPQoGcmVhc29uGAIgASgOMiUuZG1pLlN0YXJ0dXBDb25maWdJbmZvUmVzcG9uc2UuUmVhc29uUgZyZWFzb24SHQoKY29uZmlnX3VybBgDIAEoCVIJY29uZmlnVXJsEhgKB3ZlcnNpb24YBCABKAlSB3ZlcnNpb24iXgoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhIKDklOVEVSTkFMX0VSUk9SEAISFgoSREVWSUNFX1VOUkVBQ0hBQkxFEAMyzgMKH05hdGl2ZVNvZnR3YXJlTWFuYWdlbWVudFNlcnZpY2USUQoSR2V0U29mdHdhcmVWZXJzaW9uEg8uZG1pLkhhcmR3YXJlSUQaKi5kbWkuR2V0U29mdHdhcmVWZXJzaW9uSW5mb3JtYXRpb25SZXNwb25zZRI+Cg1Eb3dubG9hZEltYWdlEhkuZG1pLkRvd25sb2FkSW1hZ2VSZXF1ZXN0GhAuZG1pLkltYWdlU3RhdHVzMAESNAoNQWN0aXZhdGVJbWFnZRIPLmRtaS5IYXJkd2FyZUlEGhAuZG1pLkltYWdlU3RhdHVzMAESOwoUUmV2ZXJ0VG9TdGFuZGJ5SW1hZ2USDy5kbWkuSGFyZHdhcmVJRBoQLmRtaS5JbWFnZVN0YXR1czABEkcKGlVwZGF0ZVN0YXJ0dXBDb25maWd1cmF0aW9uEhIuZG1pLkNvbmZpZ1JlcXVlc3QaEy5kbWkuQ29uZmlnUmVzcG9uc2UwARJcChtHZXRTdGFydHVwQ29uZmlndXJhdGlvbkluZm8SHS5kbWkuU3RhcnR1cENvbmZpZ0luZm9SZXF1ZXN0Gh4uZG1pLlN0YXJ0dXBDb25maWdJbmZvUmVzcG9uc2VCO1o5Z2l0aHViLmNvbS9vcGVuY29yZC9kZXZpY2UtbWFuYWdlbWVudC1pbnRlcmZhY2UvdjMvZ28vZG1pStciCgYSBAAAaQEKCAoBDBIDAAASCggKAQgSAwIAUAoJCgIICxIDAgBQCggKAQISAwMADAoJCgIDABIDBQAbCgkKAgMBEgMGABYKCQoCAwISAwcAHAruAQoCBAASBA8AEgEypwEgVGhlIHNv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