CpYGChFkbWkvY29tbW9ucy5wcm90bxIDZG1pKjEKBlN0YXR1cxIUChBVTkRFRklORURfU1RBVFVTEAASBgoCT0sQARIJCgVFUlJPUhACKmkKBlJlYXNvbhIUChBVTkRFRklORURfUkVBU09OEAASEgoOVU5LTk9XTl9ERVZJQ0UQARISCg5JTlRFUk5BTF9FUlJPUhACEhAKDFdST05HX01FVFJJQxADEg8KC1dST05HX0VWRU5UEARCO1o5Z2l0aHViLmNvbS9vcGVuY29yZC9kZXZpY2UtbWFuYWdlbWVudC1pbnRlcmZhY2UvdjMvZ28vZG1pSpgECgYSBAAAFAEKCAoBDBIDAAASCggKAQgSAwIAUAoJCgIICxIDAgBQCggKAQISAwMADApUCgIFABIEBwALATJIIENvbW1vbiBzdHJ1Y3R1cmVzIHVzZWQgYWNyb3NzIHRoZSBkaWZmZXJlbnQgRGV2aWNlIE1hbmFnZW1lbnQgc2VydmljZXMKCgoKAwUAARIDBwULCgsKBAUAAgASAwgEGQoMCgUFAAIAARIDCAQUCgwKBQUAAgACEgMIFxgKCwoEBQACARIDCQQLCgwKBQUAAgEBEgMJBAYKDAoFBQACAQISAwkJCgoLCgQFAAICEgMKBA4KDAoFBQACAgESAwoECQoMCgUFAAICAhIDCgwNCi8KAgUBEgQOABQBGiMgUmVhc29uIGZvciB0aGUgZmFpbHVyZSBvZiByZXF1ZXN0CgoKCgMFAQESAw4FCwoLCgQFAQIAEgMPBBkKDAoFBQECAAESAw8EFAoMCgUFAQIAAhIDDxcYCgsKBAUBAgESAxAEFwoMCgUFAQIBARIDEAQSCgwKBQUBAgECEgMQFRYKCwoEBQECAhIDEQQXCgwKBQUBAgIBEgMRBBIKDAoFBQECAgISAxEVFgoLCgQFAQIDEgMSBBUKDAoFBQECAwESAxIEEAoMCgUFAQIDAhIDEhMUCgsKBAUBAgQSAxMEFAoMCgUFAQIEARIDEwQPCgwKBQUBAgQCEgMTEhNiBnByb3RvMwryLwofZ29vZ2xlL3Byb3RvYnVmL3RpbWVzdGFtcC5wcm90bxIPZ29vZ2xlLnByb3RvYnVmIjsKCVRpbWVzdGFtcBIYCgdzZWNvbmRzGAEgASgDUgdzZWNvbmRzEhQKBW5hbm9zGAIgASgFUgVuYW5vc0J+ChNjb20uZ29vZ2xlLnByb3RvYnVmQg5UaW1lc3RhbXBQcm90b1ABWitnaXRodWIuY29tL2dvbGFuZy9wcm90b2J1Zi9wdHlwZXMvdGltZXN0YW1w+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzSvgtCgcSBR4AiAEBCswMCgEMEgMeABIywQwgUHJvdG9jb2wgQnVmZmVycyAtIEdvb2dsZSdzIGRhdGEgaW50ZXJjaGFuZ2UgZm9ybWF0CiBDb3B5cmlnaHQgMjAwOCBHb29nbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KIGh0dHBzOi8vZGV2ZWxvcGVycy5nb29nbGUuY29tL3Byb3RvY29sLWJ1ZmZlcnMvCgogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCiBtZXQ6CgogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKIGRpc3RyaWJ1dGlvbi4KICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgoKIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCgoICgECEgMgABgKCAoBCBIDIgA7CgkKAgglEgMiADsKCAoBCBIDIwAfCgkKAggfEgMjAB8KCAoBCBIDJABCCgkKAggLEgMkAEIKCAoBCBIDJQAsCgkKAggBEgMlACwKCAoBCBIDJgAvCgkKAggIEgMmAC8KCAoBCBIDJwAiCgkKAggKEgMnACIKCAoBCBIDKAAhCgkKAggkEgMoACEK8RsKAgQAEgV8AIgBARrjGyBBIFRpbWVzdGFtcCByZXByZXNlbnRzIGEgcG9pbnQgaW4gdGltZSBpbmRlcGVuZGVudCBvZiBhbnkgdGltZSB6b25lIG9yIGxvY2FsCiBjYWxlbmRhciwgZW5jb2RlZCBhcyBhIGNvdW50IG9mIHNlY29uZHMgYW5kIGZyYWN0aW9ucyBvZiBzZWNvbmRzIGF0CiBuYW5vc2Vjb25kIHJlc29sdXRpb24uIFRoZSBjb3VudCBpcyByZWxhdGl2ZSB0byBhbiBlcG9jaCBhdCBVVEMgbWlkbmlnaHQgb24KIEphbnVhcnkgMSwgMTk3MCwgaW4gdGhlIHByb2xlcHRpYyBHcmVnb3JpYW4gY2FsZW5kYXIgd2hpY2ggZXh0ZW5kcyB0aGUKIEdyZWdvcmlhbiBjYWxlbmRhciBiYWNrd2FyZHMgdG8geWVhciBvbmUuCgogQWxsIG1pbnV0ZXMgYXJlIDYwIHNlY29uZHMgbG9uZy4gTGVhcCBzZWNvbmRzIGFyZSAic21lYXJlZCIgc28gdGhhdCBubyBsZWFwCiBzZWNvbmQgdGFibGUgaXMgbmVlZGVkIGZvciBpbnRlcnByZXRhdGlvbiwgdXNpbmcgYSBbMjQtaG91ciBsaW5lYXIKIHNtZWFyXShodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS90aW1lL3NtZWFyKS4KCiBUaGUgcmFuZ2UgaXMgZnJvbSAwMDAxLTAxLTAxVDAwOjAwOjAwWiB0byA5OTk5LTEyLTMxVDIzOjU5OjU5Ljk5OTk5OTk5OVouIEJ5CiByZXN0cmljdGluZyB0byB0aGF0IHJhbmdlLCB3ZSBlbnN1cmUgdGhhdCB3ZSBjYW4gY29udmVydCB0byBhbmQgZnJvbSBbUkZDCiAzMzM5XShodHRwczovL3d3dy5pZXRmLm9yZy9yZmMvcmZjMzMzOS50eHQpIGRhdGUgc3RyaW5ncy4KCiAjIEV4YW1wbGVzCgogRXhhbXBsZSAxOiBDb21wdXRlIFRpbWVzdGFtcCBmcm9tIFBPU0lYIGB0aW1lKClgLgoKICAgICBUaW1lc3RhbXAgdGltZXN0YW1wOwogICAgIHRpbWVzdGFtcC5zZXRfc2Vjb25kcyh0aW1lKE5VTEwpKTsKICAgICB0aW1lc3RhbXAuc2V0X25hbm9zKDApOwoKIEV4YW1wbGUgMjogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBQT1NJWCBgZ2V0dGltZW9mZGF5KClgLgoKICAgICBzdHJ1Y3QgdGltZXZhbCB0djsKICAgICBnZXR0aW1lb2ZkYXkoJnR2LCBOVUxMKTsKCiAgICAgVGltZXN0YW1wIHRpbWVzdGFtcDsKICAgICB0aW1lc3RhbXAuc2V0X3NlY29uZHModHYudHZfc2VjKTsKICAgICB0aW1lc3RhbXAuc2V0X25hbm9zKHR2LnR2X3VzZWMgKiAxMDAwKTsKCiBFeGFtcGxlIDM6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gV2luMzIgYEdldFN5c3RlbVRpbWVBc0ZpbGVUaW1lKClgLgoKICAgICBGSUxFVElNRSBmdDsKICAgICBHZXRTeXN0ZW1UaW1lQXNGaWxlVGltZSgmZnQpOwogICAgIFVJTlQ2NCB0aWNrcyA9ICgoKFVJTlQ2NClmdC5kd0hpZ2hEYXRlVGltZSkgPDwgMzIpIHwgZnQuZHdMb3dEYXRlVGltZTsKCiAgICAgLy8gQSBXaW5kb3dzIHRpY2sgaXMgMTAwIG5hbm9zZWNvbmRzLiBXaW5kb3dzIGVwb2NoIDE2MDEtMDEtMDFUMDA6MDA6MDBaCiAgICAgLy8gaXMgMTE2NDQ0NzM2MDAgc2Vjb25kcyBiZWZvcmUgVW5peCBlcG9jaCAxOTcwLTAxLTAxVDAwOjAwOjAwWi4KICAgICBUaW1lc3RhbXAgdGltZXN0YW1wOwogICAgIHRpbWVzdGFtcC5zZXRfc2Vjb25kcygoSU5UNjQpICgodGlja3MgLyAxMDAwMDAwMCkgLSAxMTY0NDQ3MzYwMExMKSk7CiAgICAgdGltZXN0YW1wLnNldF9uYW5vcygoSU5UMzIpICgodGlja3MgJSAxMDAwMDAwMCkgKiAxMDApKTsKCiBFeGFtcGxlIDQ6IENvbXB1dGUgVGltZXN0YW1wIGZyb20gSmF2YSBgU3lzdGVtLmN1cnJlbnRUaW1lTWlsbGlzKClgLgoKICAgICBsb25nIG1pbGxpcyA9IFN5c3RlbS5jdXJyZW50VGltZU1pbGxpcygpOwoKICAgICBUaW1lc3RhbXAgdGltZXN0YW1wID0gVGltZXN0YW1wLm5ld0J1aWxkZXIoKS5zZXRTZWNvbmRzKG1pbGxpcyAvIDEwMDApCiAgICAgICAgIC5zZXROYW5vcygoaW50KSAoKG1pbGxpcyAlIDEwMDApICogMTAwMDAwMCkpLmJ1aWxkKCk7CgoKIEV4YW1wbGUgNTogQ29tcHV0ZSBUaW1lc3RhbXAgZnJvbSBjdXJyZW50IHRpbWUgaW4gUHl0aG9uLgoKICAgICB0aW1lc3RhbXAgPSBUaW1lc3RhbXAoKQogICAgIHRpbWVzdGFtcC5HZXRDdXJyZW50VGltZSgpCgogIyBKU09OIE1hcHBpbmcKCiBJbiBKU09OIGZvcm1hdCwgdGhlIFRpbWVzdGFtcCB0eXBlIGlzIGVuY29kZWQgYXMgYSBzdHJpbmcgaW4gdGhlCiBbUkZDIDMzMzldKGh0dHBzOi8vd3d3LmlldGYub3JnL3JmYy9yZmMzMzM5LnR4dCkgZm9ybWF0LiBUaGF0IGlzLCB0aGUKIGZvcm1hdCBpcyAie3llYXJ9LXttb250aH0te2RheX1Ue2hvdXJ9OnttaW59OntzZWN9Wy57ZnJhY19zZWN9XVoiCiB3aGVyZSB7eWVhcn0gaXMgYWx3YXlzIGV4cHJlc3NlZCB1c2luZyBmb3VyIGRpZ2l0cyB3aGlsZSB7bW9udGh9LCB7ZGF5fSwKIHtob3VyfSwge21pbn0sIGFuZCB7c2VjfSBhcmUgemVyby1wYWRkZWQgdG8gdHdvIGRpZ2l0cyBlYWNoLiBUaGUgZnJhY3Rpb25hbAogc2Vjb25kcywgd2hpY2ggY2FuIGdvIHVwIHRvIDkgZGlnaXRzIChpLmUuIHVwIHRvIDEgbmFub3NlY29uZCByZXNvbHV0aW9uKSwKIGFyZSBvcHRpb25hbC4gVGhlICJaIiBzdWZmaXggaW5kaWNhdGVzIHRoZSB0aW1lem9uZSAoIlVUQyIpOyB0aGUgdGltZXpvbmUKIGlzIHJlcXVpcmVkLiBBIHByb3RvMyBKU09OIHNlcmlhbGl6ZXIgc2hvdWxkIGFsd2F5cyB1c2UgVVRDIChhcyBpbmRpY2F0ZWQgYnkKICJaIikgd2hlbiBwcmludGluZyB0aGUgVGltZXN0YW1wIHR5cGUgYW5kIGEgcHJvdG8zIEpTT04gcGFyc2VyIHNob3VsZCBiZQogYWJsZSB0byBhY2NlcHQgYm90aCBVVEMgYW5kIG90aGVyIHRpbWV6b25lcyAoYXMgaW5kaWNhdGVkIGJ5IGFuIG9mZnNldCkuCgogRm9yIGV4YW1wbGUsICIyMDE3LTAxLTE1VDAxOjMwOjE1LjAxWiIgZW5jb2RlcyAxNS4wMSBzZWNvbmRzIHBhc3QKIDAxOjMwIFVUQyBvbiBKYW51YXJ5IDE1LCAyMDE3LgoKIEluIEphdmFTY3JpcHQsIG9uZSBjYW4gY29udmVydCBhIERhdGUgb2JqZWN0IHRvIHRoaXMgZm9ybWF0IHVzaW5nIHRoZQogc3RhbmRhcmQgW3RvSVNPU3RyaW5nKCldKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0RhdGUvdG9JU09TdHJpbmcpCiBtZXRob2QuIEluIFB5dGhvbiwgYSBzdGFuZGFyZCBgZGF0ZXRpbWUuZGF0ZXRpbWVgIG9iamVjdCBjYW4gYmUgY29udmVydGVkCiB0byB0aGlzIGZvcm1hdCB1c2luZyBbYHN0cmZ0aW1lYF0oaHR0cHM6Ly9kb2NzLnB5dGhvbi5vcmcvMi9saWJyYXJ5L3RpbWUuaHRtbCN0aW1lLnN0cmZ0aW1lKQogd2l0aCB0aGUgdGltZSBmb3JtYXQgc3BlYyAnJVktJW0tJWRUJUg6JU06JVMuJWZaJy4gTGlrZXdpc2UsIGluIEphdmEsIG9uZQogY2FuIHVzZSB0aGUgSm9kYSBUaW1lJ3MgW2BJU09EYXRlVGltZUZvcm1hdC5kYXRlVGltZSgpYF0oCiBodHRwOi8vd3d3LmpvZGEub3JnL2pvZGEtdGltZS9hcGlkb2NzL29yZy9qb2RhL3RpbWUvZm9ybWF0L0lTT0RhdGVUaW1lRm9ybWF0Lmh0bWwjZGF0ZVRpbWUlMkQlMkQKICkgdG8gb2J0YWluIGEgZm9ybWF0dGVyIGNhcGFibGUgb2YgZ2VuZXJhdGluZyB0aW1lc3RhbXBzIGluIHRoaXMgZm9ybWF0LgoKCgoKCgMEAAESA3wIEQqdAQoEBAACABIEgQECFBqOASBSZXByZXNlbnRzIHNlY29uZHMgb2YgVVRDIHRpbWUgc2luY2UgVW5peCBlcG9jaAogMTk3MC0wMS0wMVQwMDowMDowMFouIE11c3QgYmUgZnJvbSAwMDAxLTAxLTAxVDAwOjAwOjAwWiB0bwogOTk5OS0xMi0zMVQyMzo1OTo1OVogaW5jbHVzaXZlLgoKDgoFBAACAAQSBYEBAnwTCg0KBQQAAgAFEgSBAQIHCg0KBQQAAgABEgSBAQgPCg0KBQQAAgADEgSBARITCuUBCgQEAAIBEgSHAQISGtYBIE5vbi1uZWdhdGl2ZSBmcmFjdGlvbnMgb2YgYSBzZWNvbmQgYXQgbmFub3NlY29uZCByZXNvbHV0aW9uLiBOZWdhdGl2ZQogc2Vjb25kIHZhbHVlcyB3aXRoIGZyYWN0aW9ucyBtdXN0IHN0aWxsIGhhdmUgbm9uLW5lZ2F0aXZlIG5hbm9zIHZhbHVlcwogdGhhdCBjb3VudCBmb3J3YXJkIGluIHRpbWUuIE11c3QgYmUgZnJvbSAwIHRvIDk5OSw5OTksOTk5CiBpbmNsdXNpdmUuCgoPCgUEAAIBBBIGhwECgQEUCg0KBQQAAgEFEgSHAQIHCg0KBQQAAgEBEgSHAQgNCg0KBQQAAgEDEgSHARARYgZwcm90bzMK+GIKDGRtaS9ody5wcm90bxIDZG1pGh9nb29nbGUvcHJvdG9idWYvdGltZXN0YW1wLnByb3RvIhoKBFV1aWQSEgoEdXVpZBgBIAEoCVIEdXVpZCIrCgpIYXJkd2FyZUlEEh0KBHV1aWQYASABKAsyCS5kbWkuVXVpZFIEdXVpZCIXCgNVcmkSEAoDdXJpGAEgASgJUgN1cmkihAMKDkNvbXBvbmVudFN0YXRlEkgKEnN0YXRlX2xhc3RfY2hhbmdlZBgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSEHN0YXRlTGFzdENoYW5nZWQSOQoLYWRtaW5fc3RhdGUYAiABKA4yGC5kbWkuQ29tcG9uZW50QWRtaW5TdGF0ZVIKYWRtaW5TdGF0ZRI2CgpvcGVyX3N0YXRlGAMgASgOMhcuZG1pLkNvbXBvbmVudE9wZXJTdGF0ZVIJb3BlclN0YXRlEjkKC3VzYWdlX3N0YXRlGAQgASgOMhguZG1pLkNvbXBvbmVudFVzYWdlU3RhdGVSCnVzYWdlU3RhdGUSOQoLYWxhcm1fc3RhdGUYBSABKA4yGC5kbWkuQ29tcG9uZW50QWxhcm1TdGF0ZVIKYWxhcm1TdGF0ZRI/Cg1zdGFuZGJ5X3N0YXRlGAYgASgOMhouZG1pLkNvbXBvbmVudFN0YW5kYnlTdGF0ZVIMc3RhbmRieVN0YXRlIvMCChNDb21wb25lbnRTZW5zb3JEYXRhEhQKBXZhbHVlGAEgASgFUgV2YWx1ZRIoCgR0eXBlGAIgASgOMhQuZG1pLlNlbnNvclZhbHVlVHlwZVIEdHlwZRIrCgVzY2FsZRgDIAEoDjIVLmRtaS5TZW5zb3JWYWx1ZVNjYWxlUgVzY2FsZRIcCglwcmVjaXNpb24YBCABKAVSCXByZWNpc2lvbhIpCgZzdGF0dXMYBSABKA4yES5kbWkuU2Vuc29yU3RhdHVzUgZzdGF0dXMSIwoNdW5pdHNfZGlzcGxheRgGIAEoCVIMdW5pdHNEaXNwbGF5EjgKCXRpbWVzdGFtcBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSCXRpbWVzdGFtcBIqChF2YWx1ZV91cGRhdGVfcmF0ZRgIIAEoDVIPdmFsdWVVcGRhdGVSYXRlEhsKCWRhdGFfdHlwZRgJIAEoCVIIZGF0YVR5cGUixwUKCUNvbXBvbmVudBISCgRuYW1lGAEgASgJUgRuYW1lEigKBWNsYXNzGAIgASgOMhIuZG1pLkNvbXBvbmVudFR5cGVSBWNsYXNzEiAKC2Rlc2NyaXB0aW9uGAMgASgJUgtkZXNjcmlwdGlvbhImCgZwYXJlbnQYBCABKAsyDi5kbWkuQ29tcG9uZW50UgZwYXJlbnQSJAoOcGFyZW50X3JlbF9wb3MYBSABKAVSDHBhcmVudFJlbFBvcxIqCghjaGlsZHJlbhgGIAMoCzIOLmRtaS5Db21wb25lbnRSCGNoaWxkcmVuEiEKDGhhcmR3YXJlX3JldhgHIAEoCVILaGFyZHdhcmVSZXYSIQoMZmlybXdhcmVfcmV2GAggASgJUgtmaXJtd2FyZVJldhIhCgxzb2Z0d2FyZV9yZXYYCSABKAlSC3NvZnR3YXJlUmV2Eh0KCnNlcmlhbF9udW0YCiABKAlSCXNlcmlhbE51bRIZCghtZmdfbmFtZRgLIAEoCVIHbWZnTmFtZRIdCgptb2RlbF9uYW1lGAwgASgJUgltb2RlbE5hbWUSFAoFYWxpYXMYDSABKAlSBWFsaWFzEhkKCGFzc2V0X2lkGA4gASgJUgdhc3NldElkEhUKBmlzX2ZydRgPIAEoCFIFaXNGcnUSNQoIbWZnX2RhdGUYECABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUgdtZmdEYXRlEhoKA3VyaRgRIAEoCzIILmRtaS5VcmlSA3VyaRIdCgR1dWlkGBIgASgLMgkuZG1pLlV1aWRSBHV1aWQSKQoFc3RhdGUYEyABKAsyEy5kbWkuQ29tcG9uZW50U3RhdGVSBXN0YXRlEjkKC3NlbnNvcl9kYXRhGBQgAygLMhguZG1pLkNvbXBvbmVudFNlbnNvckRhdGFSCnNlbnNvckRhdGEiawoISGFyZHdhcmUSOwoLbGFzdF9jaGFuZ2UYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wUgpsYXN0Q2hhbmdlEiIKBHJvb3QYAiABKAsyDi5kbWkuQ29tcG9uZW50UgRyb290IqkCChNNb2RpZmlhYmxlQ29tcG9uZW50EhIKBG5hbWUYASABKAlSBG5hbWUSKAoFY2xhc3MYAiABKA4yEi5kbWkuQ29tcG9uZW50VHlwZVIFY2xhc3MSJgoGcGFyZW50GAMgASgLMg4uZG1pLkNvbXBvbmVudFIGcGFyZW50EiQKDnBhcmVudF9yZWxfcG9zGAQgASgFUgxwYXJlbnRSZWxQb3MSFAoFYWxpYXMYBSABKAlSBWFsaWFzEhkKCGFzc2V0X2lkGAYgASgJUgdhc3NldElkEhoKA3VyaRgHIAEoCzIILmRtaS5VcmlSA3VyaRI5CgthZG1pbl9zdGF0ZRgIIAEoDjIYLmRtaS5Db21wb25lbnRBZG1pblN0YXRlUgphZG1pblN0YXRlKrQDCg1Db21wb25lbnRUeXBlEhwKGENPTVBPTkVOVF9UWVBFX1VOREVGSU5FRBAAEhoKFkNPTVBPTkVOVF9UWVBFX1VOS05PV04QARIaChZDT01QT05FTlRfVFlQRV9DSEFTU0lTEAISHAoYQ09NUE9ORU5UX1RZUEVfQkFDS1BMQU5FEAMSHAoYQ09NUE9ORU5UX1RZUEVfQ09OVEFJTkVSEAQSHwobQ09NUE9ORU5UX1RZUEVfUE9XRVJfU1VQUExZEAUSFgoSQ09NUE9ORU5UX1RZUEVfRkFOEAYSGQoVQ09NUE9ORU5UX1RZUEVfU0VOU09SEAcSGQoVQ09NUE9ORU5UX1RZUEVfTU9EVUxFEAgSFwoTQ09NUE9ORU5UX1RZUEVfUE9SVBAJEhYKEkNPTVBPTkVOVF9UWVBFX0NQVRAKEhoKFkNPTVBPTkVOVF9UWVBFX0JBVFRFUlkQCxIaChZDT01QT05FTlRfVFlQRV9TVE9SQUdFEAwSGQoVQ09NUE9ORU5UX1RZUEVfTUVNT1JZEA0SHgoaQ09NUE9ORU5UX1RZUEVfVFJBTlNDRUlWRVIQDiqzAQoTQ29tcG9uZW50QWRtaW5TdGF0ZRIeChpDT01QX0FETUlOX1NUQVRFX1VOREVGSU5FRBAAEhwKGENPTVBfQURNSU5fU1RBVEVfVU5LTk9XThABEhsKF0NPTVBfQURNSU5fU1RBVEVfTE9DS0VEEAISIgoeQ09NUF9BRE1JTl9TVEFURV9TSFVUVElOR19ET1dOEAMSHQoZQ09NUF9BRE1JTl9TVEFURV9VTkxPQ0tFRBAEKqgBChJDb21wb25lbnRPcGVyU3RhdGUSHQoZQ09NUF9PUEVSX1NUQVRFX1VOREVGSU5FRBAAEhsKF0NPTVBfT1BFUl9TVEFURV9VTktOT1dOEAESHAoYQ09NUF9PUEVSX1NUQVRFX0RJU0FCTEVEEAISGwoXQ09NUF9PUEVSX1NUQVRFX0VOQUJMRUQQAxIbChdDT01QX09QRVJfU1RBVEVfVEVTVElORxAEKqYBChNDb21wb25lbnRVc2FnZVN0YXRlEh4KGkNPTVBfVVNBR0VfU1RBVEVfVU5ERUZJTkVEEAASHAoYQ09NUF9VU0FHRV9TVEFURV9VTktOT1dOEAESGQoVQ09NUF9VU0FHRV9TVEFURV9JRExFEAISGwoXQ09NUF9VU0FHRV9TVEFURV9BQ1RJVkUQAxIZChVDT01QX1VTQUdFX1NUQVRFX0JVU1kQBCqOAgoTQ29tcG9uZW50QWxhcm1TdGF0ZRIeChpDT01QX0FMQVJNX1NUQVRFX1VOREVGSU5FRBAAEhwKGENPTVBfQUxBUk1fU1RBVEVfVU5LTk9XThABEiEKHUNPTVBfQUxBUk1fU1RBVEVfVU5ERVJfUkVQQUlSEAISHQoZQ09NUF9BTEFSTV9TVEFURV9DUklUSUNBTBADEhoKFkNPTVBfQUxBUk1fU1RBVEVfTUFKT1IQBBIaChZDT01QX0FMQVJNX1NUQVRFX01JTk9SEAUSHAoYQ09NUF9BTEFSTV9TVEFURV9XQVJOSU5HEAYSIQodQ09NUF9BTEFSTV9TVEFURV9JTlRFUk1FRElBVEUQByq8AQoVQ29tcG9uZW50U3RhbmRieVN0YXRlEiAKHENPTVBfU1RBTkRCWV9TVEFURV9VTkRFRklORUQQABIeChpDT01QX1NUQU5EQllfU1RBVEVfVU5LTk9XThABEhoKFkNPTVBfU1RBTkRCWV9TVEFURV9IT1QQAhIbChdDT01QX1NUQU5EQllfU1RBVEVfQ09MRBADEigKJENPTVBfU1RBTkRCWV9TVEFURV9QUk9WSURJTkdfU0VSVklDRRAEKqEDCg9TZW5zb3JWYWx1ZVR5cGUSHwobU0VOU09SX1ZBTFVFX1RZUEVfVU5ERUZJTkVEEAASGwoXU0VOU09SX1ZBTFVFX1RZUEVfT1RIRVIQARIdChlTRU5TT1JfVkFMVUVfVFlQRV9VTktOT1dOEAISHgoaU0VOU09SX1ZBTFVFX1RZUEVfVk9MVFNfQUMQAxIeChpTRU5TT1JfVkFMVUVfVFlQRV9WT0xUU19EQxAEEh0KGVNFTlNPUl9WQUxVRV9UWVBFX0FNUEVSRVMQBRIbChdTRU5TT1JfVkFMVUVfVFlQRV9XQVRUUxAGEhsKF1NFTlNPUl9WQUxVRV9UWVBFX0hFUlRaEAcSHQoZU0VOU09SX1ZBTFVFX1RZUEVfQ0VMU0lVUxAIEiAKHFNFTlNPUl9WQUxVRV9UWVBFX1BFUkNFTlRfUkgQCRIZChVTRU5TT1JfVkFMVUVfVFlQRV9SUE0QChIZChVTRU5TT1JfVkFMVUVfVFlQRV9DTU0QCxIhCh1TRU5TT1JfVkFMVUVfVFlQRV9UUlVUSF9WQUxVRRAMKqgEChBTZW5zb3JWYWx1ZVNjYWxlEiAKHFNFTlNPUl9WQUxVRV9TQ0FMRV9VTkRFRklORUQQABIcChhTRU5TT1JfVkFMVUVfU0NBTEVfWU9DVE8QARIcChhTRU5TT1JfVkFMVUVfU0NBTEVfWkVQVE8QAhIbChdTRU5TT1JfVkFMVUVfU0NBTEVfQVRUTxADEhwKGFNFTlNPUl9WQUxVRV9TQ0FMRV9GRU1UTxAEEhsKF1NFTlNPUl9WQUxVRV9TQ0FMRV9QSUNPEAUSGwoXU0VOU09SX1ZBTFVFX1NDQUxFX05BTk8QBhIcChhTRU5TT1JfVkFMVUVfU0NBTEVfTUlDUk8QBxIcChhTRU5TT1JfVkFMVUVfU0NBTEVfTUlMTEkQCBIcChhTRU5TT1JfVkFMVUVfU0NBTEVfVU5JVFMQCRIbChdTRU5TT1JfVkFMVUVfU0NBTEVfS0lMTxAKEhsKF1NFTlNPUl9WQUxVRV9TQ0FMRV9NRUdBEAsSGwoXU0VOU09SX1ZBTFVFX1NDQUxFX0dJR0EQDBIbChdTRU5TT1JfVkFMVUVfU0NBTEVfVEVSQRANEhsKF1NFTlNPUl9WQUxVRV9TQ0FMRV9QRVRBEA4SGgoWU0VOU09SX1ZBTFVFX1NDQUxFX0VYQRAPEhwKGFNFTlNPUl9WQUxVRV9TQ0FMRV9aRVRUQRAQEhwKGFNFTlNPUl9WQUxVRV9TQ0FMRV9ZT1RUQRARKoIBCgxTZW5zb3JTdGF0dXMSGwoXU0VOU09SX1NUQVRVU19VTkRFRklORUQQABIUChBTRU5TT1JfU1RBVFVTX09LEAESHQoZU0VOU09SX1NUQVRVU19VTkFWQUlMQUJMRRACEiAKHFNFTlNPUl9TVEFUVVNfTk9OT1BFUkFUSU9OQUwQA0I7WjlnaXRodWIuY29tL29wZW5jb3JkL2RldmljZS1tYW5hZ2VtZW50LWludGVyZmFjZS92My9nby9kbWlK1T4KBxIFAADBAQEKCAoBDBIDAAASCggKAQgSAwIAUAoJCgIICxIDAgBQCggKAQISAwMADAoJCgIDABIDBQApCmkKAgQAEgQJAAsBMl0gVGhlIG1vZGVsIHVzZWQgdG8gcmVwcmVzZW50IGEgSFcgaXMgYmFzZWQgb24gUkZDODM0OCAoaHR0cHM6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bEIFCgN2YWwiUgoKV2F0ZXJNYXJrcxIiCgRoaWdoGAEgASgLMg4uZG1pLlZhbHVlVHlwZVIEaGlnaBIgCgNsb3cYAiABKAsyDi5kbWkuVmFsdWVUeXBlUgNsb3ciawoKVGhyZXNob2xkcxInCgV1cHBlchgBIAEoCzIPLmRtaS5XYXRlck1hcmtzSABSBXVwcGVyEicKBWxvd2VyGAIgASgLMg8uZG1pLldhdGVyTWFya3NIAFIFbG93ZXJCCwoJdGhyZXNob2xkIn4KFFRocmVzaG9sZEluZm9ybWF0aW9uEjUKDm9ic2VydmVkX3ZhbHVlGAEgASgLMg4uZG1pLlZhbHVlVHlwZVINb2JzZXJ2ZWRWYWx1ZRIvCgp0aHJlc2hvbGRzGAIgASgLMg8uZG1pLlRocmVzaG9sZHNSCnRocmVzaG9sZHMiigEKCEV2ZW50Q2ZnEigKCGV2ZW50X2lkGAEgASgOMg0uZG1pLkV2ZW50SWRzUgdldmVudElkEiMKDWlzX2NvbmZpZ3VyZWQYAiABKAhSDGlzQ29uZmlndXJlZBIvCgp0aHJlc2hvbGRzGAMgASgLMg8uZG1pLlRocmVzaG9sZHNSCnRocmVzaG9sZHMiMAoJRXZlbnRzQ2ZnEiMKBWl0ZW1zGAEgAygLMg0uZG1pLkV2ZW50Q2ZnUgVpdGVtcyKGAQoSTGlzdEV2ZW50c1Jlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxIjCgZyZWFzb24YAiABKA4yCy5kbWkuUmVhc29uUgZyZWFzb24SJgoGZXZlbnRzGAMgASgLMg4uZG1pLkV2ZW50c0NmZ1IGZXZlbnRzIq0BChpFdmVudHNDb25maWd1cmF0aW9uUmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEioKB2NoYW5nZXMYAiABKAsyDi5kbWkuRXZlbnRzQ2ZnSABSB2NoYW5nZXMSKgoQcmVzZXRfdG9fZGVmYXVsdBgDIAEoCEgAUg5yZXNldFRvRGVmYXVsdEILCglvcGVyYXRpb24iZwobRXZlbnRzQ29uZmlndXJhdGlvblJlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxIjCgZyZWFzb24YAiABKA4yCy5kbWkuUmVhc29uUgZyZWFzb24ilAEKDUV2ZW50TWV0YURhdGESKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIwCg5jb21wb25lbnRfdXVpZBgCIAEoCzIJLmRtaS5VdWlkUg1jb21wb25lbnRVdWlkEiUKDmNvbXBvbmVudF9uYW1lGAMgASgJUg1jb21wb25lbnROYW1lIoICCgVFdmVudBI5Cg5ldmVudF9tZXRhZGF0YRgBIAEoCzISLmRtaS5FdmVudE1ldGFEYXRhUg1ldmVudE1ldGFkYXRhEigKCGV2ZW50X2lkGAIgASgOMg0uZG1pLkV2ZW50SWRzUgdldmVudElkEjcKCXJhaXNlZF90cxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBSCHJhaXNlZFRzEkAKDnRocmVzaG9sZF9pbmZvGAQgASgLMhkuZG1pLlRocmVzaG9sZEluZm9ybWF0aW9uUg10aHJlc2hvbGRJbmZvEhkKCGFkZF9pbmZvGAUgASgJUgdhZGRJbmZvKsQHCghFdmVudElkcxIYChRFVkVOVF9OQU1FX1VOREVGSU5FRBAAEh4KGkVWRU5UX1RSQU5TQ0VJVkVSX1BMVUdfT1VUEGQSHQoZRVZFTlRfVFJBTlNDRUlWRVJfUExVR19JThBlEi0KKUVWRU5UX1RSQU5TQ0VJVkVSX1ZPTFRBR0VfQUJPVkVfVEhSRVNIT0xEEGYSLQopRVZFTlRfVFJBTlNDRUlWRVJfVk9MVEFHRV9CRUxPV19USFJFU0hPTEQQZxIxCi1FVkVOVF9UUkFOU0NFSVZFUl9URU1QRVJBVFVSRV9BQk9WRV9USFJFU0hPTEQQaBIxCi1FVkVOVF9UUkFOU0NFSVZFUl9URU1QRVJBVFVSRV9CRUxPV19USFJFU0hPTEQQaRItCilFVkVOVF9UUkFOU0NFSVZFUl9DVVJSRU5UX0FCT1ZFX1RIUkVTSE9MRBBqEi0KKUVWRU5UX1RSQU5TQ0VJVkVSX0NVUlJFTlRfQkVMT1dfVEhSRVNIT0xEEGsSLgoqRVZFTlRfVFJBTlNDRUlWRVJfUlhfUE9XRVJfQUJPVkVfVEhSRVNIT0xEEGwSLgoqRVZFTlRfVFJBTlNDRUlWRVJfUlhfUE9XRVJfQkVMT1dfVEhSRVNIT0xEEG0SLgoqRVZFTlRfVFJBTlNDRUlWRVJfVFhfUE9XRVJfQUJPVkVfVEhSRVNIT0xEEG4SLgoqRVZFTlRfVFJBTlNDRUlWRVJfVFhfUE9XRVJfQkVMT1dfVEhSRVNIT0xEEG8SHQoZRVZFTlRfVFJBTlNDRUlWRVJfRkFJTFVSRRBwEhcKEkVWRU5UX1BTVV9QTFVHX09VVBDIARIWChFFVkVOVF9QU1VfUExVR19JThDJARIWChFFVkVOVF9QU1VfRkFJTFVSRRDKARIWChFFVkVOVF9GQU5fRkFJTFVSRRCsAhIXChJFVkVOVF9GQU5fUExVR19PVVQQrQISFgoRRVZFTlRfRkFOX1BMVUdfSU4QrgISKQokRVZFTlRfQ1BVX1RFTVBFUkFUVVJFX0FCT1ZFX0NSSVRJQ0FMEJADEiYKIUVWRU5UX0NQVV9URU1QRVJBVFVSRV9BQk9WRV9GQVRBTBCRAxIaChVFVkVOVF9IV19ERVZJQ0VfUkVTRVQQ9AMSLwoqRVZFTlRfSFdfREVWSUNFX1RFTVBFUkFUVVJFX0FCT1ZFX0NSSVRJQ0FMEPUDEiwKJ0VWRU5UX0hXX0RFVklDRV9URU1QRVJBVFVSRV9BQk9WRV9GQVRBTBD2AzK3AQodTmF0aXZlRXZlbnRzTWFuYWdlbWVudFNlcnZpY2USNgoKTGlzdEV2ZW50cxIPLmRtaS5IYXJkd2FyZUlEGhcuZG1pLkxpc3RFdmVudHNSZXNwb25zZRJeChlVcGRhdGVFdmVudHNDb25maWd1cmF0aW9uEh8uZG1pLkV2ZW50c0NvbmZpZ3VyYXRpb25SZXF1ZXN0GiAuZG1pLkV2ZW50c0NvbmZpZ3VyYXRpb25SZXNwb25zZUI7WjlnaXRodWIuY29tL29wZW5jb3JkL2RldmljZS1tYW5hZ2VtZW50LWludGVyZmFjZS92My9nby9kbWlKwSIKBxIFAACIAQEKCAoBDBIDAAASCggKAQgSAwIAUAoJCgIICxIDAgBQCggKAQISAwMADAoJCgIDABIDBQAbCgkKAgMBEgMGABYKCQoCAwISAwcAKQpFCgIFABIECwAxATI5IE1hbmFnZW1lbnQgb2YgRXZlbnRzIGFuZCBwcm90b3MgZm9y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A2ASGQoMCgUEBwIBAxIDYBwdCgsKBAQHAgISA2EIIgoMCgUEBwICBRIDYQgMCgwKBQQHAgIBEgNhDR0KDAoFBAcCAgMSA2EgIQoKCgIECBIEZQBoAQoKCgMECAESA2UIIwoLCgQECAIAEgNmBBYKDQoFBAgCAAQSBGYEZSUKDAoFBAgCAAYSA2YECgoMCgUECAIAARIDZgsRCgwKBQQIAgADEgNmFBUKCwoEBAgCARIDZwQWCg0KBQQIAgEEEgRnBGYWCgwKBQQIAgEGEgNnBAoKDAoFBAgCAQESA2cLEQoMCgUECAIBAxIDZxQVCgoKAgQJEgRqAG8BCgoKAwQJARIDaggVCgsKBAQJAgASA2sEGQoNCgUECQIABBIEawRqFwoMCgUECQIABhIDawQICgwKBQQJAgABEgNrCRQKDAoFBAkCAAMSA2sXGAolCgQECQIBEgNtBBwaGCB1dWlkIG9mIHRoZSBjb21wb25lbnQNCgoNCgUECQIBBBIEbQRrGQoMCgUECQIBBhIDbQQICgwKBQQJAgEBEgNtCRcKDAoFBAkCAQMSA20aGwoLCgQECQICEgNuBB4KDQoFBAkCAgQSBG4EbRwKDAoFBAkCAgUSA24ECgoMCgUECQICARIDbgsZCgwKBQQJAgIDEgNuHB0KzQEKAgQKEgR1AH0BMsABIFRoZSBFdmVudHMgYXJlIGNvbnZleWVkIHRvIGV4dGVybmFsIHN5c3RlbXMgYnkgc3VibWl0dGluZyB0aGVtIG9uIGEga2Fma2EgYnVzLg0KIFRoZSB0b3BpYyB0byB3aGljaCBhcmUgRXZlbnRzIGFyZSBzdWJtaXR0ZWQgd291bGQgYmUgY29uZmlndXJlZCBhcyBzdGFydHVwDQogY29uZmlndXJhdGlvbiBvZiB0aGUgY29tcG9uZW50cw0KCgoKAwQKARIDdQgNCgsKBAQKAgASA3YEJQoNCgUECgIABBIEdgR1DwoMCgUECgIABhIDdgQRCgwKBQQKAgABEgN2EiAKDAoFBAoCAAMSA3YjJAoLCgQECgIBEgN3BBoKDQoFBAoCAQQSBHcEdiUKDAoFBAoCAQYSA3cEDAoMCgUECgIBARIDdw0VCgwKBQQKAgEDEgN3GBkKCwoEBAoCAhIDeAQsCg0KBQQKAgIEEgR4BHcaCgwKBQQKAgIGEgN4BB0KDAoFBAoCAgESA3geJwoMCgUECgICAxIDeCorCjsKBAQKAgMSA3oELBouIE9wdGlvbmFsIHRocmVzaG9sZCBpbmZvcm1hdGlvbiBmb3IgYW4gZXZlbnQNCgoNCgUECgIDBBIEegR4LAoMCgUECgIDBhIDegQYCgwKBQQKAgMBEgN6GScKDAoFBAoCAwMSA3oqKwo3CgQECgIEEgN8BBgaKiBBbnkgYWRkaXRpb25hbCBpbmZvIHJlZ2FyZGluZyB0aGUgZXZlbnQNCgoNCgUECgIEBBIEfAR6LAoMCgUECgIEBRIDfAQKCgwKBQQKAgQBEgN8CxMKDAoFBAoCBAMSA3wWFwoLCgIGABIFfwCIAQEKCgoDBgABEgN/CCUKQAoEBgACABIEggEEOxoyIExpc3QgdGhlIHN1cHBvcnRlZCBldmVudHMgZm9yIHRoZSBwYXNzZWQgZGV2aWNlDQoKDQoFBgACAAESBIIBCBIKDQoFBgACAAISBIIBEx0KDQoFBgACAAMSBIIBJzkK8QEKBAYAAgESBIcBBGMa4gEgVXBkYXRlcyB0aGUgY29uZmlndXJhdGlvbiBvZiB0aGUgbGlzdCBvZiBldmVudHMgaW4gdGhlIHJlcXVlc3QNCiBUaGUgZGVmYXVsdCBiZWhhdmlvdXIgb2YgdGhlIGRldmljZSBpcyB0byByZXBvcnQgYWxsIHRoZSBzdXBwb3J0ZWQgZXZlbnRzDQogVGhpcyBjb25maWd1cmF0aW9uIGlzIHBlcnNpc3RlZCBhY3Jvc3MgcmVib290cyBvZiB0aGUgZGV2aWNlIG9yIHRoZSBkZXZpY2UgbWFuYWdlcg0KCg0KBQYAAgEBEgSHAQghCg0KBQYAAgECEgSHASI8Cg0KBQYAAgEDEgSHAUZhYgZwcm90bzMKmRwKH2RtaS9od19tYW5hZ2VtZW50X3NlcnZpY2UucHJvdG8SA2RtaRoRZG1pL2NvbW1vbnMucHJvdG8aDGRtaS9ody5wcm90byJGChhQaHlzaWNhbEludmVudG9yeVJlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZCKSAQoZUGh5c2ljYWxJbnZlbnRvcnlSZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSIwoGcmVhc29uGAIgASgOMgsuZG1pLlJlYXNvblIGcmVhc29uEisKCWludmVudG9yeRgDIAEoCzINLmRtaS5IYXJkd2FyZVIJaW52ZW50b3J5IqABChlIV0NvbXBvbmVudEluZm9HZXRSZXF1ZXN0EioKC2RldmljZV91dWlkGAEgASgLMgkuZG1pLlV1aWRSCmRldmljZVV1aWQSMAoOY29tcG9uZW50X3V1aWQYAiABKAsyCS5kbWkuVXVpZFINY29tcG9uZW50VXVpZBIlCg5jb21wb25lbnRfbmFtZRgDIAEoCVINY29tcG9uZW50TmFtZSLUAQoZSFdDb21wb25lbnRJbmZvU2V0UmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEjAKDmNvbXBvbmVudF91dWlkGAIgASgLMgkuZG1pLlV1aWRSDWNvbXBvbmVudFV1aWQSJQoOY29tcG9uZW50X25hbWUYAyABKAlSDWNvbXBvbmVudE5hbWUSMgoHY2hhbmdlcxgEIAEoCzIYLmRtaS5Nb2RpZmlhYmxlQ29tcG9uZW50UgdjaGFuZ2VzImYKGkhXQ29tcG9uZW50SW5mb1NldFJlc3BvbnNlEiMKBnN0YXR1cxgBIAEoDjILLmRtaS5TdGF0dXNSBnN0YXR1cxIjCgZyZWFzb24YAiABKA4yCy5kbWkuUmVhc29uUgZyZWFzb24ikwEKG1N0YXJ0TWFuYWdpbmdEZXZpY2VSZXNwb25zZRIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSIwoGcmVhc29uGAIgASgOMgsuZG1pLlJlYXNvblIGcmVhc29uEioKC2RldmljZV91dWlkGAMgASgLMgkuZG1pLlV1aWRSCmRldmljZVV1aWQy6AIKGU5hdGl2ZUhXTWFuYWdlbWVudFNlcnZpY2USUwoTU3RhcnRNYW5hZ2luZ0RldmljZRIYLmRtaS5Nb2RpZmlhYmxlQ29tcG9uZW50GiAuZG1pLlN0YXJ0TWFuYWdpbmdEZXZpY2VSZXNwb25zZTABElcKFEdldFBoeXNpY2FsSW52ZW50b3J5Eh0uZG1pLlBoeXNpY2FsSW52ZW50b3J5UmVxdWVzdBoeLmRtaS5QaHlz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IAEoDVIMcG9sbEludGVydmFsIjwKDU1ldHJpY3NDb25maWcSKwoHbWV0cmljcxgBIAMoCzIRLmRtaS5NZXRyaWNDb25maWdSB21ldHJpY3MijQEKE0xpc3RNZXRyaWNzUmVzcG9uc2USIwoGc3RhdHVzGAEgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEiMKBnJlYXNvbhgCIAEoDjILLmRtaS5SZWFzb25SBnJlYXNvbhIsCgdtZXRyaWNzGAMgASgLMhIuZG1pLk1ldHJpY3NDb25maWdSB21ldHJpY3MisgEKG01ldHJpY3NDb25maWd1cmF0aW9uUmVxdWVzdBIqCgtkZXZpY2VfdXVpZBgBIAEoCzIJLmRtaS5VdWlkUgpkZXZpY2VVdWlkEi4KB2NoYW5nZXMYAiABKAsyEi5kbWkuTWV0cmljc0NvbmZpZ0gAUgdjaGFuZ2VzEioKEHJlc2V0X3RvX2RlZmF1bHQYAyABKAhIAFIOcmVzZXRUb0RlZmF1bHRCCwoJb3BlcmF0aW9uImgKHE1ldHJpY3NDb25maWd1cmF0aW9uUmVzcG9uc2USIwoGc3RhdHVzGAEgASgOMgsuZG1pLlN0YXR1c1IGc3RhdHVzEiMKBnJlYXNvbhgCIAEoDjILLmRtaS5SZWFzb25SBnJlYXNvbiKVAQoOTWV0cmljTWV0YURhdGESKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBIwCg5jb21wb25lbnRfdXVpZBgCIAEoCzIJLmRtaS5VdWlkUg1jb21wb25lbnRVdWlkEiUKDmNvbXBvbmVudF9uYW1lGAMgASgJUg1jb21wb25lbnROYW1lIqUBCgZNZXRyaWMSLQoJbWV0cmljX2lkGAEgASgOMhAuZG1pLk1ldHJpY05hbWVzUghtZXRyaWNJZBI8Cg9tZXRyaWNfbWV0YWRhdGEYAiABKAsyEy5kbWkuTWV0cmljTWV0YURhdGFSDm1ldHJpY01ldGFkYXRhEi4KBXZhbHVlGAMgASgLMhguZG1pLkNvbXBvbmVudFNlbnNvckRhdGFSBXZhbHVlInMKEEdldE1ldHJpY1JlcXVlc3QSMAoJbWV0YV9kYXRhGAEgASgLMhMuZG1pLk1ldHJpY01ldGFEYXRhUghtZXRhRGF0YRItCgltZXRyaWNfaWQYAiABKA4yEC5kbWkuTWV0cmljTmFtZXNSCG1ldHJpY0lkKtkFCgtNZXRyaWNOYW1lcxIZChVNRVRSSUNfTkFNRV9VTkRFRklORUQQABIUChBNRVRSSUNfRkFOX1NQRUVEEAESEwoPTUVUUklDX0NQVV9URU1QEGQSHwobTUVUUklDX0NQVV9VU0FHRV9QRVJDRU5UQUdFEGUSHAoXTUVUUklDX1RSQU5TQ0VJVkVSX1RFTVAQyAESHwoaTUVUUklDX1RSQU5TQ0VJVkVSX1ZPTFRBR0UQyQESHAoXTUVUUklDX1RSQU5TQ0VJVkVSX0JJQVMQygESIAobTUVUUklDX1RSQU5TQ0VJVkVSX1JYX1BPV0VSEMsBEiAKG01FVFJJQ19UUkFOU0NFSVZFUl9UWF9QT1dFUhDMARIiCh1NRVRSSUNfVFJBTlNDRUlWRVJfV0FWRUxFTkdUSBDNARIVChBNRVRSSUNfRElTS19URU1QEKwCEhkKFE1FVFJJQ19ESVNLX0NBUEFDSVRZEK0CEhYKEU1FVFJJQ19ESVNLX1VTQUdFEK4CEiEKHE1FVFJJQ19ESVNLX1VTQUdFX1BFUkNFTlRBR0UQrwISJgohTUVUUklDX0RJU0tfUkVBRF9XUklURV9QRVJDRU5UQUdFELACEigKI01FVFJJQ19ESVNLX0ZBVUxUWV9DRUxMU19QRVJDRU5UQUdFELECEhQKD01FVFJJQ19SQU1fVEVNUBCQAxIYChNNRVRSSUNfUkFNX0NBUEFDSVRZEJEDEhUKEE1FVFJJQ19SQU1fVVNBR0UQkgMSIAobTUVUUklDX1JBTV9VU0FHRV9QRVJDRU5UQUdFEJMDEhUKEE1FVFJJQ19QT1dFUl9NQVgQ9AMSFwoSTUVUUklDX1BPV0VSX1VTQUdFEPUDEiIKHU1FVFJJQ19QT1dFUl9VU0FHRV9QRVJDRU5UQUdFEPYDEiIKHU1FVFJJQ19JTk5FUl9TVVJST1VORElOR19URU1QENgEMu4BCh5OYXRpdmVNZXRyaWNzTWFuYWdlbWVudFNlcnZpY2USOAoLTGlzdE1ldHJpY3MSDy5kbWkuSGFyZHdhcmVJRBoYLmRtaS5MaXN0TWV0cmljc1Jlc3BvbnNlEmEKGlVwZGF0ZU1ldHJpY3NDb25maWd1cmF0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ewgRCgwKBQYAAgICEgN7EiIKDAoFBgACAgMSA3ssMmIGcHJvdG8zCpYXChJkbWkvc3dfaW1hZ2UucHJvdG8SA2RtaRoRZG1pL2NvbW1vbnMucHJvdG8iRwoMSW1hZ2VWZXJzaW9uEh0KCmltYWdlX25hbWUYASABKAlSCWltYWdlTmFtZRIYCgd2ZXJzaW9uGAIgASgJUgd2ZXJzaW9uIqgBChBJbWFnZUluZm9ybWF0aW9uEicKBWltYWdlGAEgASgLMhEuZG1pLkltYWdlVmVyc2lvblIFaW1hZ2USMAoUaW1hZ2VfaW5zdGFsbF9zY3JpcHQYAiABKAlSEmltYWdlSW5zdGFsbFNjcmlwdBIbCglpbWFnZV91cmwYAyABKAlSCGltYWdlVXJsEhwKCXNoYTI1NnN1bRgFIAEoCVIJc2hhMjU2c3VtIp0ECgtJbWFnZVN0YXR1cxIjCgZzdGF0dXMYASABKA4yCy5kbWkuU3RhdHVzUgZzdGF0dXMSLwoGcmVhc29uGAIgASgOMhcuZG1pLkltYWdlU3RhdHVzLlJlYXNvblIGcmVhc29uEjEKBXN0YXRlGAMgASgOMhsuZG1pLkltYWdlU3RhdHVzLkltYWdlU3RhdGVSBXN0YXRlEiAKC2Rlc2NyaXB0aW9uGAQgASgJUgtkZXNjcmlwdGlvbiLPAQoKSW1hZ2VTdGF0ZRITCg9VTkRFRklORURfU1RBVEUQABIRCg1DT1BZSU5HX0lNQUdFEAESFAoQSU5TVEFMTElOR19JTUFHRRACEhMKD0NPTU1JVElOR19JTUFHRRADEhQKEFJFQk9PVElOR19ERVZJQ0UQBBIUChBVUEdSQURFX0NPTVBMRVRFEAUSEgoOVVBHUkFERV9GQUlMRUQQBhIXChNBQ1RJVkFUSU9OX0NPTVBMRVRFEAcSFQoRQUNUSVZBVElPTl9GQUlMRUQQCCKQAQoGUmVhc29uEhQKEFVOREVGSU5FRF9SRUFET04QABIUChBFUlJPUl9JTl9SRVFVRVNUEAESEgoOSU5URVJOQUxfRVJST1IQAhIZChVERVZJQ0VfSU5fV1JPTkdfU1RBVEUQAxIRCg1JTlZBTElEX0lNQUdFEAQSGAoUV1JPTkdfSU1BR0VfQ0hFQ0tTVU0QBUI7WjlnaXRodWIuY29tL29wZW5jb3JkL2Rl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BAICAQQSBDAELxcKDAoFBAICAQYSAzAECgoMCgUEAgIBARIDMAsRCgwKBQQCAgEDEgMwFBUKCwoEBAICAhIDMQQZCg0KBQQCAgIEEgQxBDAWCgwKBQQCAgIGEgMxBA4KDAoFBAICAgESAzEPFAoMCgUEAgICAxIDMRcYCnYKBAQCAgMSAzMEGxppIGRlc2NyaXB0aW9uIGNvbnRhaW5zIG1vcmUgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlIHByb2NlZHVyZSBhbmQgaXMgZGV2aWNlIGRlcGVuZGFudA0KCg0KBQQCAgMEEgQzBDEZCgwKBQQCAgMFEgMzBAoKDAoFBAICAwESAzMLFgoMCgUEAgIDAxIDMxkaYgZwcm90bzMKhBIKH2RtaS9zd19tYW5hZ2VtZW50X3NlcnZpY2UucHJvdG8SA2RtaRoMZG1pL2h3LnByb3RvGhJkbWkvc3dfaW1hZ2UucHJvdG8ilgEKGlNvZnR3YXJlVmVyc2lvbkluZm9ybWF0aW9uEjoKD2FjdGl2ZV92ZXJzaW9ucxgBIAMoCzIRLmRtaS5JbWFnZVZlcnNpb25SDmFjdGl2ZVZlcnNpb25zEjwKEHN0YW5kYnlfdmVyc2lvbnMYAiADKAsyES5kbWkuSW1hZ2VWZXJzaW9uUg9zdGFuZGJ5VmVyc2lvbnMieAoURG93bmxvYWRJbWFnZVJlcXVlc3QSKgoLZGV2aWNlX3V1aWQYASABKAsyCS5kbWkuVXVpZFIKZGV2aWNlVXVpZBI0CgppbWFnZV9pbmZvGAIgASgLMhUuZG1pLkltYWdlSW5mb3JtYXRpb25SCWltYWdlSW5mbzKcAgofTmF0aXZlU29mdHdhcmVNYW5hZ2VtZW50U2VydmljZRJGChJHZXRTb2Z0d2FyZVZlcnNpb24SDy5kbWkuSGFyZHdhcmVJRBofLmRtaS5Tb2Z0d2FyZVZlcnNpb25JbmZvcm1hdGlvbhI+Cg1Eb3dubG9hZEltYWdlEhkuZG1pLkRvd25sb2FkSW1hZ2VSZXF1ZXN0GhAuZG1pLkltYWdlU3RhdHVzMAESNAoNQWN0aXZhdGVJbWFnZRIPLmRtaS5IYXJkd2FyZUlEGhAuZG1pLkltYWdlU3RhdHVzMAESOwoUUmV2ZXJ0VG9TdGFu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