CuEFChFkbWkvY29tbW9ucy5wcm90bxIDZG1pKj8KBlN0YXR1cxIUChBVTkRFRklORURfU1RBVFVTEAASDQoJT0tfU1RBVFVTEAESEAoMRVJST1JfU1RBVFVTEAIqPwoITG9nTGV2ZWwSCQoFVFJBQ0UQABIJCgVERUJVRxABEggKBElORk8QAhIICgRXQVJOEAMSCQoFRVJST1IQBEI7WjlnaXRodWIuY29tL29wZW5jb3JkL2RldmljZS1tYW5hZ2VtZW50LWludGVyZmFjZS92My9nby9kbWlK/wMKBhIEAAAUAQoICgEMEgMAABIKCAoBCBIDAgBQCgkKAggLEgMCAFAKCAoBAhIDAwAMClQKAgUAEgQHAAsBMkggQ29tbW9uIHN0cnVjdHVyZXMgdXNlZCBhY3Jvc3MgdGhlIGRpZmZlcmVudCBEZXZpY2UgTWFuYWdlbWVudCBzZXJ2aWNlcwoKCgoDBQABEgMHBQsKCwoEBQACABIDCAQZCgwKBQUAAgABEgMIBBQKDAoFBQACAAISAwgXGAoLCgQFAAIBEgMJBBIKDAoFBQACAQESAwkEDQoMCgUFAAIBAhIDCRARCgsKBAUAAgISAwoEFQoMCgUFAAICARIDCgQQCgwKBQUAAgICEgMKExQKFgoCBQESBA4AFAEaCkxvZyBMZXZlbAoKCgoDBQEBEgMOBQ0KCwoEBQECABIDDwQOCgwKBQUBAgABEgMPBAkKDAoFBQECAAISAw8MDQoLCgQFAQIBEgMQBA4KDAoFBQECAQESAxAECQoMCgUFAQIBAhIDEAwNCgsKBAUBAgISAxEEDgoMCgUFAQICARIDEQQICgwKBQUBAgICEgMRDA0KCwoEBQECAxIDEgQOCgwKBQUBAgMBEgMSBAgKDAoFBQECAwISAxIMDQoLCgQFAQIEEgMTBA4KDAoFBQECBAESAxMECQoMCgUFAQIEAhIDEwwNYgZwcm90bzMK8i8KH2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiI7CglUaW1lc3RhbXASGAoHc2Vjb25kcxgBIAEoA1IHc2Vjb25kcxIUCgVuYW5vcxgCIAEoBVIFbmFub3NCfgoTY29tLmdvb2dsZS5wcm90b2J1ZkIOVGltZXN0YW1wUHJvdG9QAVorZ2l0aHViLmNvbS9nb2xhbmcvcHJvdG9idWYvcHR5cGVzL3RpbWVzdGFtcPgBAaICA0dQQqoCHkdvb2dsZS5Qcm90b2J1Zi5XZWxsS25vd25UeXBlc0r4LQoHEgUeAIgBAQrMDAoBDBIDHgASMsEMIFByb3RvY29sIEJ1ZmZlcnMgLSBHb29nbGUncyBkYXRhIGludGVyY2hhbmdlIGZvcm1hdAogQ29weXJpZ2h0IDIwMDggR29vZ2xlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS9wcm90b2NvbC1idWZmZXJzLwoKIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQogbWV0OgoKICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCiBkaXN0cmlidXRpb24uCiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KCiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgoKCAoBAhIDIAAYCggKAQgSAyIAOwoJCgIIJRIDIgA7CggKAQgSAyMAHwoJCgIIHxIDIwAfCggKAQgSAyQAQgoJCgIICxIDJABCCggKAQgSAyUALAoJCgIIARIDJQAsCggKAQgSAyYALwoJCgIICBIDJgAvCggKAQgSAycAIgoJCgIIChIDJwAiCggKAQgSAygAIQoJCgIIJBIDKAAhCvEbCgIEABIFfACIAQEa4xsgQSBUaW1lc3RhbXAgcmVwcmVzZW50cyBhIHBvaW50IGluIHRpbWUgaW5kZXBlbmRlbnQgb2YgYW55IHRpbWUgem9uZSBvciBsb2NhbAogY2FsZW5kYXIsIGVuY29kZWQgYXMgYSBjb3VudCBvZiBzZWNvbmRzIGFuZCBmcmFjdGlvbnMgb2Ygc2Vjb25kcyBhdAogbmFub3NlY29uZCByZXNvbHV0aW9uLiBUaGUgY291bnQgaXMgcmVsYXRpdmUgdG8gYW4gZXBvY2ggYXQgVVRDIG1pZG5pZ2h0IG9uCiBKYW51YXJ5IDEsIDE5NzAsIGluIHRoZSBwcm9sZXB0aWMgR3JlZ29yaWFuIGNhbGVuZGFyIHdoaWNoIGV4dGVuZHMgdGhlCiBHcmVnb3JpYW4gY2FsZW5kYXIgYmFja3dhcmRzIHRvIHllYXIgb25lLgoKIEFsbCBtaW51dGVzIGFyZSA2MCBzZWNvbmRzIGxvbmcuIExlYXAgc2Vjb25kcyBhcmUgInNtZWFyZWQiIHNvIHRoYXQgbm8gbGVhcAogc2Vjb25kIHRhYmxlIGlzIG5lZWRlZCBmb3IgaW50ZXJwcmV0YXRpb24sIHVzaW5nIGEgWzI0LWhvdXIgbGluZWFyCiBzbWVhcl0oaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vdGltZS9zbWVhcikuCgogVGhlIHJhbmdlIGlzIGZyb20gMDAwMS0wMS0wMVQwMDowMDowMFogdG8gOTk5OS0xMi0zMVQyMzo1OTo1OS45OTk5OTk5OTlaLiBCeQogcmVzdHJpY3RpbmcgdG8gdGhhdCByYW5nZSwgd2UgZW5zdXJlIHRoYXQgd2UgY2FuIGNvbnZlcnQgdG8gYW5kIGZyb20gW1JGQwogMzMzOV0oaHR0cHM6Ly93d3cuaWV0Zi5vcmcvcmZjL3JmYzMzMzkudHh0KSBkYXRlIHN0cmluZ3MuCgogIyBFeGFtcGxlcwoKIEV4YW1wbGUgMTogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBQT1NJWCBgdGltZSgpYC4KCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcDsKICAgICB0aW1lc3RhbXAuc2V0X3NlY29uZHModGltZShOVUxMKSk7CiAgICAgdGltZXN0YW1wLnNldF9uYW5vcygwKTsKCiBFeGFtcGxlIDI6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gUE9TSVggYGdldHRpbWVvZmRheSgpYC4KCiAgICAgc3RydWN0IHRpbWV2YWwgdHY7CiAgICAgZ2V0dGltZW9mZGF5KCZ0diwgTlVMTCk7CgogICAgIFRpbWVzdGFtcCB0aW1lc3RhbXA7CiAgICAgdGltZXN0YW1wLnNldF9zZWNvbmRzKHR2LnR2X3NlYyk7CiAgICAgdGltZXN0YW1wLnNldF9uYW5vcyh0di50dl91c2VjICogMTAwMCk7CgogRXhhbXBsZSAzOiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIFdpbjMyIGBHZXRTeXN0ZW1UaW1lQXNGaWxlVGltZSgpYC4KCiAgICAgRklMRVRJTUUgZnQ7CiAgICAgR2V0U3lzdGVtVGltZUFzRmlsZVRpbWUoJmZ0KTsKICAgICBVSU5UNjQgdGlja3MgPSAoKChVSU5UNjQpZnQuZHdIaWdoRGF0ZVRpbWUpIDw8IDMyKSB8IGZ0LmR3TG93RGF0ZVRpbWU7CgogICAgIC8vIEEgV2luZG93cyB0aWNrIGlzIDEwMCBuYW5vc2Vjb25kcy4gV2luZG93cyBlcG9jaCAxNjAxLTAxLTAxVDAwOjAwOjAwWgogICAgIC8vIGlzIDExNjQ0NDczNjAwIHNlY29uZHMgYmVmb3JlIFVuaXggZXBvY2ggMTk3MC0wMS0wMVQwMDowMDowMFouCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcDsKICAgICB0aW1lc3RhbXAuc2V0X3NlY29uZHMoKElOVDY0KSAoKHRpY2tzIC8gMTAwMDAwMDApIC0gMTE2NDQ0NzM2MDBMTCkpOwogICAgIHRpbWVzdGFtcC5zZXRfbmFub3MoKElOVDMyKSAoKHRpY2tzICUgMTAwMDAwMDApICogMTAwKSk7CgogRXhhbXBsZSA0OiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIEphdmEgYFN5c3RlbS5jdXJyZW50VGltZU1pbGxpcygpYC4KCiAgICAgbG9uZyBtaWxsaXMgPSBTeXN0ZW0uY3VycmVudFRpbWVNaWxsaXMoKTsKCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcCA9IFRpbWVzdGFtcC5uZXdCdWlsZGVyKCkuc2V0U2Vjb25kcyhtaWxsaXMgLyAxMDAwKQogICAgICAgICAuc2V0TmFub3MoKGludCkgKChtaWxsaXMgJSAxMDAwKSAqIDEwMDAwMDApKS5idWlsZCgpOwoKCiBFeGFtcGxlIDU6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gY3VycmVudCB0aW1lIGluIFB5dGhvbi4KCiAgICAgdGltZXN0YW1wID0gVGltZXN0YW1wKCkKICAgICB0aW1lc3RhbXAuR2V0Q3VycmVudFRpbWUoKQoKICMgSlNPTiBNYXBwaW5nCgogSW4gSlNPTiBmb3JtYXQsIHRoZSBUaW1lc3RhbXAgdHlwZSBpcyBlbmNvZGVkIGFzIGEgc3RyaW5nIGluIHRoZQogW1JGQyAzMzM5XShodHRwczovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzMzOS50eHQpIGZvcm1hdC4gVGhhdCBpcywgdGhlCiBmb3JtYXQgaXMgInt5ZWFyfS17bW9udGh9LXtkYXl9VHtob3VyfTp7bWlufTp7c2VjfVsue2ZyYWNfc2VjfV1aIgogd2hlcmUge3llYXJ9IGlzIGFsd2F5cyBleHByZXNzZWQgdXNpbmcgZm91ciBkaWdpdHMgd2hpbGUge21vbnRofSwge2RheX0sCiB7aG91cn0sIHttaW59LCBhbmQge3NlY30gYXJlIHplcm8tcGFkZGVkIHRvIHR3byBkaWdpdHMgZWFjaC4gVGhlIGZyYWN0aW9uYWwKIHNlY29uZHMsIHdoaWNoIGNhbiBnbyB1cCB0byA5IGRpZ2l0cyAoaS5lLiB1cCB0byAxIG5hbm9zZWNvbmQgcmVzb2x1dGlvbiksCiBhcmUgb3B0aW9uYWwuIFRoZSAiWiIgc3VmZml4IGluZGljYXRlcyB0aGUgdGltZXpvbmUgKCJVVEMiKTsgdGhlIHRpbWV6b25lCiBpcyByZXF1aXJlZC4gQSBwcm90bzMgSlNPTiBzZXJpYWxpemVyIHNob3VsZCBhbHdheXMgdXNlIFVUQyAoYXMgaW5kaWNhdGVkIGJ5CiAiWiIpIHdoZW4gcHJpbnRpbmcgdGhlIFRpbWVzdGFtcCB0eXBlIGFuZCBhIHByb3RvMyBKU09OIHBhcnNlciBzaG91bGQgYmUKIGFibGUgdG8gYWNjZXB0IGJvdGggVVRDIGFuZCBvdGhlciB0aW1lem9uZXMgKGFzIGluZGljYXRlZCBieSBhbiBvZmZzZXQpLgoKIEZvciBleGFtcGxlLCAiMjAxNy0wMS0xNVQwMTozMDoxNS4wMVoiIGVuY29kZXMgMTUuMDEgc2Vjb25kcyBwYXN0CiAwMTozMCBVVEMgb24gSmFudWFyeSAxNSwgMjAxNy4KCiBJbiBKYXZhU2NyaXB0LCBvbmUgY2FuIGNvbnZlcnQgYSBEYXRlIG9iamVjdCB0byB0aGlzIGZvcm1hdCB1c2luZyB0aGUKIHN0YW5kYXJkIFt0b0lTT1N0cmluZygpXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9EYXRlL3RvSVNPU3RyaW5nKQogbWV0aG9kLiBJbiBQeXRob24sIGEgc3RhbmRhcmQgYGRhdGV0aW1lLmRhdGV0aW1lYCBvYmplY3QgY2FuIGJlIGNvbnZlcnRlZAogdG8gdGhpcyBmb3JtYXQgdXNpbmcgW2BzdHJmdGltZWBdKGh0dHBzOi8vZG9jcy5weXRob24ub3JnLzIvbGlicmFyeS90aW1lLmh0bWwjdGltZS5zdHJmdGltZSkKIHdpdGggdGhlIHRpbWUgZm9ybWF0IHNwZWMgJyVZLSVtLSVkVCVIOiVNOiVTLiVmWicuIExpa2V3aXNlLCBpbiBKYXZhLCBvbmUKIGNhbiB1c2UgdGhlIEpvZGEgVGltZSdzIFtgSVNPRGF0ZVRpbWVGb3JtYXQuZGF0ZVRpbWUoKWBdKAogaHR0cDovL3d3dy5qb2RhLm9yZy9qb2RhLXRpbWUvYXBpZG9jcy9vcmcvam9kYS90aW1lL2Zvcm1hdC9JU09EYXRlVGltZUZvcm1hdC5odG1sI2RhdGVUaW1lJTJEJTJECiApIHRvIG9idGFpbiBhIGZvcm1hdHRlciBjYXBhYmxlIG9mIGdlbmVyYXRpbmcgdGltZXN0YW1wcyBpbiB0aGlzIGZvcm1hdC4KCgoKCgoDBAABEgN8CBEKnQEKBAQAAgASBIEBAhQajgEgUmVwcmVzZW50cyBzZWNvbmRzIG9mIFVUQyB0aW1lIHNpbmNlIFVuaXggZXBvY2gKIDE5NzAtMDEtMDFUMDA6MDA6MDBaLiBNdXN0IGJlIGZyb20gMDAwMS0wMS0wMVQwMDowMDowMFogdG8KIDk5OTktMTItMzFUMjM6NTk6NTlaIGluY2x1c2l2ZS4KCg4KBQQAAgAEEgWBAQJ8EwoNCgUEAAIABRIEgQECBwoNCgUEAAIAARIEgQEIDwoNCgUEAAIAAxIEgQESEwrlAQoEBAACARIEhwECEhrWASBOb24tbmVnYXRpdmUgZnJhY3Rpb25zIG9mIGEgc2Vjb25kIGF0IG5hbm9zZWNvbmQgcmVzb2x1dGlvbi4gTmVnYXRpdmUKIHNlY29uZCB2YWx1ZXMgd2l0aCBmcmFjdGlvbnMgbXVzdCBzdGlsbCBoYXZlIG5vbi1uZWdhdGl2ZSBuYW5vcyB2YWx1ZXMKIHRoYXQgY291bnQgZm9yd2FyZCBpbiB0aW1lLiBNdXN0IGJlIGZyb20gMCB0byA5OTksOTk5LDk5OQogaW5jbHVzaXZlLgoKDwoFBAACAQQSBocBAoEBFAoNCgUEAAIBBRIEhwECBwoNCgUEAAIBARIEhwEIDQoNCgUEAAIBAxIEhwEQEWIGcHJvdG8zCtWYAQoMZG1pL2h3LnByb3RvEgNkbWkaH2dvb2dsZS9wcm90b2J1Zi90aW1lc3RhbXAucHJvdG8iGgoEVXVpZBISCgR1dWlkGAEgASgJUgR1dWlkIisKCkhhcmR3YXJlSUQSHQoEdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgR1dWlkIhcKA1VyaRIQCgN1cmkYASABKAlSA3VyaSKEAwoOQ29tcG9uZW50U3RhdGUSSAoSc3RhdGVfbGFzdF9jaGFuZ2VkGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIQc3RhdGVMYXN0Q2hhbmdlZBI5CgthZG1pbl9zdGF0ZRgCIAEoDjIYLmRtaS5Db21wb25lbnRBZG1pblN0YXRlUgphZG1pblN0YXRlEjYKCm9wZXJfc3RhdGUYAyABKA4yFy5kbWkuQ29tcG9uZW50T3BlclN0YXRlUglvcGVyU3RhdGUSOQoLdXNhZ2Vfc3RhdGUYBCABKA4yGC5kbWkuQ29tcG9uZW50VXNhZ2VTdGF0ZVIKdXNhZ2VTdGF0ZRI5CgthbGFybV9zdGF0ZRgFIAEoDjIYLmRtaS5Db21wb25lbnRBbGFybVN0YXRlUgphbGFybVN0YXRlEj8KDXN0YW5kYnlfc3RhdGUYBiABKA4yGi5kbWkuQ29tcG9uZW50U3RhbmRieVN0YXRlUgxzdGFuZGJ5U3RhdGUi6wIKE0NvbXBvbmVudFNlbnNvckRhdGESFAoFdmFsdWUYASABKAVSBXZhbHVlEiYKBHR5cGUYAiABKA4yEi5kbWkuRGF0YVZhbHVlVHlwZVIEdHlwZRIlCgVzY2FsZRgDIAEoDjIPLmRtaS5WYWx1ZVNjYWxlUgVzY2FsZRIcCglwcmVjaXNpb24YBCABKAVSCXByZWNpc2lvbhIpCgZzdGF0dXMYBSABKA4yES5kbWkuU2Vuc29yU3RhdHVzUgZzdGF0dXMSIwoNdW5pdHNfZGlzcGxheRgGIAEoCVIMdW5pdHNEaXNwbGF5EjgKCXRpbWVzdGFtcBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSCXRpbWVzdGFtcBIqChF2YWx1ZV91cGRhdGVfcmF0ZRgIIAEoDVIPdmFsdWVVcGRhdGVSYXRlEhsKCWRhdGFfdHlwZRgJIAEoCVIIZGF0YVR5cGUisQUKF1BvcnRDb21wb25lbnRBdHRyaWJ1dGVzElEKDmNvbm5lY3Rvcl90eXBlGAEgASgOMiouZG1pLlBvcnRDb21wb25lbnRBdHRyaWJ1dGVzLkNvbm5lY3RvclR5cGVSDWNvbm5lY3RvclR5cGUSOAoFc3BlZWQYAiABKA4yIi5kbWkuUG9ydENvbXBvbmVudEF0dHJpYnV0ZXMuU3BlZWRSBXNwZWVkEkEKCHByb3RvY29sGAMgASgOMiUuZG1pLlBvcnRDb21wb25lbnRBdHRyaWJ1dGVzLlByb3RvY29sUghwcm90b2NvbBIlCg5waHlzaWNhbF9sYWJlbBgEIAEoCVINcGh5c2ljYWxMYWJlbCJwCg1Db25uZWN0b3JUeXBlEhwKGENPTk5FQ1RPUl9UWVBFX1VOREVGSU5FRBAAEggKBFJKNDUQARIMCghGSUJFUl9MQxACEg8KC0ZJQkVSX1NDX1BDEAMSDQoJRklCRVJfTVBPEAQSCQoFUlMyMzIQBSKuAQoFU3BlZWQSEwoPU1BFRURfVU5ERUZJTkVEEAASCwoHRFlOQU1JQxABEg0KCUdJR0FCSVRfMRACEg4KCkdJR0FCSVRfMTAQAxIOCgpHSUdBQklUXzI1EAQSDgoKR0lHQUJJVF80MBAFEg8KC0dJR0FCSVRfMTAwEAYSDwoLR0lHQUJJVF80MDAQBxIQCgxNRUdBQklUXzI1MDAQCBIQCgxNRUdBQklUXzEyNTAQCSJ8CghQcm90b2NvbBIWChJQUk9UT0NPTF9VTkRFRklORUQQABIMCghFVEhFUk5FVBABEggKBEdQT04QAhIJCgVYR1BPThADEgoKBlhHU1BPThAEEgkKBUdGQVNUEAUSCgoGU0VSSUFMEAYSCAoERVBPThAHEggKBEJJVFMQCCJFChxDb250YWluZXJDb21wb25lbnRBdHRyaWJ1dGVzEiUKDnBoeXNpY2FsX2xhYmVsGAEgASgJUg1waHlzaWNhbExhYmVsIsUBChZQc3VDb21wb25lbnRBdHRyaWJ1dGVzElkKEXN1cHBvcnRlZF92b2x0YWdlGAEgASgOMiwuZG1pLlBzdUNvbXBvbmVudEF0dHJpYnV0ZXMuU3VwcG9ydGVkVm9sdGFnZVIQc3VwcG9ydGVkVm9sdGFnZSJQChBTdXBwb3J0ZWRWb2x0YWdlEh8KG1NVUFBPUlRFRF9WT0xUQUdFX1VOREVGSU5FRBAAEgcKA1Y0OBABEggKBFYyMzAQAhIICgRWMTE1EAMi0gUKH1RyYW5zY2VpdmVyQ29tcG9uZW50c0F0dHJpYnV0ZXMSUAoLZm9ybV9mYWN0b3IYASABKA4yLy5kbWkuVHJhbnNjZWl2ZXJDb21wb25lbnRzQXR0cmlidXRlcy5Gb3JtRmFjdG9yUgpmb3JtRmFjdG9yEkgKCnRyYW5zX3R5cGUYAiABKA4yKS5kbWkuVHJhbnNjZWl2ZXJDb21wb25lbnRzQXR0cmlidXRlcy5UeXBlUgl0cmFuc1R5cGUSIQoMbWF4X2Rpc3RhbmNlGAMgASgNUgttYXhEaXN0YW5jZRI9ChJtYXhfZGlzdGFuY2Vfc2NhbGUYBCABKA4yDy5kbWkuVmFsdWVTY2FsZVIQbWF4RGlzdGFuY2VTY2FsZRIjCg1yeF93YXZlbGVuZ3RoGAUgAygNUgxyeFdhdmVsZW5ndGgSIwoNdHhfd2F2ZWxlbmd0aBgGIAMoDVIMdHhXYXZlbGVuZ3RoEjoKEHdhdmVsZW5ndGhfc2NhbGUYByABKA4yDy5kbWkuVmFsdWVTY2FsZVIPd2F2ZWxlbmd0aFNjYWxlIsABCgpGb3JtRmFjdG9yEhcKE0ZPUk1fRkFDVE9SX1VOS05PV04QABIICgRRU0ZQEAESDQoJUVNGUF9QTFVTEAISCgoGUVNGUDI4EAMSBwoDU0ZQEAQSDAoIU0ZQX1BMVVMQBRIHCgNYRlAQBhIICgRDRlA0EAcSCAoEQ0ZQMhAIEggKBENQQUsQCRIGCgJYMhAKEgkKBU9USEVSEAsSBwoDQ0ZQEAwSDAoIQ0ZQMl9BQ08QDRIMCghDRlAyX0RDTxAOImgKBFR5cGUSEAoMVFlQRV9VTktOT1dOEAASDAoIRVRIRVJORVQQARIICgRHUE9OEAISCQoFWEdQT04QAxIKCgZYR1NQT04QBBIICgRDUE9OEAUSCwoHTkdfUE9OMhAGEggKBEVQT04QByLZBwoJQ29tcG9uZW50EhIKBG5hbWUYASABKAlSBG5hbWUSKAoFY2xhc3MYAiABKA4yEi5kbWkuQ29tcG9uZW50VHlwZVIFY2xhc3MSIAoLZGVzY3JpcHRpb24YAyABKAlSC2Rlc2NyaXB0aW9uEhYKBnBhcmVudBgEIAEoCVIGcGFyZW50EiQKDnBhcmVudF9yZWxfcG9zGAUgASgFUgxwYXJlbnRSZWxQb3MSKgoIY2hpbGRyZW4YBiADKAsyDi5kbWkuQ29tcG9uZW50UghjaGlsZHJlbhIhCgxoYXJkd2FyZV9yZXYYByABKAlSC2hhcmR3YXJlUmV2EiEKDGZpcm13YXJlX3JldhgIIAEoCVILZmlybXdhcmVSZXYSIQoMc29mdHdhcmVfcmV2GAkgASgJUgtzb2Z0d2FyZVJldhIdCgpzZXJpYWxfbnVtGAogASgJUglzZXJpYWxOdW0SGQoIbWZnX25hbWUYCyABKAlSB21mZ05hbWUSHQoKbW9kZWxfbmFtZRgMIAEoCVIJbW9kZWxOYW1lEhQKBWFsaWFzGA0gASgJUgVhbGlhcxIZCghhc3NldF9pZBgOIAEoCVIHYXNzZXRJZBIVCgZpc19mcnUYDyABKAhSBWlzRnJ1EjUKCG1mZ19kYXRlGBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIHbWZnRGF0ZRIaCgN1cmkYESABKAsyCC5kbWkuVXJpUgN1cmkSHQoEdXVpZBgSIAEoCzIJLmRtaS5VdWlkUgR1dWlkEikKBXN0YXRlGBMgASgLMhMuZG1pLkNvbXBvbmVudFN0YXRlUgVzdGF0ZRI5CgtzZW5zb3JfZGF0YRgUIAMoCzIYLmRtaS5Db21wb25lbnRTZW5zb3JEYXRhUgpzZW5zb3JEYXRhEjsKCXBvcnRfYXR0chgyIAEoCzIcLmRtaS5Qb3J0Q29tcG9uZW50QXR0cmlidXRlc0gAUghwb3J0QXR0chJKCg5jb250YWluZXJfYXR0chgzIAEoCzIhLmRtaS5Db250YWluZXJDb21wb25lbnRBdHRyaWJ1dGVzSABSDWNvbnRhaW5lckF0dHISOAoIcHN1X2F0dHIYNCABKAsyGy5kbWkuUHN1Q29tcG9uZW50QXR0cmlidXRlc0gAUgdwc3VBdHRyElEKEHRyYW5zY2VpdmVyX2F0dHIYNSABKAsyJC5kbWkuVHJhbnNjZWl2ZXJDb21wb25lbnRzQXR0cmlidXRlc0gAUg90cmFuc2NlaXZlckF0dHJCCgoIc3BlY2lmaWMiqAEKCEhhcmR3YXJlEjsKC2xhc3RfY2hhbmdlGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcFIKbGFzdENoYW5nZRIiCgRyb290GAIgASgLMg4uZG1pLkNvbXBvbmVudFIEcm9vdBI7CgtsYXN0X2Jvb3RlZBgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSCmxhc3RCb290ZWQiqQIKE01vZGlmaWFibGVDb21wb25lbnQSEgoEbmFtZRgBIAEoCVIEbmFtZRIoCgVjbGFzcxgCIAEoDjISLmRtaS5Db21wb25lbnRUeXBlUgVjbGFzcxImCgZwYXJlbnQYAyABKAsyDi5kbWkuQ29tcG9uZW50UgZwYXJlbnQSJAoOcGFyZW50X3JlbF9wb3MYBCABKAVSDHBhcmVudFJlbFBvcxIUCgVhbGlhcxgFIAEoCVIFYWxpYXMSGQoIYXNzZXRfaWQYBiABKAlSB2Fzc2V0SWQSGgoDdXJpGAcgASgLMgguZG1pLlVyaVIDdXJpEjkKC2FkbWluX3N0YXRlGAggASgOMhguZG1pLkNvbXBvbmVudEFkbWluU3RhdGVSCmFkbWluU3RhdGUqtAMKDUNvbXBvbmVudFR5cGUSHAoYQ09NUE9ORU5UX1RZUEVfVU5ERUZJTkVEEAASGgoWQ09NUE9ORU5UX1RZUEVfVU5LTk9XThABEhoKFkNPTVBPTkVOVF9UWVBFX0NIQVNTSVMQAhIcChhDT01QT05FTlRfVFlQRV9CQUNLUExBTkUQAxIcChhDT01QT05FTlRfVFlQRV9DT05UQUlORVIQBBIfChtDT01QT05FTlRfVFlQRV9QT1dFUl9TVVBQTFkQBRIWChJDT01QT05FTlRfVFlQRV9GQU4QBhIZChVDT01QT05FTlRfVFlQRV9TRU5TT1IQBxIZChVDT01QT05FTlRfVFlQRV9NT0RVTEUQCBIXChNDT01QT05FTlRfVFlQRV9QT1JUEAkSFgoSQ09NUE9ORU5UX1RZUEVfQ1BVEAoSGgoWQ09NUE9ORU5UX1RZUEVfQkFUVEVSWRALEhoKFkNPTVBPTkVOVF9UWVBFX1NUT1JBR0UQDBIZChVDT01QT05FTlRfVFlQRV9NRU1PUlkQDRIeChpDT01QT05FTlRfVFlQRV9UUkFOU0NFSVZFUhAOKrMBChNDb21wb25lbnRBZG1pblN0YXRlEh4KGkNPTVBfQURNSU5fU1RBVEVfVU5ERUZJTkVEEAASHAoYQ09NUF9BRE1JTl9TVEFURV9VTktOT1dOEAESGwoXQ09NUF9BRE1JTl9TVEFURV9MT0NLRUQQAhIiCh5DT01QX0FETUlOX1NUQVRFX1NIVVRUSU5HX0RPV04QAxIdChlDT01QX0FETUlOX1NUQVRFX1VOTE9DS0VEEAQqqAEKEkNvbXBvbmVudE9wZXJTdGF0ZRIdChlDT01QX09QRVJfU1RBVEVfVU5ERUZJTkVEEAASGwoXQ09NUF9PUEVSX1NUQVRFX1VOS05PV04QARIcChhDT01QX09QRVJfU1RBVEVfRElTQUJMRUQQAhIbChdDT01QX09QRVJfU1RBVEVfRU5BQkxFRBADEhsKF0NPTVBfT1BFUl9TVEFURV9URVNUSU5HEAQqpgEKE0NvbXBvbmVudFVzYWdlU3RhdGUSHgoaQ09NUF9VU0FHRV9TVEFURV9VTkRFRklORUQQABIcChhDT01QX1VTQUdFX1NUQVRFX1VOS05PV04QARIZChVDT01QX1VTQUdFX1NUQVRFX0lETEUQAhIbChdDT01QX1VTQUdFX1NUQVRFX0FDVElWRRADEhkKFUNPTVBfVVNBR0VfU1RBVEVfQlVTWRAEKo8CChNDb21wb25lbnRBbGFybVN0YXRlEh4KGkNPTVBfQUxBUk1fU1RBVEVfVU5ERUZJTkVEEAASHAoYQ09NUF9BTEFSTV9TVEFURV9VTktOT1dOEAESIQodQ09NUF9BTEFSTV9TVEFURV9VTkRFUl9SRVBBSVIQAhIdChlDT01QX0FMQVJNX1NUQVRFX0NSSVRJQ0FMEAMSGgoWQ09NUF9BTEFSTV9TVEFURV9NQUpPUhAEEhoKFkNPTVBfQUxBUk1fU1RBVEVfTUlOT1IQBRIcChhDT01QX0FMQVJNX1NUQVRFX1dBUk5JTkcQBhIiCh5DT01QX0FMQVJNX1NUQVRFX0lOREVURVJNSU5BVEUQByq8AQoVQ29tcG9uZW50U3RhbmRieVN0YXRlEiAKHENPTVBfU1RBTkRCWV9TVEFURV9VTkRFRklORUQQABIeChpDT01QX1NUQU5EQllfU1RBVEVfVU5LTk9XThABEhoKFkNPTVBfU1RBTkRCWV9TVEFURV9IT1QQAhIbChdDT01QX1NUQU5EQllfU1RBVEVfQ09MRBADEigKJENPTVBfU1RBTkRCWV9TVEFURV9QUk9WSURJTkdfU0VSVklDRRAEKokDCg1EYXRhVmFsdWVUeXBlEhgKFFZBTFVFX1RZUEVfVU5ERUZJTkVEEAASFAoQVkFMVUVfVFlQRV9PVEhFUhABEhYKElZBTFVFX1RZUEVfVU5LTk9XThACEhcKE1ZBTFVFX1RZUEVfVk9MVFNfQUMQAxIXChNWQUxVRV9UWVBFX1ZPTFRTX0RDEAQSFgoSVkFMVUVfVFlQRV9BTVBFUkVTEAUSFAoQVkFMVUVfVFlQRV9XQVRUUxAGEhQKEFZBTFVFX1RZUEVfSEVSVFoQBxIWChJWQUxVRV9UWVBFX0NFTFNJVVMQCBIZChVWQUxVRV9UWVBFX1BFUkNFTlRfUkgQCRISCg5WQUxVRV9UWVBFX1JQTRAKEhIKDlZBTFVFX1RZUEVfQ01NEAsSGgoWVkFMVUVfVFlQRV9UUlVUSF9WQUxVRRAMEhYKElZBTFVFX1RZUEVfUEVSQ0VOVBANEhUKEVZBTFVFX1RZUEVfTUVURVJTEA4SFAoQVkFMVUVfVFlQRV9CWVRFUxAPKqQDCgpWYWx1ZVNjYWxlEhkKFVZBTFVFX1NDQUxFX1VOREVGSU5FRBAAEhUKEVZBTFVFX1NDQUxFX1lPQ1RPEAESFQoRVkFMVUVfU0NBTEVfWkVQVE8QAhIUChBWQUxVRV9TQ0FMRV9BVFRPEAMSFQoRVkFMVUVfU0NBTEVfRkVNVE8QBBIUChBWQUxVRV9TQ0FMRV9QSUNPEAUSFAoQVkFMVUVfU0NBTEVfTkFOTxAGEhUKEVZBTFVFX1NDQUxFX01JQ1JPEAcSFQoRVkFMVUVfU0NBTEVfTUlMTEkQCBIVChFWQUxVRV9TQ0FMRV9VTklUUxAJEhQKEFZBTFVFX1NDQUxFX0tJTE8QChIUChBWQUxVRV9TQ0FMRV9NRUdBEAsSFAoQVkFMVUVfU0NBTEVfR0lHQRAMEhQKEFZBTFVFX1NDQUxFX1RFUkEQDRIUChBWQUxVRV9TQ0FMRV9QRVRBEA4SEwoPVkFMVUVfU0NBTEVfRVhBEA8SFQoRVkFMVUVfU0NBTEVfWkVUVEEQEBIVChFWQUxVRV9TQ0FMRV9ZT1RUQRARKoIBCgxTZW5zb3JTdGF0dXMSGwoXU0VOU09SX1NUQVRVU19VTkRFRklORUQQABIUChBTRU5TT1JfU1RBVFVTX09LEAESHQoZU0VOU09SX1NUQVRVU19VTkFWQUlMQUJMRRACEiAKHFNFTlNPUl9TVEFUVVNfTk9OT1BFUkFUSU9OQUwQA0I7WjlnaXRodWIuY29tL29wZW5jb3JkL2RldmljZS1tYW5hZ2VtZW50LWludGVyZmFjZS92My9nby9kbWlK7WUKBxIFAACtAgEKCAoBDBIDAAASCggKAQgSAwIAUAoJCgIICxIDAgBQCggKAQISAwMADAoJCgIDABIDBQApCmkKAgQAEgQJAAsBMl0gVGhlIG1vZGVsIHVzZWQgdG8gcmVwcmVzZW50IGEgSFcgaXMgYmFzZWQgb24gUkZDODM0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UgdldmVudElkEiMKDWlzX2NvbmZpZ3VyZWQYAiABKAhSDGlzQ29uZmlndXJlZBIvCgp0aHJlc2hvbGRzGAMgASgLMg8uZG1pLlRocmVzaG9sZHNSCnRocmVzaG9sZHMiMAoJRXZlbnRzQ2ZnEiMKBWl0ZW1zGAEgAygLMg0uZG1pLkV2ZW50Q2ZnUgVpdGVtcyKeAgoSTGlzdEV2ZW50c1Jlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI2CgZyZWFzb24YAiABKA4yHi5kbWkuTGlzdEV2ZW50c1Jlc3BvbnNlLlJlYXNvblIGcmVhc29uEiYKBmV2ZW50cxgDIAEoCzIOLmRtaS5FdmVudHNDZmdSBmV2ZW50cxIjCg1yZWFzb25fZGV0YWlsGAQgASgJUgxyZWFzb25EZXRhaWwiXgoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhIKDklOVEVSTkFMX0VSUk9SEAISFgoSREVWSUNFX1VOUkVBQ0hBQkxFEAMirQEKGkV2ZW50c0NvbmZpZ3VyYXRpb25SZXF1ZXN0EioKC2RldmljZV91dWlkGAEgASgLMgkuZG1pLlV1aWRSCmRldmljZVV1aWQSKgoHY2hhbmdlcxgCIAEoCzIOLmRtaS5FdmVudHNDZmdIAFIHY2hhbmdlcxIqChByZXNldF90b19kZWZhdWx0GAMgASgISABSDnJlc2V0VG9EZWZhdWx0QgsKCW9wZXJhdGlvbiKcAgobRXZlbnRzQ29uZmlndXJhdGlvblJlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI/CgZyZWFzb24YAiABKA4yJy5kbWkuRXZlbnRzQ29uZmlndXJhdGlvblJlc3BvbnNlLlJlYXNvblIGcmVhc29uEiMKDXJlYXNvbl9kZXRhaWwYAyABKAlSDHJlYXNvbkRldGFpbCJyCgZSZWFzb24SFAoQVU5ERUZJTkVEX1JFQVNPThAAEhIKDlVOS05PV05fREVWSUNFEAESEgoOSU5URVJOQUxfRVJST1IQAhISCg5JTlZBTElEX0NPTkZJRxADEhYKEkRFVklDRV9VTlJFQUNIQUJMRRAEIpQBCg1FdmVudE1ldGFEYXRhEioKC2RldmljZV91dWlkGAEgASgLMgkuZG1pLlV1aWRSCmRldmljZVV1aWQSMAoOY29tcG9uZW50X3V1aWQYAiABKAsyCS5kbWkuVXVpZFINY29tcG9uZW50VXVpZBIlCg5jb21wb25lbnRfbmFtZRgDIAEoCVINY29tcG9uZW50TmFtZSKCAgoFRXZlbnQSOQoOZXZlbnRfbWV0YWRhdGEYASABKAsyEi5kbWkuRXZlbnRNZXRhRGF0YVINZXZlbnRNZXRhZGF0YRIoCghldmVudF9pZBgCIAEoDjINLmRtaS5FdmVudElkc1IHZXZlbnRJZBI3CglyYWlzZWRfdHMYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUghyYWlzZWRUcxJACg50aHJlc2hvbGRfaW5mbxgEIAEoCzIZLmRtaS5UaHJlc2hvbGRJbmZvcm1hdGlvblINdGhyZXNob2xkSW5mbxIZCghhZGRfaW5mbxgFIAEoCVIHYWRkSW5mbyrRDgoIRXZlbnRJZHMSGAoURVZFTlRfTkFNRV9VTkRFRklORUQQABIeChpFVkVOVF9UUkFOU0NFSVZFUl9QTFVHX09VVBBkEh0KGUVWRU5UX1RSQU5TQ0VJVkVSX1BMVUdfSU4QZRItCilFVkVOVF9UUkFOU0NFSVZFUl9WT0xUQUdFX0FCT1ZFX1RIUkVTSE9MRBBmEi0KKUVWRU5UX1RSQU5TQ0VJVkVSX1ZPTFRBR0VfQkVMT1dfVEhSRVNIT0xEEGcSMQotRVZFTlRfVFJBTlNDRUlWRVJfVEVNUEVSQVRVUkVfQUJPVkVfVEhSRVNIT0xEEGgSMQotRVZFTlRfVFJBTlNDRUlWRVJfVEVNUEVSQVRVUkVfQkVMT1dfVEhSRVNIT0xEEGkSLQopRVZFTlRfVFJBTlNDRUlWRVJfQ1VSUkVOVF9BQk9WRV9USFJFU0hPTEQQahItCilFVkVOVF9UUkFOU0NFSVZFUl9DVVJSRU5UX0JFTE9XX1RIUkVTSE9MRBBrEi4KKkVWRU5UX1RSQU5TQ0VJVkVSX1JYX1BPV0VSX0FCT1ZFX1RIUkVTSE9MRBBsEi4KKkVWRU5UX1RSQU5TQ0VJVkVSX1JYX1BPV0VSX0JFTE9XX1RIUkVTSE9MRBBtEi4KKkVWRU5UX1RSQU5TQ0VJVkVSX1RYX1BPV0VSX0FCT1ZFX1RIUkVTSE9MRBBuEi4KKkVWRU5UX1RSQU5TQ0VJVkVSX1RYX1BPV0VSX0JFTE9XX1RIUkVTSE9MRBBvEh0KGUVWRU5UX1RSQU5TQ0VJVkVSX0ZBSUxVUkUQcBI3CjNFVkVOVF9UUkFOU0NFSVZFUl9WT0xUQUdFX0FCT1ZFX1RIUkVTSE9MRF9SRUNPVkVSRUQQcRI3CjNFVkVOVF9UUkFOU0NFSVZFUl9WT0xUQUdFX0JFTE9XX1RIUkVTSE9MRF9SRUNPVkVSRUQQchI7CjdFVkVOVF9UUkFOU0NFSVZFUl9URU1QRVJBVFVSRV9BQk9WRV9USFJFU0hPTERfUkVDT1ZFUkVEEHMSOwo3RVZFTlRfVFJBTlNDRUlWRVJfVEVNUEVSQVRVUkVfQkVMT1dfVEhSRVNIT0xEX1JFQ09WRVJFRBB0EjcKM0VWRU5UX1RSQU5TQ0VJVkVSX0NVUlJFTlRfQUJPVkVfVEhSRVNIT0xEX1JFQ09WRVJFRBB1EjcKM0VWRU5UX1RSQU5TQ0VJVkVSX0NVUlJFTlRfQkVMT1dfVEhSRVNIT0xEX1JFQ09WRVJFRBB2EjgKNEVWRU5UX1RSQU5TQ0VJVkVSX1JYX1BPV0VSX0FCT1ZFX1RIUkVTSE9MRF9SRUNPVkVSRUQQdxI4CjRFVkVOVF9UUkFOU0NFSVZFUl9SWF9QT1dFUl9CRUxPV19USFJFU0hPTERfUkVDT1ZFUkVEEHgSOAo0RVZFTlRfVFJBTlNDRUlWRVJfVFhfUE9XRVJfQUJPVkVfVEhSRVNIT0xEX1JFQ09WRVJFRBB5EjgKNEVWRU5UX1RSQU5TQ0VJVkVSX1RYX1BPV0VSX0JFTE9XX1RIUkVTSE9MRF9SRUNPVkVSRUQQehInCiNFVkVOVF9UUkFOU0NFSVZFUl9GQUlMVVJFX1JFQ09WRVJFRBB7EhcKEkVWRU5UX1BTVV9QTFVHX09VVBDIARIWChFFVkVOVF9QU1VfUExVR19JThDJARIWChFFVkVOVF9QU1VfRkFJTFVSRRDKARIgChtFVkVOVF9QU1VfRkFJTFVSRV9SRUNPVkVSRUQQywESFgoRRVZFTlRfRkFOX0ZBSUxVUkUQrAISFwoSRVZFTlRfRkFOX1BMVUdfT1VUEK0CEhYKEUVWRU5UX0ZBTl9QTFVHX0lOEK4CEiAKG0VWRU5UX0ZBTl9GQUlMVVJFX1JFQ09WRVJFRBCvAhIpCiRFVkVOVF9DUFVfVEVNUEVSQVRVUkVfQUJPVkVfQ1JJVElDQUwQkAMSJgohRVZFTlRfQ1BVX1RFTVBFUkFUVVJFX0FCT1ZFX0ZBVEFMEJEDEjMKLkVWRU5UX0NQVV9URU1QRVJBVFVSRV9BQk9WRV9DUklUSUNBTF9SRUNPVkVSRUQQkgMSMAorRVZFTlRfQ1BVX1RFTVBFUkFUVVJFX0FCT1ZFX0ZBVEFMX1JFQ09WRVJFRBCTAxIaChVFVkVOVF9IV19ERVZJQ0VfUkVTRVQQ9AMSLwoqRVZFTlRfSFdfREVWSUNFX1RFTVBFUkFUVVJFX0FCT1ZFX0NSSVRJQ0FMEPUDEiwKJ0VWRU5UX0hXX0RFVklDRV9URU1QRVJBVFVSRV9BQk9WRV9GQVRBTBD2AxI5CjRFVkVOVF9IV19ERVZJQ0VfVEVNUEVSQVRVUkVfQUJPVkVfQ1JJVElDQUxfUkVDT1ZFUkVEEPcDEjYKMUVWRU5UX0hXX0RFVklDRV9URU1QRVJBVFVSRV9BQk9WRV9GQVRBTF9SRUNPVkVSRUQQ+AMytwEKHU5hdGl2ZUV2ZW50c01hbmFnZW1lbnRTZXJ2aWNlEjYKCkxpc3RFdmVudHMSDy5kbWkuSGFyZHdhcmVJRBoXLmRtaS5MaXN0RXZlbnRzUmVzcG9uc2USXgoZVXBkYXRlRXZlbnRzQ29uZmlndXJhdGlvbhIfLmRtaS5FdmVudHNDb25maWd1cmF0aW9uUmVxdWVzdBogLmRtaS5FdmVudHNDb25maWd1cmF0aW9uUmVzcG9uc2VCO1o5Z2l0aHViLmNvbS9vcGVuY29yZC9kZXZpY2UtbWFuYWdlbWVudC1pbnRlcmZhY2UvdjMvZ28vZG1pSrwtCgcSBQAAqAEBCggKAQwSAwAAEgoICgEIEgMCAFAKCQoCCAsSAwIAUAoICgECEgMDAAwKCQoCAwASAwUAGwoJCgIDARIDBgAWCgkKAgMCEgMHACkKRQoCBQASBAsAQgEyOSBNYW5hZ2VtZW50IG9mIEV2ZW50cyBhbmQgcHJvdG9zIGZvciBlbmNvZGluZyBvZiBFdmVudHMNCgoKCgMFAAESAwsF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bmZpZ3VyYXRpb24gb2YgdGhlIGxpc3Qgb2YgZXZlbnRzIGluIHRoZSByZXF1ZXN0DQogVGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGRldmljZSBpcyB0byByZXBvcnQgYWxsIHRoZSBzdXBwb3J0ZWQgZXZlbnRzDQogVGhpcyBjb25maWd1cmF0aW9uIGlzIHBlcnNpc3RlZCBhY3Jvc3MgcmVib290cyBvZiB0aGUgZGV2aWNlIG9yIHRoZSBkZXZpY2UgbWFuYWdlcg0KCg0KBQYAAgEBEgSnAQghCg0KBQYAAgECEgSnASI8Cg0KBQYAAgEDEgSnAUZhYgZwcm90bzMKuBIKG2dvb2dsZS9wcm90b2J1Zi9lbXB0eS5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIgcKBUVtcHR5QnYKE2NvbS5nb29nbGUucHJvdG9idWZCCkVtcHR5UHJvdG9QAVonZ2l0aHViLmNvbS9nb2xhbmcvcHJvdG9idWYvcHR5cGVzL2VtcHR5+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSv4QCgYSBB4AMxAKzAwKAQwSAx4AEjLBDCBQcm90b2NvbCBCdWZmZXJzIC0gR29vZ2xlJ3MgZGF0YSBpbnRlcmNoYW5nZSBmb3JtYXQKIENvcHlyaWdodCAyMDA4IEdvb2dsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogaHR0cHM6Ly9kZXZlbG9wZXJzLmdvb2dsZS5jb20vcHJvdG9jb2wtYnVmZmVycy8KCiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKIG1ldDoKCiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQogZGlzdHJpYnV0aW9uLgogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cwogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCgogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUwogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KCggKAQISAyAAGAoICgEIEgMiADsKCQoCCCUSAyIAOwoICgEIEgMjAD4KCQoCCAsSAyMAPgoICgEIEgMkACwKCQoCCAESAyQALAoICgEIEgMlACsKCQoCCAgSAyUAKwoICgEIEgMmACIKCQoCCAoSAyYAIgoICgEIEgMnACEKCQoCCCQSAycAIQoICgEIEgMoAB8KCQoCCB8SAygAHwr7AgoCBAASAzMAEBrvAiBBIGdlbmVyaWMgZW1wdHkgbWVzc2FnZSB0aGF0IHlvdSBjYW4gcmUtdXNlIHRvIGF2b2lkIGRlZmluaW5nIGR1cGxpY2F0ZWQKIGVtcHR5IG1lc3NhZ2VzIGluIHlvdXIgQVBJcy4gQSB0eXBpY2FsIGV4YW1wbGUgaXMgdG8gdXNlIGl0IGFzIHRoZSByZXF1ZXN0CiBvciB0aGUgcmVzcG9uc2UgdHlwZSBvZiBhbiBBUEkgbWV0aG9kLiBGb3IgaW5zdGFuY2U6CgogICAgIHNlcnZpY2UgRm9vIHsKICAgICAgIHJwYyBCYXIoZ29vZ2xlLnByb3RvYnVmLkVtcHR5KSByZXR1cm5zIChnb29nbGUucHJvdG9idWYuRW1wdHkpOwogICAgIH0KCiBUaGUgSlNPTiByZXByZXNlbnRhdGlvbiBmb3IgYEVtcHR5YCBpcyBlbXB0eSBKU09OIG9iamVjdCBge31gLgoKCgoDBAABEgMzCA1iBnByb3RvMwqVgQEKH2RtaS9od19tYW5hZ2VtZW50X3NlcnZpY2UucHJvdG8SA2RtaRoRZG1pL2NvbW1vbnMucHJvdG8aDGRtaS9ody5wcm90bxobZ29vZ2xlL3Byb3RvYnVmL2VtcHR5LnByb3RvIkYKGFBoeXNpY2FsSW52ZW50b3J5UmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkIrECChlQaHlzaWNhbEludmVudG9yeVJlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI9CgZyZWFzb24YAiABKA4yJS5kbWkuUGh5c2ljYWxJbnZlbnRvcnlSZXNwb25zZS5SZWFzb25SBnJlYXNvbhIrCglpbnZlbnRvcnkYAyABKAsyDS5kbWkuSGFyZHdhcmVSCWludmVudG9yeRIjCg1yZWFzb25fZGV0YWlsGAQgASgJUgxyZWFzb25EZXRhaWwiXgoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhIKDklOVEVSTkFMX0VSUk9SEAISFgoSREVWSUNFX1VOUkVBQ0hBQkxFEAMioAEKGUhXQ29tcG9uZW50SW5mb0dldFJlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIwCg5jb21wb25lbnRfdXVpZBgCIAEoCzIJLmRtaS5VdWlkUg1jb21wb25lbnRVdWlkEiUKDmNvbXBvbmVudF9uYW1lGAMgASgJUg1jb21wb25lbnROYW1lIssCChpIV0NvbXBvbmVudEluZm9HZXRSZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSPgoGcmVhc29uGAIgASgOMiYuZG1pLkhXQ29tcG9uZW50SW5mb0dldFJlc3BvbnNlLlJlYXNvblIGcmVhc29uEiwKCWNvbXBvbmVudBgDIAEoCzIOLmRtaS5Db21wb25lbnRSCWNvbXBvbmVudBIjCg1yZWFzb25fZGV0YWlsGAQgASgJUgxyZWFzb25EZXRhaWwidQoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhUKEVVOS05PV05fQ09NUE9ORU5UEAISEgoOSU5URVJOQUxfRVJST1IQAxIWChJERVZJQ0VfVU5SRUFDSEFCTEUQBCLUAQoZSFdDb21wb25lbnRJbmZvU2V0UmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEjAKDmNvbXBvbmVudF91dWlkGAIgASgLMgkuZG1pLlV1aWRSDWNvbXBvbmVudFV1aWQSJQoOY29tcG9uZW50X25hbWUYAyABKAlSDWNvbXBvbmVudE5hbWUSMgoHY2hhbmdlcxgEIAEoCzIYLmRtaS5Nb2RpZmlhYmxlQ29tcG9uZW50UgdjaGFuZ2VzIrICChpIV0NvbXBvbmVudEluZm9TZXRSZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSPgoGcmVhc29uGAIgASgOMiYuZG1pLkhXQ29tcG9uZW50SW5mb1NldFJlc3BvbnNlLlJlYXNvblIGcmVhc29uEiMKDXJlYXNvbl9kZXRhaWwYAyABKAlSDHJlYXNvbkRldGFpbCKJAQoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhUKEVVOS05PV05fQ09NUE9ORU5UEAISEgoOSU5WQUxJRF9QQVJBTVMQAxISCg5JTlRFUk5BTF9FUlJPUhAEEhYKEkRFVklDRV9VTlJFQUNIQUJMRRAFItwCChtTdGFydE1hbmFnaW5nRGV2aWNlUmVzcG9uc2USIwoGc3RhdHVzGAEgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEj8KBnJlYXNvbhgCIAEoDjInLmRtaS5TdGFydE1hbmFnaW5nRGV2aWNlUmVzcG9uc2UuUmVhc29uUgZyZWFzb24SKgoLZGV2aWNlX3V1aWQYAyABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIjCg1yZWFzb25fZGV0YWlsGAQgASgJUgxyZWFzb25EZXRhaWwihQEKBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASGgoWREVWSUNFX0FMUkVBRFlfTUFOQUdFRBABEiEKHU9QRVJBVElPTl9BTFJFQURZX0lOX1BST0dSRVNTEAISEgoOSU5WQUxJRF9QQVJBTVMQAxISCg5JTlRFUk5BTF9FUlJPUhAEIi8KGVN0b3BNYW5hZ2luZ0RldmljZVJlcXVlc3QSEgoEbmFtZRgBIAEoCVIEbmFtZSLaAQoaU3RvcE1hbmFnaW5nRGV2aWNlUmVzcG9uc2USIwoGc3RhdHVzGAEgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEj4KBnJlYXNvbhgCIAEoDjImLmRtaS5TdG9wTWFuYWdpbmdEZXZpY2VSZXNwb25zZS5SZWFzb25SBnJlYXNvbhIjCg1yZWFzb25fZGV0YWlsGAMgASgJUgxyZWFzb25EZXRhaWwiMgoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABIkwKFk1hbmFnZWREZXZpY2VzUmVzcG9uc2USMgoHZGV2aWNlcxgBIAMoCzIYLmRtaS5Nb2RpZmlhYmxlQ29tcG9uZW50UgdkZXZpY2VzIp0BChlTZXRMb2dnaW5nRW5kcG9pbnRSZXF1ZXN0EioKC2RldmljZV91dWlkGAEgASgLMgkuZG1pLlV1aWRSCmRldmljZVV1aWQSKQoQbG9nZ2luZ19lbmRwb2ludBgCIAEoCVIPbG9nZ2luZ0VuZHBvaW50EikKEGxvZ2dpbmdfcHJvdG9jb2wYAyABKAlSD2xvZ2dpbmdQcm90b2NvbCLhAgoZU2V0UmVtb3RlRW5kcG9pbnRSZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSPQoGcmVhc29uGAIgASgOMiUuZG1pLlNldFJlbW90ZUVuZHBvaW50UmVzcG9uc2UuUmVhc29uUgZyZWFzb24SIwoNcmVhc29uX2RldGFpbBgDIAEoCVIMcmVhc29uRGV0YWlsIroBCgZSZWFzb24SFAoQVU5ERUZJTkVEX1JFQVNPThAAEhIKDlVOS05PV05fREVWSUNFEAESEgoOSU5URVJOQUxfRVJST1IQAhIaChZMT0dHSU5HX0VORFBPSU5UX0VSUk9SEAMSIwofTE9HR0lOR19FTkRQT0lOVF9QUk9UT0NPTF9FUlJPUhAEEhkKFU1TR0JVU19FTkRQT0lOVF9FUlJPUhAFEhYKEkRFVklDRV9VTlJFQUNIQUJMRRAGItwCChpHZXRMb2dnaW5nRW5kcG9pbnRSZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSPgoGcmVhc29uGAIgASgOMiYuZG1pLkdldExvZ2dpbmdFbmRwb2ludFJlc3BvbnNlLlJlYXNvblIGcmVhc29uEikKEGxvZ2dpbmdfZW5kcG9pbnQYAyABKAlSD2xvZ2dpbmdFbmRwb2ludBIpChBsb2dnaW5nX3Byb3RvY29sGAQgASgJUg9sb2dnaW5nUHJvdG9jb2wSIwoNcmVhc29uX2RldGFpbBgFIAEoCVIMcmVhc29uRGV0YWlsIl4KBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASEgoOVU5LTk9XTl9ERVZJQ0UQARISCg5JTlRFUk5BTF9FUlJPUhACEhYKEkRFVklDRV9VTlJFQUNIQUJMRRADIkMKGFNldE1zZ0J1c0VuZHBvaW50UmVxdWVzdBInCg9tc2didXNfZW5kcG9pbnQYASABKAlSDm1zZ2J1c0VuZHBvaW50IpkCChlHZXRNc2dCdXNFbmRwb2ludFJlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI9CgZyZWFzb24YAiABKA4yJS5kbWkuR2V0TXNnQnVzRW5kcG9pbnRSZXNwb25zZS5SZWFzb25SBnJlYXNvbhInCg9tc2didXNfZW5kcG9pbnQYAyABKAlSDm1zZ2J1c0VuZHBvaW50EiMKDXJlYXNvbl9kZXRhaWwYBCABKAlSDHJlYXNvbkRldGFpbCJKCgZSZWFzb24SFAoQVU5ERUZJTkVEX1JFQVNPThAAEhIKDklOVEVSTkFMX0VSUk9SEAESFgoSREVWSUNFX1VOUkVBQ0hBQkxFEAIiWQoQRW50aXRpZXNMb2dMZXZlbBIpCghsb2dMZXZlbBgBIAEoDjINLmRtaS5Mb2dMZXZlbFIIbG9nTGV2ZWwSGgoIZW50aXRpZXMYAiADKAlSCGVudGl0aWVzInUKElNldExvZ0xldmVsUmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEjMKCWxvZ2xldmVscxgCIAMoCzIVLmRtaS5FbnRpdGllc0xvZ0xldmVsUglsb2dsZXZlbHMivAIKE1NldExvZ0xldmVsUmVzcG9uc2USKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIjCgZzdGF0dXMYAiABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSNwoGcmVhc29uGAMgASgOMh8uZG1pLlNldExvZ0xldmVsUmVzcG9uc2UuUmVhc29uUgZyZWFzb24SIwoNcmVhc29uX2RldGFpbBgEIAEoCVIMcmVhc29uRGV0YWlsInYKBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASEgoOVU5LTk9XTl9ERVZJQ0UQARISCg5JTlRFUk5BTF9FUlJPUhACEhYKElVOS05PV05fTE9HX0VOVElUWRADEhYKEkRFVklDRV9VTlJFQUNIQUJMRRAEIlwKEkdldExvZ0xldmVsUmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEhoKCGVudGl0aWVzGAIgAygJUghlbnRpdGllcyLxAgoTR2V0TG9nTGV2ZWxSZXNwb25zZRIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEjMKCWxvZ0xldmVscxgCIAMoCzIVLmRtaS5FbnRpdGllc0xvZ0xldmVsUglsb2dMZXZlbHMSIwoGc3RhdHVzGAMgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEjcKBnJlYXNvbhgEIAEoDjIfLmRtaS5HZXRMb2dMZXZlbFJlc3BvbnNlLlJlYXNvblIGcmVhc29uEiMKDXJlYXNvbl9kZXRhaWwYBSABKAlSDHJlYXNvbkRldGFpbCJ2CgZSZWFzb24SFAoQVU5ERUZJTkVEX1JFQVNPThAAEhIKDlVOS05PV05fREVWSUNFEAESEgoOSU5URVJOQUxfRVJST1IQAhIWChJVTktOT1dOX0xPR19FTlRJVFkQAxIWChJERVZJQ0VfVU5SRUFDSEFCTEUQBCJIChpHZXRMb2dnYWJsZUVudGl0aWVzUmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkMq8IChlOYXRpdmVIV01hbmFnZW1lbnRTZXJ2aWNlElMKE1N0YXJ0TWFuYWdpbmdEZXZpY2USGC5kbWkuTW9kaWZpYWJsZUNvbXBvbmVudBogLmRtaS5TdGFydE1hbmFnaW5nRGV2aWNlUmVzcG9uc2UwARJVChJTdG9wTWFuYWdpbmdEZXZpY2USHi5kbWkuU3RvcE1hbmFnaW5nRGV2aWNlUmVxdWVzdBofLmRtaS5TdG9wTWFuYWdpbmdEZXZpY2VSZXNwb25zZRJIChFHZXRNYW5hZ2VkRGV2aWNlcxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRobLmRtaS5NYW5hZ2VkRGV2aWNlc1Jlc3BvbnNlElcKFEdldFBoeXNpY2FsSW52ZW50b3J5Eh0uZG1pLlBoeXNpY2FsSW52ZW50b3J5UmVxdWVzdBoeLmRtaS5QaHlzaWNhbEludmVudG9yeVJlc3BvbnNlMAESVwoSR2V0SFdDb21wb25lbnRJbmZvEh4uZG1pLkhXQ29tcG9uZW50SW5mb0dldFJlcXVlc3QaHy5kbWkuSFdDb21wb25lbnRJbmZvR2V0UmVzcG9uc2UwARJVChJTZXRIV0NvbXBvbmVudEluZm8SHi5kbWkuSFdDb21wb25lbnRJbmZvU2V0UmVxdWVzdBofLmRtaS5IV0NvbXBvbmVudEluZm9TZXRSZXNwb25zZRJUChJTZXRMb2dnaW5nRW5kcG9pbnQSHi5kbWkuU2V0TG9nZ2luZ0VuZHBvaW50UmVxdWVzdBoeLmRtaS5TZXRSZW1vdGVFbmRwb2ludFJlc3BvbnNlEkYKEkdldExvZ2dpbmdFbmRwb2ludBIPLmRtaS5IYXJkd2FyZUlEGh8uZG1pLkdldExvZ2dpbmdFbmRwb2ludFJlc3BvbnNlElIKEVNldE1zZ0J1c0VuZHBvaW50Eh0uZG1pLlNldE1zZ0J1c0VuZHBvaW50UmVxdWVzdBoeLmRtaS5TZXRSZW1vdGVFbmRwb2ludFJlc3BvbnNlEksKEUdldE1zZ0J1c0VuZHBvaW50EhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Gh4uZG1pLkdldE1zZ0J1c0VuZHBvaW50UmVzcG9uc2USUAoTR2V0TG9nZ2FibGVFbnRpdGllcxIfLmRtaS5HZXRMb2dnYWJsZUVudGl0aWVzUmVxdWVzdBoYLmRtaS5HZXRMb2dMZXZlbFJlc3BvbnNlEkAKC1NldExvZ0xldmVsEhcuZG1pLlNldExvZ0xldmVsUmVxdWVz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FCYKDQoFBgACCwMSBIICMEMKvgEKBAYAAgwSBIYCBEUarwEgR2V0cyB0aGUgY29uZmlndXJlZCBsb2cgbGV2ZWwgZm9yIGEgY2VydGFpbiBlbnRpdHkgb24gYSBjZXJ0YWluIGRldmljZS4NCiBJZiBubyBlbnRpdHkgaXMgc3BlY2lmaWVkIGluIHRoZSByZXF1ZXN0IGFsbCB0aGUgZW50aXRpZXMgd2l0aCB0aGVpciBsb2cgbGV2ZWwgc2hvdWxkIGJlIHJldHVybmVkLg0KCg0KBQYAAgwBEgSGAggTCg0KBQYAAgwCEgSGAhQmCg0KBQYAAgwDEgSGAjBDYgZwcm90bzMK/UIKIWRtaS9od19tZXRyaWNzX21nbXRfc2VydmljZS5wcm90bxIDZG1pGhFkbWkvY29tbW9ucy5wcm90bxoMZG1pL2h3LnByb3RvIocBCgxNZXRyaWNDb25maWcSLQoJbWV0cmljX2lkGAEgASgOMhAuZG1pLk1ldHJpY05hbWVzUghtZXRyaWNJZBIjCg1pc19jb25maWd1cmVkGAIgASgIUgxpc0NvbmZpZ3VyZWQSIwoNcG9sbF9pbnRlcnZhbBgDIAEoDVIMcG9sbEludGVydmFsIjwKDU1ldHJpY3NDb25maWcSKwoHbWV0cmljcxgBIAMoCzIRLmRtaS5NZXRyaWNDb25maWdSB21ldHJpY3MipgIKE0xpc3RNZXRyaWNzUmVzcG9uc2USIwoGc3RhdHVzGAEgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEjcKBnJlYXNvbhgCIAEoDjIfLmRtaS5MaXN0TWV0cmljc1Jlc3BvbnNlLlJlYXNvblIGcmVhc29uEiwKB21ldHJpY3MYAyABKAsyEi5kbWkuTWV0cmljc0NvbmZpZ1IHbWV0cmljcxIjCg1yZWFzb25fZGV0YWlsGAQgASgJUgxyZWFzb25EZXRhaWwiXgoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhIKDklOVEVSTkFMX0VSUk9SEAISFgoSREVWSUNFX1VOUkVBQ0hBQkxFEAMisgEKG01ldHJpY3NDb25maWd1cmF0aW9uUmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEi4KB2NoYW5nZXMYAiABKAsyEi5kbWkuTWV0cmljc0NvbmZpZ0gAUgdjaGFuZ2VzEioKEHJlc2V0X3RvX2RlZmF1bHQYAyABKAhIAFIOcmVzZXRUb0RlZmF1bHRCCwoJb3BlcmF0aW9uIr4CChxNZXRyaWNzQ29uZmlndXJhdGlvblJlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxJACgZyZWFzb24YAiABKA4yKC5kbWkuTWV0cmljc0NvbmZpZ3VyYXRpb25SZXNwb25zZS5SZWFzb25SBnJlYXNvbhIjCg1yZWFzb25fZGV0YWlsGAMgASgJUgxyZWFzb25EZXRhaWwikQEKBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASEgoOVU5LTk9XTl9ERVZJQ0UQARISCg5JTlRFUk5BTF9FUlJPUhACEh0KGVBPTExfSU5URVJWQUxfVU5TVVBQT1JURUQQAxISCg5JTlZBTElEX01FVFJJQxAEEhYKEkRFVklDRV9VTlJFQUNIQUJMRRAFIpUBCg5NZXRyaWNNZXRhRGF0YRIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEjAKDmNvbXBvbmVudF91dWlkGAIgASgLMgkuZG1pLlV1aWRSDWNvbXBvbmVudFV1aWQSJQoOY29tcG9uZW50X25hbWUYAyABKAlSDWNvbXBvbmVudE5hbWUipQEKBk1ldHJpYxItCgltZXRyaWNfaWQYASABKA4yEC5kbWkuTWV0cmljTmFtZXNSCG1ldHJpY0lkEjwKD21ldHJpY19tZXRhZGF0YRgCIAEoCzITLmRtaS5NZXRyaWNNZXRhRGF0YVIObWV0cmljTWV0YWRhdGESLgoFdmFsdWUYAyABKAsyGC5kbWkuQ29tcG9uZW50U2Vuc29yRGF0YVIFdmFsdWUicwoQR2V0TWV0cmljUmVxdWVzdBIwCgltZXRhX2RhdGEYASABKAsyEy5kbWkuTWV0cmljTWV0YURhdGFSCG1ldGFEYXRhEi0KCW1ldHJpY19pZBgCIAEoDjIQLmRtaS5NZXRyaWNOYW1lc1IIbWV0cmljSWQixQIKEUdldE1ldHJpY1Jlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI1CgZyZWFzb24YAiABKA4yHS5kbWkuR2V0TWV0cmljUmVzcG9uc2UuUmVhc29uUgZyZWFzb24SIwoGbWV0cmljGAMgASgLMgsuZG1pLk1ldHJpY1IGbWV0cmljEiMKDXJlYXNvbl9kZXRhaWwYBCABKAlSDHJlYXNvbkRldGFpbCKJAQoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhUKEVVOS05PV05fQ09NUE9ORU5UEAISEgoOSU5URVJOQUxfRVJST1IQAxISCg5JTlZBTElEX01FVFJJQxAEEhYKEkRFVklDRV9VTlJFQUNIQUJMRRAFKtkFCgtNZXRyaWNOYW1lcxIZChVNRVRSSUNfTkFNRV9VTkRFRklORUQQABIUChBNRVRSSUNfRkFOX1NQRUVEEAESEwoPTUVUUklDX0NQVV9URU1QEGQSHwobTUVUUklDX0NQVV9VU0FHRV9QRVJDRU5UQUdFEGUSHAoXTUVUUklDX1RSQU5TQ0VJVkVSX1RFTVAQyAESHwoaTUVUUklDX1RSQU5TQ0VJVkVSX1ZPTFRBR0UQyQESHAoXTUVUUklDX1RSQU5TQ0VJVkVSX0JJQVMQygESIAobTUVUUklDX1RSQU5TQ0VJVkVSX1JYX1BPV0VSEMsBEiAKG01FVFJJQ19UUkFOU0NFSVZFUl9UWF9QT1dFUhDMARIiCh1NRVRSSUNfVFJBTlNDRUlWRVJfV0FWRUxFTkdUSBDNARIVChBNRVRSSUNfRElTS19URU1QEKwCEhkKFE1FVFJJQ19ESVNLX0NBUEFDSVRZEK0CEhYKEU1FVFJJQ19ESVNLX1VTQUdFEK4CEiEKHE1FVFJJQ19ESVNLX1VTQUdFX1BFUkNFTlRBR0UQrwISJgohTUVUUklDX0RJU0tfUkVBRF9XUklURV9QRVJDRU5UQUdFELACEigKI01FVFJJQ19ESVNLX0ZBVUxUWV9DRUxMU19QRVJDRU5UQUdFELECEhQKD01FVFJJQ19SQU1fVEVNUBCQAxIYChNNRVRSSUNfUkFNX0NBUEFDSVRZEJEDEhUKEE1FVFJJQ19SQU1fVVNBR0UQkgMSIAobTUVUUklDX1JBTV9VU0FHRV9QRVJDRU5UQUdFEJMDEhUKEE1FVFJJQ19QT1dFUl9NQVgQ9AMSFwoSTUVUUklDX1BPV0VSX1VTQUdFEPUDEiIKHU1FVFJJQ19QT1dFUl9VU0FHRV9QRVJDRU5UQUdFEPYDEiIKHU1FVFJJQ19JTk5FUl9TVVJST1VORElOR19URU1QENgEMvkBCh5OYXRpdmVNZXRyaWNzTWFuYWdlbWVudFNlcnZpY2USOAoLTGlzdE1ldHJpY3MSDy5kbWkuSGFyZHdhcmVJRBoYLmRtaS5MaXN0TWV0cmljc1Jlc3BvbnNlEmEKGlVwZGF0ZU1ldHJpY3NDb25maWd1cmF0aW9uEiAuZG1pLk1ldHJpY3NDb25maWd1cmF0aW9uUmVxdWVzdBohLmRtaS5NZXRyaWNzQ29uZmlndXJhdGlvblJlc3BvbnNlEjoKCUdldE1ldHJpYxIVLmRtaS5HZXRNZXRyaWNSZXF1ZXN0GhYuZG1pLkdldE1ldHJpY1Jlc3BvbnNlQjtaOWdpdGh1Yi5jb20vb3BlbmNvcmQvZGV2aWNlLW1hbmFnZW1lbnQtaW50ZXJmYWNlL3YzL2dvL2RtaUqwLAoHEgUAAJsBAQoICgEMEgMAABIKCAoBCBIDAgBQCgkKAggLEgMCAFAKCAoBAhIDAwAMCgkKAgMAEgMFABsKCQoCAwESAwYAFgrYAQoCBQASBA0ANAEyjgEgVGhlIG1vZGVsIHVzZWQgdG8gcmVwcmVzZW50IHRoZSBldmVudCBkYXRhIG9uIHRoZSBTZW5zb3JEYXRhIG9mIGEgY29tcG9uZW50IGFzIGRlc2NyaWJlZA0KIGluIFJGQzgzNDggKGh0dHBzOi8vdG9vbHMuaWV0Zi5vcmcvaHRtbC9yZmM4MzQ4KQ0KMjsgTWFuYWdlbWVudCBvZiBNZXRyaWNzIGFuZCBwcm90b3MgZm9yIGVuY29kaW5nIG9mIE1ldHJpY3MNCgoKCgMFAAESAw0FEAoLCgQFAAIAEgMOBB4KDAoFBQACAAESAw4EGQoMCgUFAAIAAhIDDhwdCiMKBAUAAgESAxEEGRoWIEZBTiByZWxhdGVkIG1ldHJpY3MNCgoMCgUFAAIBARIDEQQUCgwKBQUAAgECEgMRFxgKIwoEBQACAhIDFAQaGhYgQ1BVIHJlbGF0ZWQgbWV0cmljcw0KCgwK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dCB0aGUgc3VwcG9ydGVkIG1ldHJpY3MgZm9yIHRoZSBwYXNzZWQgZGV2aWNlLg0KIFRoaXMgd291bGQgYmUgdGhlIGZpcnN0IGNhbGwgdGhhdCB5b3UgbWFrZSB0byBrbm93IGFib3V0IHRoZSBtZXRyaWNzIHRoYXQgYSBwYXJ0aWN1bGFyIGRldmljZSBzdXBwb3J0cyBhbmQNCiB0aGVuIHVzZSB0aGUgVXBkYXRlTWV0cmljc0NvbmZpZ3VyYXRpb24gQVBJIHRvIG1vbml0b3Igb25seSB0aGUgcmVxdWlyZWQgbWV0cmljcy4NCgoNCgUGAAIAARIEkAEIEwoNCgUGAAIAAhIEkAEUHgoNCgUGAAIAAxIEkAEoOwqnAgoEBgACARIElwEEZhqYAiBVcGRhdGVzIHRoZSBjb25maWd1cmF0aW9uIG9mIHRoZSBsaXN0IG9mIG1ldHJpY3MgaW4gdGhlIHJlcXVlc3QNCiBBY3RzIHVwb24gc2luZ2xlIG1ldHJpYyBjb25maWd1cmF0aW9uLCBjb2xsZWN0aW9uIG9mIGEgc2luZ2xlIG1ldHJpYyBjYW4gYmUgc3RhcnRlZC9zdG9wcGVkDQogYnkgY2hhbmdpbmcgaXRzIGNvbmZpZ3VyYXRpb24uDQoNCiBUaGlzIGNvbmZpZ3VyYXRpb24gaXMgcGVyc2lzdGVkIGFjcm9zcyByZXN0YXJ0IG9mIHRoZSBkZXZpY2Ugb3IgdGhlIGRldmljZSBtYW5hZ2VyDQoKDQoFBgACAQESBJcBCCIKDQoFBgACAQISBJcBIz4KDQoFBgACAQMSBJcBSGQKNwoEBgACAhIEmgEEPxopIEdldCB0aGUgaW5zdGFudGVub3VzIHZhbHVlIG9mIGEgbWV0cmljDQoKDQoFBgACAgESBJoBCBEKDQoFBgACAgISBJoBEiIKDQoFBgACAgMSBJoBLD1iBnByb3RvMwqHHQoSZG1pL3N3X2ltYWdlLnByb3RvEgNkbWkaEWRtaS9jb21tb25zLnByb3RvIkcKDEltYWdlVmVyc2lvbhIdCgppbWFnZV9uYW1lGAEgASgJUglpbWFnZU5hbWUSGAoHdmVyc2lvbhgCIAEoCVIHdmVyc2lvbiKoAQoQSW1hZ2VJbmZvcm1hdGlvbhInCgVpbWFnZRgBIAEoCzIRLmRtaS5JbWFnZVZlcnNpb25SBWltYWdlEjAKFGltYWdlX2luc3RhbGxfc2NyaXB0GAIgASgJUhJpbWFnZUluc3RhbGxTY3JpcHQSGwoJaW1hZ2VfdXJsGAMgASgJUghpbWFnZVVybBIcCglzaGEyNTZzdW0YBSABKAlSCXNoYTI1NnN1bSKUBQoLSW1hZ2VTdGF0dXMSIwoGc3RhdHVzGAEgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEi8KBnJlYXNvbhgCIAEoDjIXLmRtaS5JbWFnZVN0YXR1cy5SZWFzb25SBnJlYXNvbhIxCgVzdGF0ZRgDIAEoDjIbLmRtaS5JbWFnZVN0YXR1cy5JbWFnZVN0YXRlUgVzdGF0ZRIgCgtkZXNjcmlwdGlvbhgEIAEoCVILZGVzY3JpcHRpb24SIwoNcmVhc29uX2RldGFpbBgFIAEoCVIMcmVhc29uRGV0YWlsItABCgpJbWFnZVN0YXRlEhMKD1VOREVGSU5FRF9TVEFURRAAEhEKDUNPUFlJTkdfSU1BR0UQARIUChBJTlNUQUxMSU5HX0lNQUdFEAISFAoQQ09NTUlUVElOR19JTUFHRRADEhQKEFJFQk9PVElOR19ERVZJQ0UQBBIUChBVUEdSQURFX0NPTVBMRVRFEAUSEgoOVVBHUkFERV9GQUlMRUQQBhIXChNBQ1RJVkFUSU9OX0NPTVBMRVRFEAcSFQoRQUNUSVZBVElPTl9GQUlMRUQQCCLhAQoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABIUChBFUlJPUl9JTl9SRVFVRVNUEAESEgoOSU5URVJOQUxfRVJST1IQAhIZChVERVZJQ0VfSU5fV1JPTkdfU1RBVEUQAxIRCg1JTlZBTElEX0lNQUdFEAQSGAoUV1JPTkdfSU1BR0VfQ0hFQ0tTVU0QBRIhCh1PUEVSQVRJT05fQUxSRUFEWV9JTl9QUk9HUkVTUxAGEhIKDlVOS05PV05fREVWSUNFEAcSGAoUREVWSUNFX05PVF9SRUFDSEFCTEUQCEI7WjlnaXRodWIuY29tL29wZW5jb3JkL2RldmljZS1tYW5hZ2VtZW50LWludGVyZmFjZS92My9nby9kbWlKiBUKBhIEAAA8AQoICgEMEgMAABIKCAoBCBIDAgBQCgkKAggLEgMCAFAKCAoB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bWkaEWRtaS9jb21tb25zLnByb3RvGgxkbWkvaHcucHJvdG8aEmRtaS9zd19pbWFnZS5wcm90byKWAQoaU29mdHdhcmVWZXJzaW9uSW5mb3JtYXRpb24SOgoPYWN0aXZlX3ZlcnNpb25zGAEgAygLMhEuZG1pLkltYWdlVmVyc2lvblIOYWN0aXZlVmVyc2lvbnMSPAoQc3RhbmRieV92ZXJzaW9ucxgCIAMoCzIRLmRtaS5JbWFnZVZlcnNpb25SD3N0YW5kYnlWZXJzaW9ucyLRAgolR2V0U29mdHdhcmVWZXJzaW9uSW5mb3JtYXRpb25SZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSSQoGcmVhc29uGAIgASgOMjEuZG1pLkdldFNvZnR3YXJlVmVyc2lvbkluZm9ybWF0aW9uUmVzcG9uc2UuUmVhc29uUgZyZWFzb24SMwoEaW5mbxgDIAEoCzIfLmRtaS5Tb2Z0d2FyZVZlcnNpb25JbmZvcm1hdGlvblIEaW5mbxIjCg1yZWFzb25fZGV0YWlsGAQgASgJUgxyZWFzb25EZXRhaWwiXgoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhIKDklOVEVSTkFMX0VSUk9SEAISFgoSREVWSUNFX1VOUkVBQ0hBQkxFEAMieAoURG93bmxvYWRJbWFnZVJlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBI0CgppbWFnZV9pbmZvGAIgASgLMhUuZG1pLkltYWdlSW5mb3JtYXRpb25SCWltYWdlSW5mbyJaCg1Db25maWdSZXF1ZXN0EioKC2RldmljZV91dWlkGAEgASgLMgkuZG1pLlV1aWRSCmRldmljZVV1aWQSHQoKY29uZmlnX3VybBgCIAEoCVIJY29uZmlnVXJsIsECCg5Db25maWdSZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSMgoGcmVhc29uGAIgASgOMhouZG1pLkNvbmZpZ1Jlc3BvbnNlLlJlYXNvblIGcmVhc29uEiMKDXJlYXNvbl9kZXRhaWwYAyABKAlSDHJlYXNvbkRldGFpbCKwAQoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhIKDklOVEVSTkFMX0VSUk9SEAISGQoVRVJST1JfRkVUQ0hJTkdfQ09ORklHEAMSEgoOSU5WQUxJRF9DT05GSUcQBBIhCh1PUEVSQVRJT05fQUxSRUFEWV9JTl9QUk9HUkVTUxAFEhYKEkRFVklDRV9VTlJFQUNIQUJMRRAGIkYKGFN0YXJ0dXBDb25maWdJbmZvUmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkIr0CChlTdGFydHVwQ29uZmlnSW5mb1Jlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxI9CgZyZWFzb24YAiABKA4yJS5kbWkuU3RhcnR1cENvbmZpZ0luZm9SZXNwb25zZS5SZWFzb25SBnJlYXNvbhIdCgpjb25maWdfdXJsGAMgASgJUgljb25maWdVcmwSGAoHdmVyc2lvbhgEIAEoCVIHdmVyc2lvbhIjCg1yZWFzb25fZGV0YWlsGAUgASgJUgxyZWFzb25EZXRhaWwiXgoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFTT04QABISCg5VTktOT1dOX0RFVklDRRABEhIKDklOVEVSTkFMX0VSUk9SEAISFgoSREVWSUNFX1VOUkVBQ0hBQkxFEAMyzgMKH05hdGl2ZVNvZnR3YXJlTWFuYWdlbWVudFNlcnZpY2USUQoSR2V0U29mdHdhcmVWZXJzaW9uEg8uZG1pLkhhcmR3YXJlSUQaKi5kbWkuR2V0U29mdHdhcmVWZXJzaW9uSW5mb3JtYXRpb25SZXNwb25zZRI+Cg1Eb3dubG9hZEltYWdlEhkuZG1pLkRvd25sb2FkSW1hZ2VSZXF1ZXN0GhAuZG1pLkltYWdlU3RhdHVzMAESNAoNQWN0aXZhdGVJbWFnZRIPLmRtaS5IYXJkd2FyZUlEGhAuZG1pLkltYWdlU3RhdHVzMAESOwoUUmV2ZXJ0VG9TdGFuZGJ5SW1hZ2USDy5kbWkuSGFyZHdhcmVJRBoQLmRtaS5JbWFnZVN0YXR1czABEkcKGlVwZGF0ZVN0YXJ0dXBDb25maWd1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