CpYGChFkbWkvY29tbW9ucy5wcm90bxIDZG1pKjEKBlN0YXR1cxIUChBVTkRFRklORURfU1RBVFVTEAASBgoCT0sQARIJCgVFUlJPUhACKmkKBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASEgoOVU5LTk9XTl9ERVZJQ0UQARISCg5JTlRFUk5BTF9FUlJPUhACEhAKDFdST05HX01FVFJJQxADEg8KC1dST05HX0VWRU5UEARCO1o5Z2l0aHViLmNvbS9vcGVuY29yZC9kZXZpY2UtbWFuYWdlbWVudC1pbnRlcmZhY2UvdjMvZ28vZG1pSpgECgYSBAAAFAEKCAoBDBIDAAASCggKAQgSAwIAUAoJCgIICxIDAgBQCggKAQISAwMADApUCgIFABIEBwALATJIIENvbW1vbiBzdHJ1Y3R1cmVzIHVzZWQgYWNyb3NzIHRoZSBkaWZmZXJlbnQgRGV2aWNlIE1hbmFnZW1lbnQgc2VydmljZXMKCgoKAwUAARIDBwULCgsKBAUAAgASAwgEGQoMCgUFAAIAARIDCAQUCgwKBQUAAgACEgMIFxgKCwoEBQACARIDCQQLCgwKBQUAAgEBEgMJBAYKDAoFBQACAQISAwkJCgoLCgQFAAICEgMKBA4KDAoFBQACAgESAwoECQoMCgUFAAICAhIDCgwNCi8KAgUBEgQOABQBGiMgUmVhc29uIGZvciB0aGUgZmFpbHVyZSBvZiByZXF1ZXN0CgoKCgMFAQESAw4FCwoLCgQFAQIAEgMPBBkKDAoFBQECAAESAw8EFAoMCgUFAQIAAhIDDxcYCgsKBAUBAgESAxAEFwoMCgUFAQIBARIDEAQSCgwKBQUBAgECEgMQFRYKCwoEBQECAhIDEQQXCgwKBQUBAgIBEgMRBBIKDAoFBQECAgISAxEVFgoLCgQFAQIDEgMSBBUKDAoFBQECAwESAxIEEAoMCgUFAQIDAhIDEhMUCgsKBAUBAgQSAxMEFAoMCgUFAQIEARIDEwQPCgwKBQUBAgQCEgMTEhNiBnByb3RvMwryLwofZ29vZ2xlL3Byb3RvYnVmL3RpbWVzdGFtcC5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIjsKCVRpbWVzdGFtcBIYCgdzZWNvbmRzGAEgASgDUgdzZWNvbmRzEhQKBW5hbm9zGAIgASgFUgVuYW5vc0J+ChNjb20uZ29vZ2xlLnByb3RvYnVmQg5UaW1lc3RhbXBQcm90b1ABWitnaXRodWIuY29tL2dvbGFuZy9wcm90b2J1Zi9wdHlwZXMvdGltZXN0YW1w+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSvgtCgcSBR4AiAEBCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgA7CgkKAgglEgMiADsKCAoBCBIDIwAfCgkKAggfEgMjAB8KCAoBCBIDJABCCgkKAggLEgMkAEIKCAoBCBIDJQAsCgkKAggBEgMlACwKCAoBCBIDJgAvCgkKAggIEgMmAC8KCAoBCBIDJwAiCgkKAggKEgMnACIKCAoBCBIDKAAhCgkKAggkEgMoACEK8RsKAgQAEgV8AIgBARrjGyBBIFRpbWVzdGFtcCByZXByZXNlbnRzIGEgcG9pbnQgaW4gdGltZSBpbmRlcGVuZGVudCBvZiBhbnkgdGltZSB6b25lIG9yIGxvY2FsCiBjYWxlbmRhciwgZW5jb2RlZCBhcyBhIGNvdW50IG9mIHNlY29uZHMgYW5kIGZyYWN0aW9ucyBvZiBzZWNvbmRzIGF0CiBuYW5vc2Vjb25kIHJlc29sdXRpb24uIFRoZSBjb3VudCBpcyByZWxhdGl2ZSB0byBhbiBlcG9jaCBhdCBVVEMgbWlkbmlnaHQgb24KIEphbnVhcnkgMSwgMTk3MCwgaW4gdGhlIHByb2xlcHRpYyBHcmVnb3JpYW4gY2FsZW5kYXIgd2hpY2ggZXh0ZW5kcyB0aGUKIEdyZWdvcmlhbiBjYWxlbmRhciBiYWNrd2FyZHMgdG8geWVhciBvbmUuCgogQWxsIG1pbnV0ZXMgYXJlIDYwIHNlY29uZHMgbG9uZy4gTGVhcCBzZWNvbmRzIGFyZSAic21lYXJlZCIgc28gdGhhdCBubyBsZWFwCiBzZWNvbmQgdGFibGUgaXMgbmVlZGVkIGZvciBpbnRlcnByZXRhdGlvbiwgdXNpbmcgYSBbMjQtaG91ciBsaW5lYXIKIHNtZWFyXShodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS90aW1lL3NtZWFyKS4KCiBUaGUgcmFuZ2UgaXMgZnJvbSAwMDAxLTAxLTAxVDAwOjAwOjAwWiB0byA5OTk5LTEyLTMxVDIzOjU5OjU5Ljk5OTk5OTk5OVouIEJ5CiByZXN0cmljdGluZyB0byB0aGF0IHJhbmdlLCB3ZSBlbnN1cmUgdGhhdCB3ZSBjYW4gY29udmVydCB0byBhbmQgZnJvbSBbUkZDCiAzMzM5XShodHRwczovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzMzOS50eHQpIGRhdGUgc3RyaW5ncy4KCiAjIEV4YW1wbGVzCgogRXhhbXBsZSAxOiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIFBPU0lYIGB0aW1lKClgLgoKICAgICBUaW1lc3RhbXAgdGltZXN0YW1wOwogICAgIHRpbWVzdGFtcC5zZXRfc2Vjb25kcyh0aW1lKE5VTEwpKTsKICAgICB0aW1lc3RhbXAuc2V0X25hbm9zKDApOwoKIEV4YW1wbGUgMjogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBQT1NJWCBgZ2V0dGltZW9mZGF5KClgLgoKICAgICBzdHJ1Y3QgdGltZXZhbCB0djsKICAgICBnZXR0aW1lb2ZkYXkoJnR2LCBOVUxMKTsKCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcDsKICAgICB0aW1lc3RhbXAuc2V0X3NlY29uZHModHYudHZfc2VjKTsKICAgICB0aW1lc3RhbXAuc2V0X25hbm9zKHR2LnR2X3VzZWMgKiAxMDAwKTsKCiBFeGFtcGxlIDM6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gV2luMzIgYEdldFN5c3RlbVRpbWVBc0ZpbGVUaW1lKClgLgoKICAgICBGSUxFVElNRSBmdDsKICAgICBHZXRTeXN0ZW1UaW1lQXNGaWxlVGltZSgmZnQpOwogICAgIFVJTlQ2NCB0aWNrcyA9ICgoKFVJTlQ2NClmdC5kd0hpZ2hEYXRlVGltZSkgPDwgMzIpIHwgZnQuZHdMb3dEYXRlVGltZTsKCiAgICAgLy8gQSBXaW5kb3dzIHRpY2sgaXMgMTAwIG5hbm9zZWNvbmRzLiBXaW5kb3dzIGVwb2NoIDE2MDEtMDEtMDFUMDA6MDA6MDBaCiAgICAgLy8gaXMgMTE2NDQ0NzM2MDAgc2Vjb25kcyBiZWZvcmUgVW5peCBlcG9jaCAxOTcwLTAxLTAxVDAwOjAwOjAwWi4KICAgICBUaW1lc3RhbXAgdGltZXN0YW1wOwogICAgIHRpbWVzdGFtcC5zZXRfc2Vjb25kcygoSU5UNjQpICgodGlja3MgLyAxMDAwMDAwMCkgLSAxMTY0NDQ3MzYwMExMKSk7CiAgICAgdGltZXN0YW1wLnNldF9uYW5vcygoSU5UMzIpICgodGlja3MgJSAxMDAwMDAwMCkgKiAxMDApKTsKCiBFeGFtcGxlIDQ6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gSmF2YSBgU3lzdGVtLmN1cnJlbnRUaW1lTWlsbGlzKClgLgoKICAgICBsb25nIG1pbGxpcyA9IFN5c3RlbS5jdXJyZW50VGltZU1pbGxpcygpOwoKICAgICBUaW1lc3RhbXAgdGltZXN0YW1wID0gVGltZXN0YW1wLm5ld0J1aWxkZXIoKS5zZXRTZWNvbmRzKG1pbGxpcyAvIDEwMDApCiAgICAgICAgIC5zZXROYW5vcygoaW50KSAoKG1pbGxpcyAlIDEwMDApICogMTAwMDAwMCkpLmJ1aWxkKCk7CgoKIEV4YW1wbGUgNTogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBjdXJyZW50IHRpbWUgaW4gUHl0aG9uLgoKICAgICB0aW1lc3RhbXAgPSBUaW1lc3RhbXAoKQogICAgIHRpbWVzdGFtcC5HZXRDdXJyZW50VGltZSgpCgogIyBKU09OIE1hcHBpbmcKCiBJbiBKU09OIGZvcm1hdCwgdGhlIFRpbWVzdGFtcCB0eXBlIGlzIGVuY29kZWQgYXMgYSBzdHJpbmcgaW4gdGhlCiBbUkZDIDMzMzldKGh0dHBzOi8vd3d3LmlldGYub3JnL3JmYy9yZmMzMzM5LnR4dCkgZm9ybWF0LiBUaGF0IGlzLCB0aGUKIGZvcm1hdCBpcyAie3llYXJ9LXttb250aH0te2RheX1Ue2hvdXJ9OnttaW59OntzZWN9Wy57ZnJhY19zZWN9XVoiCiB3aGVyZSB7eWVhcn0gaXMgYWx3YXlzIGV4cHJlc3NlZCB1c2luZyBmb3VyIGRpZ2l0cyB3aGlsZSB7bW9udGh9LCB7ZGF5fSwKIHtob3VyfSwge21pbn0sIGFuZCB7c2VjfSBhcmUgemVyby1wYWRkZWQgdG8gdHdvIGRpZ2l0cyBlYWNoLiBUaGUgZnJhY3Rpb25hbAogc2Vjb25kcywgd2hpY2ggY2FuIGdvIHVwIHRvIDkgZGlnaXRzIChpLmUuIHVwIHRvIDEgbmFub3NlY29uZCByZXNvbHV0aW9uKSwKIGFyZSBvcHRpb25hbC4gVGhlICJaIiBzdWZmaXggaW5kaWNhdGVzIHRoZSB0aW1lem9uZSAoIlVUQyIpOyB0aGUgdGltZXpvbmUKIGlzIHJlcXVpcmVkLiBBIHByb3RvMyBKU09OIHNlcmlhbGl6ZXIgc2hvdWxkIGFsd2F5cyB1c2UgVVRDIChhcyBpbmRpY2F0ZWQgYnkKICJaIikgd2hlbiBwcmludGluZyB0aGUgVGltZXN0YW1wIHR5cGUgYW5kIGEgcHJvdG8zIEpTT04gcGFyc2VyIHNob3VsZCBiZQogYWJsZSB0byBhY2NlcHQgYm90aCBVVEMgYW5kIG90aGVyIHRpbWV6b25lcyAoYXMgaW5kaWNhdGVkIGJ5IGFuIG9mZnNldCkuCgogRm9yIGV4YW1wbGUsICIyMDE3LTAxLTE1VDAxOjMwOjE1LjAxWiIgZW5jb2RlcyAxNS4wMSBzZWNvbmRzIHBhc3QKIDAxOjMwIFVUQyBvbiBKYW51YXJ5IDE1LCAyMDE3LgoKIEluIEphdmFTY3JpcHQsIG9uZSBjYW4gY29udmVydCBhIERhdGUgb2JqZWN0IHRvIHRoaXMgZm9ybWF0IHVzaW5nIHRoZQogc3RhbmRhcmQgW3RvSVNPU3RyaW5nKCldKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0RhdGUvdG9JU09TdHJpbmcpCiBtZXRob2QuIEluIFB5dGhvbiwgYSBzdGFuZGFyZCBgZGF0ZXRpbWUuZGF0ZXRpbWVgIG9iamVjdCBjYW4gYmUgY29udmVydGVkCiB0byB0aGlzIGZvcm1hdCB1c2luZyBbYHN0cmZ0aW1lYF0oaHR0cHM6Ly9kb2NzLnB5dGhvbi5vcmcvMi9saWJyYXJ5L3RpbWUuaHRtbCN0aW1lLnN0cmZ0aW1lKQogd2l0aCB0aGUgdGltZSBmb3JtYXQgc3BlYyAnJVktJW0tJWRUJUg6JU06JVMuJWZaJy4gTGlrZXdpc2UsIGluIEphdmEsIG9uZQogY2FuIHVzZSB0aGUgSm9kYSBUaW1lJ3MgW2BJU09EYXRlVGltZUZvcm1hdC5kYXRlVGltZSgpYF0oCiBodHRwOi8vd3d3LmpvZGEub3JnL2pvZGEtdGltZS9hcGlkb2NzL29yZy9qb2RhL3RpbWUvZm9ybWF0L0lTT0RhdGVUaW1lRm9ybWF0Lmh0bWwjZGF0ZVRpbWUlMkQlMkQKICkgdG8gb2J0YWluIGEgZm9ybWF0dGVyIGNhcGFibGUgb2YgZ2VuZXJhdGluZyB0aW1lc3RhbXBzIGluIHRoaXMgZm9ybWF0LgoKCgoKCgMEAAESA3wIEQqdAQoEBAACABIEgQECFBqOASBSZXByZXNlbnRzIHNlY29uZHMgb2YgVVRDIHRpbWUgc2luY2UgVW5peCBlcG9jaAogMTk3MC0wMS0wMVQwMDowMDowMFouIE11c3QgYmUgZnJvbSAwMDAxLTAxLTAxVDAwOjAwOjAwWiB0bwogOTk5OS0xMi0zMVQyMzo1OTo1OVogaW5jbHVzaXZlLgoKDgoFBAACAAQSBYEBAnwTCg0KBQQAAgAFEgSBAQIHCg0KBQQAAgABEgSBAQgPCg0KBQQAAgADEgSBARITCuUBCgQEAAIBEgSHAQISGtYBIE5vbi1uZWdhdGl2ZSBmcmFjdGlvbnMgb2YgYSBzZWNvbmQgYXQgbmFub3NlY29uZCByZXNvbHV0aW9uLiBOZWdhdGl2ZQogc2Vjb25kIHZhbHVlcyB3aXRoIGZyYWN0aW9ucyBtdXN0IHN0aWxsIGhhdmUgbm9uLW5lZ2F0aXZlIG5hbm9zIHZhbHVlcwogdGhhdCBjb3VudCBmb3J3YXJkIGluIHRpbWUuIE11c3QgYmUgZnJvbSAwIHRvIDk5OSw5OTksOTk5CiBpbmNsdXNpdmUuCgoPCgUEAAIBBBIGhwECgQEUCg0KBQQAAgEFEgSHAQIHCg0KBQQAAgEBEgSHAQgNCg0KBQQAAgEDEgSHARARYgZwcm90bzMK+GIKDGRtaS9ody5wcm90bxIDZG1pGh9nb29nbGUvcHJvdG9idWYvdGltZXN0YW1wLnByb3RvIhoKBFV1aWQSEgoEdXVpZBgBIAEoCVIEdXVpZCIrCgpIYXJkd2FyZUlEEh0KBHV1aWQYASABKAsyCS5kbWkuVXVpZFIEdXVpZCIXCgNVcmkSEAoDdXJpGAEgASgJUgN1cmkihAMKDkNvbXBvbmVudFN0YXRlEkgKEnN0YXRlX2xhc3RfY2hhbmdlZBgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSEHN0YXRlTGFzdENoYW5nZWQSOQoLYWRtaW5fc3RhdGUYAiABKA4yGC5kbWkuQ29tcG9uZW50QWRtaW5TdGF0ZVIKYWRtaW5TdGF0ZRI2CgpvcGVyX3N0YXRlGAMgASgOMhcuZG1pLkNvbXBvbmVudE9wZXJTdGF0ZVIJb3BlclN0YXRlEjkKC3VzYWdlX3N0YXRlGAQgASgOMhguZG1pLkNvbXBvbmVudFVzYWdlU3RhdGVSCnVzYWdlU3RhdGUSOQoLYWxhcm1fc3RhdGUYBSABKA4yGC5kbWkuQ29tcG9uZW50QWxhcm1TdGF0ZVIKYWxhcm1TdGF0ZRI/Cg1zdGFuZGJ5X3N0YXRlGAYgASgOMhouZG1pLkNvbXBvbmVudFN0YW5kYnlTdGF0ZVIMc3RhbmRieVN0YXRlIvMCChNDb21wb25lbnRTZW5zb3JEYXRhEhQKBXZhbHVlGAEgASgFUgV2YWx1ZRIoCgR0eXBlGAIgASgOMhQuZG1pLlNlbnNvclZhbHVlVHlwZVIEdHlwZRIrCgVzY2FsZRgDIAEoDjIVLmRtaS5TZW5zb3JWYWx1ZVNjYWxlUgVzY2FsZRIcCglwcmVjaXNpb24YBCABKAVSCXByZWNpc2lvbhIpCgZzdGF0dXMYBSABKA4yES5kbWkuU2Vuc29yU3RhdHVzUgZzdGF0dXMSIwoNdW5pdHNfZGlzcGxheRgGIAEoCVIMdW5pdHNEaXNwbGF5EjgKCXRpbWVzdGFtcBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSCXRpbWVzdGFtcBIqChF2YWx1ZV91cGRhdGVfcmF0ZRgIIAEoDVIPdmFsdWVVcGRhdGVSYXRlEhsKCWRhdGFfdHlwZRgJIAEoCVIIZGF0YVR5cGUixwUKCUNvbXBvbmVudBISCgRuYW1lGAEgASgJUgRuYW1lEigKBWNsYXNzGAIgASgOMhIuZG1pLkNvbXBvbmVudFR5cGVSBWNsYXNzEiAKC2Rlc2NyaXB0aW9uGAMgASgJUgtkZXNjcmlwdGlvbhImCgZwYXJlbnQYBCABKAsyDi5kbWkuQ29tcG9uZW50UgZwYXJlbnQSJAoOcGFyZW50X3JlbF9wb3MYBSABKAVSDHBhcmVudFJlbFBvcxIqCghjaGlsZHJlbhgGIAMoCzIOLmRtaS5Db21wb25lbnRSCGNoaWxkcmVuEiEKDGhhcmR3YXJlX3JldhgHIAEoCVILaGFyZHdhcmVSZXYSIQoMZmlybXdhcmVfcmV2GAggASgJUgtmaXJtd2FyZVJldhIhCgxzb2Z0d2FyZV9yZXYYCSABKAlSC3NvZnR3YXJlUmV2Eh0KCnNlcmlhbF9udW0YCiABKAlSCXNlcmlhbE51bRIZCghtZmdfbmFtZRgLIAEoCVIHbWZnTmFtZRIdCgptb2RlbF9uYW1lGAwgASgJUgltb2RlbE5hbWUSFAoFYWxpYXMYDSABKAlSBWFsaWFzEhkKCGFzc2V0X2lkGA4gASgJUgdhc3NldElkEhUKBmlzX2ZydRgPIAEoCFIFaXNGcnUSNQoIbWZnX2RhdGUYECABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUgdtZmdEYXRlEhoKA3VyaRgRIAEoCzIILmRtaS5VcmlSA3VyaRIdCgR1dWlkGBIgASgLMgkuZG1pLlV1aWRSBHV1aWQSKQoFc3RhdGUYEyABKAsyEy5kbWkuQ29tcG9uZW50U3RhdGVSBXN0YXRlEjkKC3NlbnNvcl9kYXRhGBQgAygLMhguZG1pLkNvbXBvbmVudFNlbnNvckRhdGFSCnNlbnNvckRhdGEiawoISGFyZHdhcmUSOwoLbGFzdF9jaGFuZ2UYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUgpsYXN0Q2hhbmdlEiIKBHJvb3QYAiABKAsyDi5kbWkuQ29tcG9uZW50UgRyb290IqkCChNNb2RpZmlhYmxlQ29tcG9uZW50EhIKBG5hbWUYASABKAlSBG5hbWUSKAoFY2xhc3MYAiABKA4yEi5kbWkuQ29tcG9uZW50VHlwZVIFY2xhc3MSJgoGcGFyZW50GAMgASgLMg4uZG1pLkNvbXBvbmVudFIGcGFyZW50EiQKDnBhcmVudF9yZWxfcG9zGAQgASgFUgxwYXJlbnRSZWxQb3MSFAoFYWxpYXMYBSABKAlSBWFsaWFzEhkKCGFzc2V0X2lkGAYgASgJUgdhc3NldElkEhoKA3VyaRgHIAEoCzIILmRtaS5VcmlSA3VyaRI5CgthZG1pbl9zdGF0ZRgIIAEoDjIYLmRtaS5Db21wb25lbnRBZG1pblN0YXRlUgphZG1pblN0YXRlKrQDCg1Db21wb25lbnRUeXBlEhwKGENPTVBPTkVOVF9UWVBFX1VOREVGSU5FRBAAEhoKFkNPTVBPTkVOVF9UWVBFX1VOS05PV04QARIaChZDT01QT05FTlRfVFlQRV9DSEFTU0lTEAISHAoYQ09NUE9ORU5UX1RZUEVfQkFDS1BMQU5FEAMSHAoYQ09NUE9ORU5UX1RZUEVfQ09OVEFJTkVSEAQSHwobQ09NUE9ORU5UX1RZUEVfUE9XRVJfU1VQUExZEAUSFgoSQ09NUE9ORU5UX1RZUEVfRkFOEAYSGQoVQ09NUE9ORU5UX1RZUEVfU0VOU09SEAcSGQoVQ09NUE9ORU5UX1RZUEVfTU9EVUxFEAgSFwoTQ09NUE9ORU5UX1RZUEVfUE9SVBAJEhYKEkNPTVBPTkVOVF9UWVBFX0NQVRAKEhoKFkNPTVBPTkVOVF9UWVBFX0JBVFRFUlkQCxIaChZDT01QT05FTlRfVFlQRV9TVE9SQUdFEAwSGQoVQ09NUE9ORU5UX1RZUEVfTUVNT1JZEA0SHgoaQ09NUE9ORU5UX1RZUEVfVFJBTlNDRUlWRVIQDiqzAQoTQ29tcG9uZW50QWRtaW5TdGF0ZRIeChpDT01QX0FETUlOX1NUQVRFX1VOREVGSU5FRBAAEhwKGENPTVBfQURNSU5fU1RBVEVfVU5LTk9XThABEhsKF0NPTVBfQURNSU5fU1RBVEVfTE9DS0VEEAISIgoeQ09NUF9BRE1JTl9TVEFURV9TSFVUVElOR19ET1dOEAMSHQoZQ09NUF9BRE1JTl9TVEFURV9VTkxPQ0tFRBAEKqgBChJDb21wb25lbnRPcGVyU3RhdGUSHQoZQ09NUF9PUEVSX1NUQVRFX1VOREVGSU5FRBAAEhsKF0NPTVBfT1BFUl9TVEFURV9VTktOT1dOEAESHAoYQ09NUF9PUEVSX1NUQVRFX0RJU0FCTEVEEAISGwoXQ09NUF9PUEVSX1NUQVRFX0VOQUJMRUQQAxIbChdDT01QX09QRVJfU1RBVEVfVEVTVElORxAEKqYBChNDb21wb25lbnRVc2FnZVN0YXRlEh4KGkNPTVBfVVNBR0VfU1RBVEVfVU5ERUZJTkVEEAASHAoYQ09NUF9VU0FHRV9TVEFURV9VTktOT1dOEAESGQoVQ09NUF9VU0FHRV9TVEFURV9JRExFEAISGwoXQ09NUF9VU0FHRV9TVEFURV9BQ1RJVkUQAxIZChVDT01QX1VTQUdFX1NUQVRFX0JVU1kQBCqOAgoTQ29tcG9uZW50QWxhcm1TdGF0ZRIeChpDT01QX0FMQVJNX1NUQVRFX1VOREVGSU5FRBAAEhwKGENPTVBfQUxBUk1fU1RBVEVfVU5LTk9XThABEiEKHUNPTVBfQUxBUk1fU1RBVEVfVU5ERVJfUkVQQUlSEAISHQoZQ09NUF9BTEFSTV9TVEFURV9DUklUSUNBTBADEhoKFkNPTVBfQUxBUk1fU1RBVEVfTUFKT1IQBBIaChZDT01QX0FMQVJNX1NUQVRFX01JTk9SEAUSHAoYQ09NUF9BTEFSTV9TVEFURV9XQVJOSU5HEAYSIQodQ09NUF9BTEFSTV9TVEFURV9JTlRFUk1FRElBVEUQByq8AQoVQ29tcG9uZW50U3RhbmRieVN0YXRlEiAKHENPTVBfU1RBTkRCWV9TVEFURV9VTkRFRklORUQQABIeChpDT01QX1NUQU5EQllfU1RBVEVfVU5LTk9XThABEhoKFkNPTVBfU1RBTkRCWV9TVEFURV9IT1QQAhIbChdDT01QX1NUQU5EQllfU1RBVEVfQ09MRBADEigKJENPTVBfU1RBTkRCWV9TVEFURV9QUk9WSURJTkdfU0VSVklDRRAEKqEDCg9TZW5zb3JWYWx1ZVR5cGUSHwobU0VOU09SX1ZBTFVFX1RZUEVfVU5ERUZJTkVEEAASGwoXU0VOU09SX1ZBTFVFX1RZUEVfT1RIRVIQARIdChlTRU5TT1JfVkFMVUVfVFlQRV9VTktOT1dOEAISHgoaU0VOU09SX1ZBTFVFX1RZUEVfVk9MVFNfQUMQAxIeChpTRU5TT1JfVkFMVUVfVFlQRV9WT0xUU19EQxAEEh0KGVNFTlNPUl9WQUxVRV9UWVBFX0FNUEVSRVMQBRIbChdTRU5TT1JfVkFMVUVfVFlQRV9XQVRUUxAGEhsKF1NFTlNPUl9WQUxVRV9UWVBFX0hFUlRaEAcSHQoZU0VOU09SX1ZBTFVFX1RZUEVfQ0VMU0lVUxAIEiAKHFNFTlNPUl9WQUxVRV9UWVBFX1BFUkNFTlRfUkgQCRIZChVTRU5TT1JfVkFMVUVfVFlQRV9SUE0QChIZChVTRU5TT1JfVkFMVUVfVFlQRV9DTU0QCxIhCh1TRU5TT1JfVkFMVUVfVFlQRV9UUlVUSF9WQUxVRRAMKqgEChBTZW5zb3JWYWx1ZVNjYWxlEiAKHFNFTlNPUl9WQUxVRV9TQ0FMRV9VTkRFRklORUQQABIcChhTRU5TT1JfVkFMVUVfU0NBTEVfWU9DVE8QARIcChhTRU5TT1JfVkFMVUVfU0NBTEVfWkVQVE8QAhIbChdTRU5TT1JfVkFMVUVfU0NBTEVfQVRUTxADEhwKGFNFTlNPUl9WQUxVRV9TQ0FMRV9GRU1UTxAEEhsKF1NFTlNPUl9WQUxVRV9TQ0FMRV9QSUNPEAUSGwoXU0VOU09SX1ZBTFVFX1NDQUxFX05BTk8QBhIcChhTRU5TT1JfVkFMVUVfU0NBTEVfTUlDUk8QBxIcChhTRU5TT1JfVkFMVUVfU0NBTEVfTUlMTEkQCBIcChhTRU5TT1JfVkFMVUVfU0NBTEVfVU5JVFMQCRIbChdTRU5TT1JfVkFMVUVfU0NBTEVfS0lMTxAKEhsKF1NFTlNPUl9WQUxVRV9TQ0FMRV9NRUdBEAsSGwoXU0VOU09SX1ZBTFVFX1NDQUxFX0dJR0EQDBIbChdTRU5TT1JfVkFMVUVfU0NBTEVfVEVSQRANEhsKF1NFTlNPUl9WQUxVRV9TQ0FMRV9QRVRBEA4SGgoWU0VOU09SX1ZBTFVFX1NDQUxFX0VYQRAPEhwKGFNFTlNPUl9WQUxVRV9TQ0FMRV9aRVRUQRAQEhwKGFNFTlNPUl9WQUxVRV9TQ0FMRV9ZT1RUQRARKoIBCgxTZW5zb3JTdGF0dXMSGwoXU0VOU09SX1NUQVRVU19VTkRFRklORUQQABIUChBTRU5TT1JfU1RBVFVTX09LEAESHQoZU0VOU09SX1NUQVRVU19VTkFWQUlMQUJMRRACEiAKHFNFTlNPUl9TVEFUVVNfTk9OT1BFUkFUSU9OQUwQA0I7WjlnaXRodWIuY29tL29wZW5jb3JkL2RldmljZS1tYW5hZ2VtZW50LWludGVyZmFjZS92My9nby9kbWlK1T4KBxIFAADBAQEKCAoBDBIDAAASCggKAQgSAwIAUAoJCgIICxIDAgBQCggKAQISAwMADAoJCgIDABIDBQApCmkKAgQAEgQJAAsBMl0gVGhlIG1vZGVsIHVzZWQgdG8gcmVwcmVzZW50IGEgSFcgaXMgYmFzZWQgb24gUkZDODM0OCAoaHR0cHM6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bEIFCgN2YWwiUgoKV2F0ZXJNYXJrcxIiCgRoaWdoGAEgASgLMg4uZG1pLlZhbHVlVHlwZVIEaGlnaBIgCgNsb3cYAiABKAsyDi5kbWkuVmFsdWVUeXBlUgNsb3ciawoKVGhyZXNob2xkcxInCgV1cHBlchgBIAEoCzIPLmRtaS5XYXRlck1hcmtzSABSBXVwcGVyEicKBWxvd2VyGAIgASgLMg8uZG1pLldhdGVyTWFya3NIAFIFbG93ZXJCCwoJdGhyZXNob2xkIn4KFFRocmVzaG9sZEluZm9ybWF0aW9uEjUKDm9ic2VydmVkX3ZhbHVlGAEgASgLMg4uZG1pLlZhbHVlVHlwZVINb2JzZXJ2ZWRWYWx1ZRIvCgp0aHJlc2hvbGRzGAIgASgLMg8uZG1pLlRocmVzaG9sZHNSCnRocmVzaG9sZHMiigEKCEV2ZW50Q2ZnEigKCGV2ZW50X2lkGAEgASgOMg0uZG1pLkV2ZW50SWRzUgdldmVudElkEiMKDWlzX2NvbmZpZ3VyZWQYAiABKAhSDGlzQ29uZmlndXJlZBIvCgp0aHJlc2hvbGRzGAMgASgLMg8uZG1pLlRocmVzaG9sZHNSCnRocmVzaG9sZHMiMAoJRXZlbnRzQ2ZnEiMKBWl0ZW1zGAEgAygLMg0uZG1pLkV2ZW50Q2ZnUgVpdGVtcyKGAQoSTGlzdEV2ZW50c1Jlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxIjCgZyZWFzb24YAiABKA4yCy5kbWkuUmVhc29uUgZyZWFzb24SJgoGZXZlbnRzGAMgASgLMg4uZG1pLkV2ZW50c0NmZ1IGZXZlbnRzIq0BChpFdmVudHNDb25maWd1cmF0aW9uUmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEioKB2NoYW5nZXMYAiABKAsyDi5kbWkuRXZlbnRzQ2ZnSABSB2NoYW5nZXMSKgoQcmVzZXRfdG9fZGVmYXVsdBgDIAEoCEgAUg5yZXNldFRvRGVmYXVsdEILCglvcGVyYXRpb24iZwobRXZlbnRzQ29uZmlndXJhdGlvblJlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxIjCgZyZWFzb24YAiABKA4yCy5kbWkuUmVhc29uUgZyZWFzb24ilAEKDUV2ZW50TWV0YURhdGESKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIwCg5jb21wb25lbnRfdXVpZBgCIAEoCzIJLmRtaS5VdWlkUg1jb21wb25lbnRVdWlkEiUKDmNvbXBvbmVudF9uYW1lGAMgASgJUg1jb21wb25lbnROYW1lIoICCgVFdmVudBI5Cg5ldmVudF9tZXRhZGF0YRgBIAEoCzISLmRtaS5FdmVudE1ldGFEYXRhUg1ldmVudE1ldGFkYXRhEigKCGV2ZW50X2lkGAIgASgOMg0uZG1pLkV2ZW50SWRzUgdldmVudElkEjcKCXJhaXNlZF90cxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSCHJhaXNlZFRzEkAKDnRocmVzaG9sZF9pbmZvGAQgASgLMhkuZG1pLlRocmVzaG9sZEluZm9ybWF0aW9uUg10aHJlc2hvbGRJbmZvEhkKCGFkZF9pbmZvGAUgASgJUgdhZGRJbmZvKtEOCghFdmVudElkcxIYChRFVkVOVF9OQU1FX1VOREVGSU5FRBAAEh4KGkVWRU5UX1RSQU5TQ0VJVkVSX1BMVUdfT1VUEGQSHQoZRVZFTlRfVFJBTlNDRUlWRVJfUExVR19JThBlEi0KKUVWRU5UX1RSQU5TQ0VJVkVSX1ZPTFRBR0VfQUJPVkVfVEhSRVNIT0xEEGYSLQopRVZFTlRfVFJBTlNDRUlWRVJfVk9MVEFHRV9CRUxPV19USFJFU0hPTEQQZxIxCi1FVkVOVF9UUkFOU0NFSVZFUl9URU1QRVJBVFVSRV9BQk9WRV9USFJFU0hPTEQQaBIxCi1FVkVOVF9UUkFOU0NFSVZFUl9URU1QRVJBVFVSRV9CRUxPV19USFJFU0hPTEQQaRItCilFVkVOVF9UUkFOU0NFSVZFUl9DVVJSRU5UX0FCT1ZFX1RIUkVTSE9MRBBqEi0KKUVWRU5UX1RSQU5TQ0VJVkVSX0NVUlJFTlRfQkVMT1dfVEhSRVNIT0xEEGsSLgoqRVZFTlRfVFJBTlNDRUlWRVJfUlhfUE9XRVJfQUJPVkVfVEhSRVNIT0xEEGwSLgoqRVZFTlRfVFJBTlNDRUlWRVJfUlhfUE9XRVJfQkVMT1dfVEhSRVNIT0xEEG0SLgoqRVZFTlRfVFJBTlNDRUlWRVJfVFhfUE9XRVJfQUJPVkVfVEhSRVNIT0xEEG4SLgoqRVZFTlRfVFJBTlNDRUlWRVJfVFhfUE9XRVJfQkVMT1dfVEhSRVNIT0xEEG8SHQoZRVZFTlRfVFJBTlNDRUlWRVJfRkFJTFVSRRBwEjcKM0VWRU5UX1RSQU5TQ0VJVkVSX1ZPTFRBR0VfQUJPVkVfVEhSRVNIT0xEX1JFQ09WRVJFRBBxEjcKM0VWRU5UX1RSQU5TQ0VJVkVSX1ZPTFRBR0VfQkVMT1dfVEhSRVNIT0xEX1JFQ09WRVJFRBByEjsKN0VWRU5UX1RSQU5TQ0VJVkVSX1RFTVBFUkFUVVJFX0FCT1ZFX1RIUkVTSE9MRF9SRUNPVkVSRUQQcxI7CjdFVkVOVF9UUkFOU0NFSVZFUl9URU1QRVJBVFVSRV9CRUxPV19USFJFU0hPTERfUkVDT1ZFUkVEEHQSNwozRVZFTlRfVFJBTlNDRUlWRVJfQ1VSUkVOVF9BQk9WRV9USFJFU0hPTERfUkVDT1ZFUkVEEHUSNwozRVZFTlRfVFJBTlNDRUlWRVJfQ1VSUkVOVF9CRUxPV19USFJFU0hPTERfUkVDT1ZFUkVEEHYSOAo0RVZFTlRfVFJBTlNDRUlWRVJfUlhfUE9XRVJfQUJPVkVfVEhSRVNIT0xEX1JFQ09WRVJFRBB3EjgKNEVWRU5UX1RSQU5TQ0VJVkVSX1JYX1BPV0VSX0JFTE9XX1RIUkVTSE9MRF9SRUNPVkVSRUQQeBI4CjRFVkVOVF9UUkFOU0NFSVZFUl9UWF9QT1dFUl9BQk9WRV9USFJFU0hPTERfUkVDT1ZFUkVEEHkSOAo0RVZFTlRfVFJBTlNDRUlWRVJfVFhfUE9XRVJfQkVMT1dfVEhSRVNIT0xEX1JFQ09WRVJFRBB6EicKI0VWRU5UX1RSQU5TQ0VJVkVSX0ZBSUxVUkVfUkVDT1ZFUkVEEHsSFwoSRVZFTlRfUFNVX1BMVUdfT1VUEMgBEhYKEUVWRU5UX1BTVV9QTFVHX0lOEMkBEhYKEUVWRU5UX1BTVV9GQUlMVVJFEMoBEiAKG0VWRU5UX1BTVV9GQUlMVVJFX1JFQ09WRVJFRBDLARIWChFFVkVOVF9GQU5fRkFJTFVSRRCsAhIXChJFVkVOVF9GQU5fUExVR19PVVQQrQISFgoRRVZFTlRfRkFOX1BMVUdfSU4QrgISIAobRVZFTlRfRkFOX0ZBSUxVUkVfUkVDT1ZFUkVEEK8CEikKJEVWRU5UX0NQVV9URU1QRVJBVFVSRV9BQk9WRV9DUklUSUNBTBCQAxImCiFFVkVOVF9DUFVfVEVNUEVSQVRVUkVfQUJPVkVfRkFUQUwQkQMSMwouRVZFTlRfQ1BVX1RFTVBFUkFUVVJFX0FCT1ZFX0NSSVRJQ0FMX1JFQ09WRVJFRBCSAxIwCitFVkVOVF9DUFVfVEVNUEVSQVRVUkVfQUJPVkVfRkFUQUxfUkVDT1ZFUkVEEJMDEhoKFUVWRU5UX0hXX0RFVklDRV9SRVNFVBD0AxIvCipFVkVOVF9IV19ERVZJQ0VfVEVNUEVSQVRVUkVfQUJPVkVfQ1JJVElDQUwQ9QMSLAonRVZFTlRfSFdfREVWSUNFX1RFTVBFUkFUVVJFX0FCT1ZFX0ZBVEFMEPYDEjkKNEVWRU5UX0hXX0RFVklDRV9URU1QRVJBVFVSRV9BQk9WRV9DUklUSUNBTF9SRUNPVkVSRUQQ9wMSNgoxRVZFTlRfSFdfREVWSUNFX1RFTVBFUkFUVVJFX0FCT1ZFX0ZBVEFMX1JFQ09WRVJFRBD4AzK3AQodTmF0aXZlRXZlbnRzTWFuYWdlbWVudFNlcnZpY2USNgoKTGlzdEV2ZW50cxIPLmRtaS5IYXJkd2FyZUlEGhcuZG1pLkxpc3RFdmVudHNSZXNwb25zZRJeChlVcGRhdGVFdmVudHNDb25maWd1cmF0aW9uEh8uZG1pLkV2ZW50c0NvbmZpZ3VyYXRpb25SZXF1ZXN0GiAuZG1pLkV2ZW50c0NvbmZpZ3VyYXRpb25SZXNwb25zZUI7WjlnaXRodWIuY29tL29wZW5jb3JkL2RldmljZS1tYW5hZ2VtZW50LWludGVyZmFjZS92My9nby9kbWlKnigKBxIFAACZAQEKCAoBDBIDAAASCggKAQgSAwIAUAoJCgIICxIDAgBQCggKAQISAwMADAoJCgIDABIDBQAbCgkKAgMBEgMGABYKCQoCAwISAwcAKQpFCgIFABIECwBCATI5IE1hbmFnZW1lbnQgb2YgRXZlbnRzIGFuZCBw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YWRkaXRpb25hbCBpbmZvIHJlZ2FyZGluZyB0aGUgZXZlbnQNCgoPCgUECgIEBBIGjQEEiwEsCg0KBQQKAgQFEgSNAQQKCg0KBQQKAgQBEgSNAQsTCg0KBQQKAgQDEgSNARYXCgwKAgYAEgaQAQCZAQEKCwoDBgABEgSQAQglCkAKBAYAAgASBJMBBDsaMiBMaXN0IHRoZSBzdXBwb3J0ZWQgZXZlbnRzIGZvciB0aGUgcGFzc2VkIGRldmljZQ0KCg0KBQYAAgABEgSTAQgSCg0KBQYAAgACEgSTARMdCg0KBQYAAgADEgSTASc5CvEBCgQGAAIBEgSYAQRjGuIBIFVwZGF0ZXMgdGhlIGNvbmZpZ3VyYXRpb24gb2YgdGhlIGxpc3Qgb2YgZXZlbnRzIGluIHRoZSByZXF1ZXN0DQogVGhlIGRlZmF1bHQgYmVoYXZpb3VyIG9mIHRoZSBkZXZpY2UgaXMgdG8gcmVwb3J0IGFsbCB0aGUgc3VwcG9ydGVkIGV2ZW50cw0KIFRoaXMgY29uZmlndXJhdGlvbiBpcyBwZXJzaXN0ZWQgYWNyb3NzIHJlYm9vdHMgb2YgdGhlIGRldmljZSBvciB0aGUgZGV2aWNlIG1hbmFnZXINCgoNCgUGAAIBARIEmAEIIQoNCgUGAAIBAhIEmAEiPAoNCgUGAAIBAxIEmAFGYWIGcHJvdG8zCpkcCh9kbWkvaHdfbWFuYWdlbWVudF9zZXJ2aWNlLnByb3RvEgNkbWkaEWRtaS9jb21tb25zLnByb3RvGgxkbWkvaHcucHJvdG8iRgoYUGh5c2ljYWxJbnZlbnRvcnlSZXF1ZXN0EioKC2RldmljZV91dWlkGAEgASgLMgkuZG1pLlV1aWRSCmRldmljZVV1aWQikgEKGVBoeXNpY2FsSW52ZW50b3J5UmVzcG9uc2USIwoGc3RhdHVzGAEgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEiMKBnJlYXNvbhgCIAEoDjILLmRtaS5SZWFzb25SBnJlYXNvbhIrCglpbnZlbnRvcnkYAyABKAsyDS5kbWkuSGFyZHdhcmVSCWludmVudG9yeSKgAQoZSFdDb21wb25lbnRJbmZvR2V0UmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEjAKDmNvbXBvbmVudF91dWlkGAIgASgLMgkuZG1pLlV1aWRSDWNvbXBvbmVudFV1aWQSJQoOY29tcG9uZW50X25hbWUYAyABKAlSDWNvbXBvbmVudE5hbWUi1AEKGUhXQ29tcG9uZW50SW5mb1NldFJlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIwCg5jb21wb25lbnRfdXVpZBgCIAEoCzIJLmRtaS5VdWlkUg1jb21wb25lbnRVdWlkEiUKDmNvbXBvbmVudF9uYW1lGAMgASgJUg1jb21wb25lbnROYW1lEjIKB2NoYW5nZXMYBCABKAsyGC5kbWkuTW9kaWZpYWJsZUNvbXBvbmVudFIHY2hhbmdlcyJmChpIV0NvbXBvbmVudEluZm9TZXRSZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSIwoGcmVhc29uGAIgASgOMgsuZG1pLlJlYXNvblIGcmVhc29uIpMBChtTdGFydE1hbmFnaW5nRGV2aWNlUmVzcG9uc2USIwoGc3RhdHVzGAEgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEiMKBnJlYXNvbhgCIAEoDjILLmRtaS5SZWFzb25SBnJlYXNvbhIqCgtkZXZpY2VfdXVpZBgDIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkMugCChlOYXRpdmVIV01hbmFnZW1lbnRTZXJ2aWNlElMKE1N0YXJ0TWFuYWdpbmdEZXZpY2USGC5kbWkuTW9kaWZpYWJsZUNvbXBvbmVudBogLmRtaS5TdGFydE1hbmFnaW5nRGV2aWNlUmVzcG9uc2UwARJXChRHZXRQaHlzaWNhbEludmVudG9yeRIdLmRtaS5QaHlzaWNhbEludmVudG9yeVJlcXVlc3QaHi5kbWkuUGh5c2ljYWxJbnZlbnRvcnlSZXNwb25zZTABEkYKEkdldEhXQ29tcG9uZW50SW5mbxIeLmRtaS5IV0NvbXBvbmVudEluZm9HZXRSZXF1ZXN0Gg4uZG1pLkNvbXBvbmVudDABElUKElNldEhXQ29tcG9uZW50SW5mbxIeLmRtaS5IV0NvbXBvbmVudEluZm9TZXRSZXF1ZXN0Gh8uZG1pLkhX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Cy5kbWkuUmVhc29uUgZyZWFzb24SLAoHbWV0cmljcxgDIAEoCzISLmRtaS5NZXRyaWNzQ29uZmlnUgdtZXRyaWNzIrIBChtNZXRyaWNzQ29uZmlndXJhdGlvblJlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIuCgdjaGFuZ2VzGAIgASgLMhIuZG1pLk1ldHJpY3NDb25maWdIAFIHY2hhbmdlcxIqChByZXNldF90b19kZWZhdWx0GAMgASgISABSDnJlc2V0VG9EZWZhdWx0QgsKCW9wZXJhdGlvbiJoChxNZXRyaWNzQ29uZmlndXJhdGlvblJlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxIjCgZyZWFzb24YAiABKA4yCy5kbWkuUmVhc29uUgZyZWFzb24ilQEKDk1ldHJpY01ldGFEYXRhEioKC2RldmljZV91dWlkGAEgASgLMgkuZG1pLlV1aWRSCmRldmljZVV1aWQSMAoOY29tcG9uZW50X3V1aWQYAiABKAsyCS5kbWkuVXVpZFINY29tcG9uZW50VXVpZBIlCg5jb21wb25lbnRfbmFtZRgDIAEoCVINY29tcG9uZW50TmFtZSKlAQoGTWV0cmljEi0KCW1ldHJpY19pZBgBIAEoDjIQLmRtaS5NZXRyaWNOYW1lc1IIbWV0cmljSWQSPAoPbWV0cmljX21ldGFkYXRhGAIgASgLMhMuZG1pLk1ldHJpY01ldGFEYXRhUg5tZXRyaWNNZXRhZGF0YRIuCgV2YWx1ZRgDIAEoCzIYLmRtaS5Db21wb25lbnRTZW5zb3JEYXRhUgV2YWx1ZSJzChBHZXRNZXRyaWNSZXF1ZXN0EjAKCW1ldGFfZGF0YRgBIAEoCzITLmRtaS5NZXRyaWNNZXRhRGF0YVIIbWV0YURhdGESLQoJbWV0cmljX2lkGAIgASgOMhAuZG1pLk1ldHJpY05hbWVzUghtZXRyaWNJZCrZBQoLTWV0cmljTmFtZXMSGQoVTUVUUklDX05BTUVfVU5ERUZJTkVEEAASFAoQTUVUUklDX0ZBTl9TUEVFRBABEhMKD01FVFJJQ19DUFVfVEVNUBBkEh8KG01FVFJJQ19DUFVfVVNBR0VfUEVSQ0VOVEFHRRBlEhwKF01FVFJJQ19UUkFOU0NFSVZFUl9URU1QEMgBEh8KGk1FVFJJQ19UUkFOU0NFSVZFUl9WT0xUQUdFEMkBEhwKF01FVFJJQ19UUkFOU0NFSVZFUl9CSUFTEMoBEiAKG01FVFJJQ19UUkFOU0NFSVZFUl9SWF9QT1dFUhDLARIgChtNRVRSSUNfVFJBTlNDRUlWRVJfVFhfUE9XRVIQzAESIgodTUVUUklDX1RSQU5TQ0VJVkVSX1dBVkVMRU5HVEgQzQESFQoQTUVUUklDX0RJU0tfVEVNUBCsAhIZChRNRVRSSUNfRElTS19DQVBBQ0lUWRCtAhIWChFNRVRSSUNfRElTS19VU0FHRRCuAhIhChxNRVRSSUNfRElTS19VU0FHRV9QRVJDRU5UQUdFEK8CEiYKIU1FVFJJQ19ESVNLX1JFQURfV1JJVEVfUEVSQ0VOVEFHRRCwAhIoCiNNRVRSSUNfRElTS19GQVVMVFlfQ0VMTFNfUEVSQ0VOVEFHRRCxAhIUCg9NRVRSSUNfUkFNX1RFTVAQkAMSGAoTTUVUUklDX1JBTV9DQVBBQ0lUWRCRAxIVChBNRVRSSUNfUkFNX1VTQUdFEJIDEiAKG01FVFJJQ19SQU1fVVNBR0VfUEVSQ0VOVEFHRRCTAxIVChBNRVRSSUNfUE9XRVJfTUFYEPQDEhcKEk1FVFJJQ19QT1dFUl9VU0FHRRD1AxIiCh1NRVRSSUNfUE9XRVJfVVNBR0VfUEVSQ0VOVEFHRRD2AxIiCh1NRVRSSUNfSU5ORVJfU1VSUk9VTkRJTkdfVEVNUBDYBDLuAQoeTmF0aXZlTWV0cmljc01hbmFnZW1lbnRTZXJ2aWNlEjgKC0xpc3RNZXRyaWNzEg8uZG1pLkhhcmR3YXJlSUQaGC5kbWkuTGlzdE1ldHJpY3NSZXNwb25zZRJhChpVcGRhdGVNZXRyaWNzQ29uZmlndXJhdGlvbhIgLmRtaS5NZXRyaWNzQ29uZmlndXJhdGlvblJlcXVlc3QaIS5kbWkuTWV0cmljc0NvbmZpZ3VyYXRpb25SZXNwb25zZRIvCglHZXRNZXRyaWMSFS5kbWkuR2V0TWV0cmljUmVxdWVzdBoLLmRtaS5NZXRyaWNCO1o5Z2l0aHViLmNvbS9vcGVuY29yZC9kZXZpY2UtbWFuYWdl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AgEDEgNpHB0KCgoCBgASBGwAfAEKCgoDBgABEgNsCCYKgwIKBAYAAgASA3EEPRr1ASBMaXN0IHRoZSBzdXBwb3J0ZWQgbWV0cmljcyBmb3IgdGhlIHBhc3NlZCBkZXZpY2UuDQogVGhpcyB3b3VsZCBiZSB0aGUgZmlyc3QgY2FsbCB0aGF0IHlvdSBtYWtlIHRvIGtub3cgYWJvdXQgdGhlIG1ldHJpY3MgdGhhdCBhIHBhcnRpY3VsYXIgZGV2aWNlIHN1cHBvcnRzIGFuZA0KIHRoZW4gdXNlIHRoZSBVcGRhdGVNZXRyaWNzQ29uZmlndXJhdGlvbiBBUEkgdG8gbW9uaXRvciBvbmx5IHRoZSByZXF1aXJlZCBtZXRyaWNzLg0KCgwKBQYAAgABEgNxCBMKDAoFBgACAAISA3EUHgoMCgUGAAIAAxIDcSg7CqYCCgQGAAIBEgN4BGYamAIgVXBkYXRlcyB0aGUgY29uZmlndXJhdGlvbiBvZiB0aGUgbGlzdCBvZiBtZXRyaWNzIGluIHRoZSByZXF1ZXN0DQogQWN0cyB1cG9uIHNpbmdsZSBtZXRyaWMgY29uZmlndXJhdGlvbiwgY29sbGVjdGlvbiBvZiBhIHNpbmdsZSBtZXRyaWMgY2FuIGJlIHN0YXJ0ZWQvc3RvcHBlZA0KIGJ5IGNoYW5naW5nIGl0cyBjb25maWd1cmF0aW9uLg0KDQogVGhpcyBjb25maWd1cmF0aW9uIGlzIHBlcnNpc3RlZCBhY3Jvc3MgcmVzdGFydCBvZiB0aGUgZGV2aWNlIG9yIHRoZSBkZXZpY2UgbWFuYWdlcg0KCgwKBQYAAgEBEgN4CCIKDAoFBgACAQISA3gjPgoMCgUGAAIBAxIDeEhkCjYKBAYAAgISA3sENBopIEdldCB0aGUgaW5zdGFudGVub3VzIHZhbHVlIG9mIGEgbWV0cmljDQoKDAoFBgACAgESA3sIEQoMCgUGAAICAhIDexIiCgwKBQYAAgIDEgN7LDJiBnByb3RvMwqWFwoSZG1pL3N3X2ltYWdlLnByb3RvEgNkbWkaEWRtaS9jb21tb25zLnByb3RvIkcKDEltYWdlVmVyc2lvbhIdCgppbWFnZV9uYW1lGAEgASgJUglpbWFnZU5hbWUSGAoHdmVyc2lvbhgCIAEoCVIHdmVyc2lvbiKoAQoQSW1hZ2VJbmZvcm1hdGlvbhInCgVpbWFnZRgBIAEoCzIRLmRtaS5JbWFnZVZlcnNpb25SBWltYWdlEjAKFGltYWdlX2luc3RhbGxfc2NyaXB0GAIgASgJUhJpbWFnZUluc3RhbGxTY3JpcHQSGwoJaW1hZ2VfdXJsGAMgASgJUghpbWFnZVVybBIcCglzaGEyNTZzdW0YBSABKAlSCXNoYTI1NnN1bSKdBAoLSW1hZ2VTdGF0dXMSIwoGc3RhdHVzGAEgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEi8KBnJlYXNvbhgCIAEoDjIXLmRtaS5JbWFnZVN0YXR1cy5SZWFzb25SBnJlYXNvbhIxCgVzdGF0ZRgDIAEoDjIbLmRtaS5JbWFnZVN0YXR1cy5JbWFnZVN0YXRlUgVzdGF0ZRIgCgtkZXNjcmlwdGlvbhgEIAEoCVILZGVzY3JpcHRpb24izwEKCkltYWdlU3RhdGUSEwoPVU5ERUZJTkVEX1NUQVRFEAASEQoNQ09QWUlOR19JTUFHRRABEhQKEElOU1RBTExJTkdfSU1BR0UQAhITCg9DT01NSVRJTkdfSU1BR0UQAxIUChBSRUJPT1RJTkdfREVWSUNFEAQSFAoQVVBHUkFERV9DT01QTEVURRAFEhIKDlVQR1JBREVfRkFJTEVEEAYSFwoTQUNUSVZBVElPTl9DT01QTEVURRAHEhUKEUFDVElWQVRJT05fRkFJTEVEEAgikAEKBlJlYXNvbhIUChBVTkRFRklORURfUkVBRE9OEAASFAoQRVJST1JfSU5fUkVRVUVTVBABEhIKDklOVEVSTkFMX0VSUk9SEAISGQoVREVWSUNFX0lOX1dST05HX1NUQVRFEAMSEQoNSU5WQUxJRF9JTUFHRRAEEhgKFFdST05HX0lNQUdFX0NIRUNLU1VNEAVCO1o5Z2l0aHViLmNvbS9vcGVuY29yZC9kZXZpY2UtbWFuYWdlbWVudC1pbnRlcmZhY2UvdjMvZ28vZG1pSo4QCgYSBAAANAEKCAoBDBIDAAASCggKAQgSAwIAUAoJCgIICxIDAgBQCggKAQISAwMADAoJCgIDABIDBQAbCkMKAgQAEgQJAAwBMjcgUHJvdG9zIGZvciBtb2RlbGluZyBhIHNvZnR3YXJlIGltYWdlIGFuZCBpdCdz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cyBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSBwcm9jZWR1cmUgYW5kIGlzIGRldmljZSBkZXBlbmRhbnQNCgoNCgUEAgIDBBIEMwQxGQoMCgUEAgIDBRIDMwQKCgwKBQQCAgMBEgMzCxYKDAoFBAICAwMSAzMZGmIGcHJvdG8zCoQSCh9kbWkvc3dfbWFuYWdlbWVudF9zZXJ2aWNlLnByb3RvEgNkbWkaDGRtaS9ody5wcm90bxoSZG1pL3N3X2ltYWdlLnByb3RvIpYBChpTb2Z0d2FyZVZlcnNpb25JbmZvcm1hdGlvbhI6Cg9hY3RpdmVfdmVyc2lvbnMYASADKAsyES5kbWkuSW1hZ2VWZXJzaW9uUg5hY3RpdmVWZXJzaW9ucxI8ChBzdGFuZGJ5X3ZlcnNpb25zGAIgAygLMhEuZG1pLkltYWdlVmVyc2lvblIPc3RhbmRieVZlcnNpb25zIngKFERvd25sb2FkSW1hZ2VSZXF1ZXN0EioKC2RldmljZV91dWlkGAEgASgLMgkuZG1pLlV1aWRSCmRldmljZVV1aWQSNAoKaW1hZ2VfaW5mbxgCIAEoCzIVLmRtaS5JbWFnZUluZm9ybWF0aW9uUglpbWFnZUluZm8ynAIKH05hdGl2ZVNvZnR3YXJlTWFuYWdlbWVudFNlcnZpY2USRgoSR2V0U29mdHdhcmVWZXJzaW9uEg8uZG1pLkhhcmR3YXJlSUQaHy5kbWkuU29mdHdhcmVWZXJzaW9uSW5mb3JtYXRpb24SPgoNRG93bmxvYWRJbWFnZRIZLmRtaS5Eb3dubG9hZEltYWdlUmVxdWVzdBoQLmRtaS5JbWFnZVN0YXR1czABEjQKDUFjdGl2YXRlSW1hZ2USDy5kbWkuSGFyZHdhcmVJRBoQLmRtaS5JbWFnZVN0YXR1czABEjsKFFJldmVydFRvU3RhbmRieUltYWdlEg8uZG1pLkhhcmR3YXJlSUQaEC5kbWkuSW1hZ2VTdGF0dXMwAUI7WjlnaXRodWIuY29tL29wZW5jb3JkL2RldmljZS1tYW5hZ2VtZW50LWludGVyZmFjZS92My9nby9kbWlKwgwKBhIEAAAqAQoICgEMEgMAABIKCAoBCBIDAgBQCgkKAggLEgMCAFAKCAoBAhIDAwAM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