Skip to content

Latest commit

 

History

History
1 lines (1 loc) · 12.6 KB

cl6vmq5180m9jgenv2i8adh7h.md

File metadata and controls

1 lines (1 loc) · 12.6 KB

IyMgQ29tcHV0ZXIgTmV0d29ya2luZwoKIyMgMS4gSW50cm9kdWN0aW9uIHRvIE5ldHdvcmtpbmcg8J+bsAoKQSBjb21wdXRlciBuZXR3b3JrIGlzIGEgc3lzdGVtIHRoYXQgY29ubmVjdHMgbnVtZXJvdXMgaW5kZXBlbmRlbnQgY29tcHV0ZXJzIGluIG9yZGVyIHRvIHNoYXJlIGluZm9ybWF0aW9uIChkYXRhKWFuZCByZXNvdXJjZXMuIFRoZSBpbnRlZ3JhdGlvbiBvZiBjb21wdXRlcnMgYW5kIG90aGVyIGRpZmZlcmVudCBkZXZpY2VzIGFsbG93cyB1c2VycyB0byBjb21tdW5pY2F0ZSBtb3JlIGVhc2lseS4gQ29tcHV0ZXIgbmV0d29ya2luZyByZWZlcnMgdG8gaW50ZXJjb25uZWN0ZWQgY29tcHV0aW5nIGRldmljZXMgdGhhdCBjYW4gZXhjaGFuZ2UgZGF0YSBhbmQgc2hhcmUgcmVzb3VyY2VzIHdpdGggZWFjaCBvdGhlci5FYWNoIGRldmljZSBpbiB0aGUgbmV0d29yayBpcyBjYWxsZWQgYSBub2RlIHdoaWNoIGlzIGNvbm5lY3RlZCB0byBvdGhlciBub2RlcyB0aHJvdWdoIHdpcmVkIG9yIHdpcmVsZXNzIG1lZGlhLgoKCiFbMV9qdlQ1UkVBSktNM1lKaUFwdVJ2Z1hnLmdpZl0oaHR0cHM6Ly9jZG4uaGFzaG5vZGUuY29tL3Jlcy9oYXNobm9kZS9pbWFnZS91cGxvYWQvdjE2NjA1ODAxMTg0NjMvbURRZmJVZTdWLmdpZiBhbGlnbj0ibGVmdCIpCgpJbiBvdGhlciB3b3JkcyBjb21wdXRlciBuZXR3b3JrIGlzIGEgZ3JvdXAgb2YgY29tcHV0ZXJzIHRoYXQgaGFzIHRoZSBwb3RlbnRpYWwgdG8gdHJhbnNtaXQsIHJlY2VpdmUgYW5kIGV4Y2hhbmdlIHZvaWNlLCBkYXRhLCBhbmQgdmlkZW8gdHJhZmZpYy4gQSBuZXR3b3JrIGNvbm5lY3Rpb24gY2FuIGJlIHNldCB1cCB3aXRoIHRoZSBoZWxwIG9mIGVpdGhlciBjYWJsZSBvciB3aXJlbGVzcyBtZWRpYS4gSW4gbW9kZXJuIHRpbWVzLCBjb21wdXRlciBuZXR3b3JrcyBhcmUgdmVyeSBpbXBvcnRhbnQgYXMgaW5mb3JtYXRpb24gdGVjaG5vbG9neSBpcyBpbmNyZWFzaW5nIHJhcGlkbHkgYWxsIG92ZXIgdGhlIHdvcmxkLiBUaGUgbmV0d29yayBhbmQgZGF0YSBjb21tdW5pY2F0aW9uIGFyZSB0aGUgZXNzZW50aWFsIGZhY3RvcnMgdG8gcmlzZSBpbmZvcm1hdGlvbiB0ZWNobm9sb2d5IGluIHRoZSB3b3JsZCBhcyB0ZWNobm9sb2d5J3MgYWR2YW5jZW1lbnQgaXMgb24gdGhlIHN5c3RlbSwgaW5jbHVkaW5nIHRoZSBnYWRnZXRzLiBBUlBBTkVUIGJlZ2FuIHRoZSBuZXR3b3JraW5nIGxvbmcgYWdvLgoKIyMgMi4gSG93IGRhdGEgdHJhbnNtaXQgZnJvbSBzb3VyY2UgdG8gZGVzdGluYXRpb24g8J+TsgoKCgpTbyBob3cgd2UgYWNjZXNzIGRhdGEgZnJvbSBhIHNwZWNpZmljIHNlcnZlci4gSW4gb3RoZXIgd29yZHMgaG93IGEgZGF0YSBtb3ZlcyBmcm9tIHNvdXJjZSB0byBkZXN0aW5hdGlvbiAhIFRoaXMgcGFydGljdWxhciB3b3JrIGlzIGRvbmUgYnkgb3B0aWNhbCBmaWJlciBuZXR3b3Jrcy4KCgpTdXBwb3NlIG91ciBwaG9uZSBpcyBjb25uZWN0ZWQgdG8gYSBjZWxsdWxhciB0b3dlciBvciByb3V0ZXIgYnV0IGl0IGlzIHNvbWVob3cgY29ubmVjdGVkIHZpYSBhIG9wdGljYWwgZmliZXIgY2FibGVzLiBBbGwgdGhlIGRhdGEgd2hpY2ggd2Ugd2FudCB0byBhY2Nlc3MgdmlhIGludGVybmV0IGlzIHN0b3JlIGluIGEgZHJpdmUgb2YgYSBzZXJ2ZXIuIE5vdyB0aGUgbWFpbiB0aGluZyBpcyB0aGF0IGhvdyB0aGlzIHN0b3JlZCBkYXRhIHRyYW5zZmVyIGZyb20gbXkgZGV2aWNlIHZpYSBpbnRlcm5ldCBhbmQgZ2VvZ3JhcGhpY2FsIHNpdHVhdGlvbi4KCgpFdmVyeSBkZXZpY2Ugd2hpY2ggaXMgY29ubmVjdGVkIGJ5IGludGVybmV0IGhhcyBhIHBhcnRpY3VsYXIgSVAgYWRkcmVzcyAoaW50ZXJuZXQgcHJvdG9jb2wpLiBJcCBhZGRyZXNzIGlzIGEgc3RyaW5nIG9mIG51bWJlcnMgYnkgd2hpY2ggYSBkZXZpY2UgaWRlbnRpZnkgdW5pcXVlbHkuIFlvdXIgaW50ZXJuZXQgc2VydmljZSBwcm92aWRlciBkZWNpZGUgdGhlIElQIGFkZHJlc3Mgb2YgeW91ciBkZXZpY2Ugc28gdGhhdCB5b3UgY2FuIGFibGUgdG8gc2VlIHlvdXIgSVAgYWRkcmVzcyBpbiB5b3VyIHNwZWNpZmljIGRldmljZS4KCiFbY29tcF8xNF8xLmdpZl0oaHR0cHM6Ly9jZG4uaGFzaG5vZGUuY29tL3Jlcy9oYXNobm9kZS9pbWFnZS91cGxvYWQvdjE2NjA1Mzg2MjAyMzkvR004dm9UQWR3LmdpZiBhbGlnbj0ibGVmdCIpCgpJbiBvdGhlciBlbmQgdGhlIHNlcnZlciBhbHNvIGhhdmUgSVAgYWRkcmVzcy4gd2hlbiB3ZSBzZWFyY2ggZm9yIHdlYnNpdGVzIGJhc2ljYWxseSB3ZSBhY2Nlc3MgdGhlIElQIGFkZHJlc3Mgb2YgYSBzcGVjaWZpYyB3ZWJzaXRlIHZpYSBkb21haW4gbmFtZSwgYmVjYXVzZSB3ZSBjYW4ndCByZW1lbWJlciB0aGUgSVAgYWRkcmVzcyBvZiBhbGwgd2Vic2l0ZSBzbywgaW5zdGVhZCBvZiB3ZSB1c2UgZG9tYWluIG5hbWVzIGZvciBleGFtcGxlIHlvdXR1YmUuY29tLCBmYWNlYm9vay5jb20gZXRjLiBJbiBDbGludCBzaXRlIHRoZSBpbnRlcm5ldCBzZXJ2aWNlIHByb3ZpZGVyIG1hbmFnZSBvdXIgRE5TIHNlcnZpY2VzLiBJbiBzaW1wbGUgd29yZHMgd2hlbiB5b3Ugc2VhcmNoIGZvciBkb21haW4gbmFtZSB0aGUgYnJvd3NlciBzZW5kIHJlcXVlc3QgdG8gdGhlIEROUyBzZXJ2ZXIgdG8gZ2V0IHRoZSBjb3JyZXNwb25kaW5nIElQIGFkZHJlc3MgYWZ0ZXIgZ2V0dGluZyB0aGUgSVAgYWRkcmVzcyB0aGUgYnJvd3NlciBmb3J3YXJkIHRoZSByZXF1ZXN0IHRvIGRhdGEgY2VudGVyIG1vc3Qgc3BlY2lmaWNhbGx5IGEgcmVzcGVjdGl2ZSBzZXJ2ZXIuIE9uY2UgdGhlIHJlcXVlc3QgZ2V0cyBhY2Nlc3MgYSBwYXJ0aWN1bGFyIHdlYnNpdGUgdGhlIHNlcnZlciBzZW5kIHRoZSBkYXRhIGFzIHdlbGwgdmlhIGRpZ2l0YWwgZm9ybWF0IHdpdGggb3B0aWNhbCBmaWJlciBjYWJsZXMuIEl0J3MgYmFzaWNhbGx5IHRoZSBsaWdodCBwdWxzZXMgdGhhdCB0cmF2ZWxzIG1pbGxpb25zIG9mIGRpc3RhbmNlIHRvIHJlYWNoIHRoZWlyIGRlc3RpbmF0aW9uLiBJdCBjYW4gZWFzaWx5IHRyYXZlbCB0aHJvdWdoIGhpbGxzIGFuZCB1bmRlcndhdGVyIHRoYXQgaXMgbWFpbnRhaW4gdmlhIG1hbnkgb3JnYW5pc2F0aW9uLiBBbmQgZmluYWxseSBkYXRhIHJlYWNoIHRvIHRoZSByb3V0ZXIgYW5kIGJ5IEV0aGVybmV0IGNhYmxlIGl0IHNlcnZlIGluIG91ciBsb2NhbCBjb21wdXRlci4gSWYgeW91IHVzZSBwaG9uZSB0b3dlciBkYXRhIHRoZSBjb25jZXB0IGlzIHNhbWUgdGhlIGRhdGEgZ2VuZXJhbGx5IHJlYWNoIHRvIGNlbGwgdG93ZXIgYW5kIHZpYSBzaWduYWxzIGl0IGlzIHJlYWNoIHRvIG91ciBtb2JpbGUgcGhvbmUuCgoKIVtoaGhoaGguUE5HXShodHRwczovL2Nkbi5oYXNobm9kZS5jb20vcmVzL2hhc2hub2RlL2ltYWdlL3VwbG9hZC92MTY2MDYyMDE4MDgzOS9tRWF5bE1xMGkuUE5HIGFsaWduPSJsZWZ0IikKCiMjIDMuIFdoYXQgaXMgY2xpZW50ICYgc2VydmVyIPCflqUKCkEgY2xpZW50IGlzIGEgY29tcHV0ZXIgb3IgYSBwcm9ncmFtIHRoYXQsIGFzIHBhcnQgb2YgaXRzIG9wZXJhdGlvbiwgcmVsaWVzIG9uIHNlbmRpbmcgYSByZXF1ZXN0IHRvIGFub3RoZXIgcHJvZ3JhbSBvciBhIGNvbXB1dGVyIGhhcmR3YXJlIG9yIHNvZnR3YXJlIHRoYXQgYWNjZXNzZXMgYSBzZXJ2aWNlIG1hZGUgYXZhaWxhYmxlIGJ5IGEgc2VydmVyICh3aGljaCBtYXkgb3IgbWF5IG5vdCBiZSBsb2NhdGVkIG9uIGFub3RoZXIgY29tcHV0ZXIpLiBJbiBzaW1wbGUgd29yZHMgYSBjbGllbnQgaXMgYSBwcm9ncmFtIHRoYXQgcnVucyBvbiB0aGUgbG9jYWwgbWFjaGluZSByZXF1ZXN0aW5nIHNlcnZpY2UgZnJvbSB0aGUgc2VydmVyLiBBIGNsaWVudCBwcm9ncmFtIGlzIGEgZmluaXRlIHByb2dyYW0gbWVhbnMgdGhhdCB0aGUgc2VydmljZSBzdGFydGVkIGJ5IHRoZSB1c2VyIGFuZCB0ZXJtaW5hdGVzIHdoZW4gdGhlIHNlcnZpY2UgaXMgY29tcGxldGVkLgoKCiFbT0NJXzEyODB4NzIwcHguZ2lmXShodHRwczovL2Nkbi5oYXNobm9kZS5jb20vcmVzL2hhc2hub2RlL2ltYWdlL3VwbG9hZC92MTY2MDU3ODU1OTQ2OS9Qb0NqRC03S00uZ2lmIGFsaWduPSJsZWZ0IikKCkluIGNvbXB1dGluZywgYSBzZXJ2ZXIgaXMgYSBjb21wdXRlciBwcm9ncmFtIG9yIGEgZGV2aWNlIHRoYXQgcHJvdmlkZXMgZnVuY3Rpb25hbGl0eSBmb3IgY2FsbGVkIGNsaWVudHMgd2hpY2ggYXJlIG90aGVyIHByb2dyYW1zIG9yIGRldmljZXMuIFRoaXMgYXJjaGl0ZWN0dXJlIGlzIGNhbGxlZCB0aGUgY2xpZW504oCTc2VydmVyIG1vZGVsLiBBIHNpbmdsZSBvdmVyYWxsIGNvbXB1dGF0aW9uIGlzIGRpc3RyaWJ1dGVkIGFjcm9zcyBtdWx0aXBsZSBwcm9jZXNzZXMgb3IgZGV2aWNlcy4gU2VydmVycyBjYW4gcHJvdmlkZSB2YXJpb3VzIGZ1bmN0aW9uYWxpdGllcyBjYWxsZWQgc2VydmljZXMuIFRoZXNlIHNlcnZpY2VzIGluY2x1ZGUgc2hhcmluZyBkYXRhIG9yIHJlc291cmNlcyBhbW9uZyBtdWx0aXBsZSBjbGllbnRzLCBvciBwZXJmb3JtaW5nIGNvbXB1dGF0aW9uIGZvciBhIGNsaWVudC4gSW4gc2ltcGxlIHdvcmRzIHNlcnZlcnMgcHJvdmlkZSBzZXJ2aWNlcyB0aGF0IGlzIHJlcXVlc3QgYnkgdGhlIGNsaWVudCB3aXRoIG93biByZXNvdXJjZXMgb3IgZXh0cmFjdCBmcm9tIG90aGVyIHJlc291cmNlcy4KCiMjIDQuIFdoYXQgYXJlIG5ldHdvcmsgc2VydmljZSBwcm92aWRlcnMg8J+ToQoKCiFbaW50ZXJuZXQtc2VydmljZS1wcm92aWRlci5wbmddKGh0dHBzOi8vY2RuLmhhc2hub2RlLmNvbS9yZXMvaGFzaG5vZGUvaW1hZ2UvdXBsb2FkL3YxNjYwNjIwNjM3NzQwL2FYNkR3a2tqTy5wbmcgYWxpZ249ImxlZnQiKQoKSW4gY29tcHV0aW5nLCBhIG5ldHdvcmsgc2VydmljZSBwcm92aWRlciAoTlNQKSBpcyBhIGNvbXBhbnkgdGhhdCBwcm92aWRlcyBuZXR3b3JrIGNvbm5lY3Rpdml0eSB0byBjb21tZXJjaWFsIEludGVybmV0IHNlcnZpY2UgcHJvdmlkZXJzIChJU1ApIGFuZCBsYXJnZSBvcmdhbml6YXRpb25zLiBUaGUgTlNQIHByb3ZpZGVzIHRoZSBiYWNrYm9uZSBvZiB0aGUgbGFyZ2UgbmV0d29yayBjbG91ZHMgdXNlZCBhY3Jvc3MgdGhlIHdvcmxkLiBUaGlzIGJhY2tib25lIG1ha2VzIGl0IHBvc3NpYmxlIGZvciBhbiBpbmRpdmlkdWFsIHRvIGNvbm5lY3QgdG8gYSBsb2NhbCBJU1AgYW5kIGFsc28gY29tbXVuaWNhdGUgdG8gZ3JvdXBzIG9uIG90aGVyIElTUHMgdGhyb3VnaG91dCB0aGUgd29ybGQuCgojIyA1LiBOZXR3b3JrIGRldmljZXMg8J+boAoKCk5ldHdvcmtpbmcgZGV2aWNlcyBhcmUgaW1wb3J0YW50IGFuZCBuZWNlc3NhcnkgYmVjYXVzZSB0byBjb25uZWN0IHdpdGggbG9jYWwgZGV2aWNlcywgcmV0cmlldmUgYW5kIG1hbmFnZSBkYXRhIGV0Yy4gc29tZSBhcmUgdGhvc2UgbWVudGlvbiBiZWxvdy4uCgoqKkh1YiA6KioKSHVicyBjb25uZWN0IG11bHRpcGxlIGNvbXB1dGVyIG5ldHdvcmtpbmcgZGV2aWNlcyB0b2dldGhlci4gQSBodWIgYWxzbyBhY3RzIGFzIGEgcmVwZWF0ZXIgaW4gdGhhdCBpdCBhbXBsaWZpZXMgc2lnbmFscyB0aGF0IGRldGVyaW9yYXRlIGFmdGVyIHRyYXZlbGluZyBsb25nIGRpc3RhbmNlcyBvdmVyIGNvbm5lY3RpbmcgY2FibGVzLiBBIGh1YiBpcyB0aGUgc2ltcGxlc3QgaW4gdGhlIGZhbWlseSBvZiBuZXR3b3JrIGNvbm5lY3RpbmcgZGV2aWNlcyBiZWNhdXNlIGl0IGNvbm5lY3RzIExBTiBjb21wb25lbnRzIHdpdGggaWRlbnRpY2FsIHByb3RvY29scy4KCgohW25ldHdvcmstaHViLXdpdGgtY2FibGUuanBnXShodHRwczovL2Nkbi5oYXNobm9kZS5jb20vcmVzL2hhc2hub2RlL2ltYWdlL3VwbG9hZC92MTY2MDU3NzE0NjUwNy9CRlBNSXhNdkYuanBnIGFsaWduPSJsZWZ0IikKCgoqKlN3aXRjaCA6KioKU3dpdGNoZXMgZ2VuZXJhbGx5IGhhdmUgYSBtb3JlIGludGVsbGlnZW50IHJvbGUgdGhhbiBodWJzLiBBIHN3aXRjaCBpcyBhIG11bHRpIHBvcnQgZGV2aWNlIHRoYXQgaW1wcm92ZXMgbmV0d29yayBlZmZpY2llbmN5LiBUaGUgc3dpdGNoIG1haW50YWlucyBsaW1pdGVkIHJvdXRpbmcgaW5mb3JtYXRpb24gYWJvdXQgbm9kZXMgaW4gdGhlIGludGVybmFsIG5ldHdvcmssIGFuZCBpdCBhbGxvd3MgY29ubmVjdGlvbnMgdG8gc3lzdGVtcyBsaWtlIGh1YnMgb3Igcm91dGVycy4gU3RyYW5kcyBvZiBMQU5zIGFyZSB1c3VhbGx5IGNvbm5lY3RlZCB1c2luZyBzd2l0Y2hlcy4gR2VuZXJhbGx5LCBzd2l0Y2hlcyBjYW4gcmVhZCB0aGUgaGFyZHdhcmUgYWRkcmVzc2VzIG9mIGluY29taW5nIHBhY2tldHMgdG8gdHJhbnNtaXQgdGhlbSB0byB0aGUgYXBwcm9wcmlhdGUgZGVzdGluYXRpb24uCgoKIVsxLTUwMHg1MDAuanBnXShodHRwczovL2Nkbi5oYXNobm9kZS5jb20vcmVzL2hhc2hub2RlL2ltYWdlL3VwbG9hZC92MTY2MDU3NzE5OTQ0OC9iWlJSUzJJdkMuanBnIGFsaWduPSJsZWZ0IikKCioqUm91dGVyIDoqKgoKVGhlIHJvdXRlciBpcyBhIHBoeXNpY2FsIG9yIHZpcnR1YWwgaW50ZXIgbmV0d29ya2luZyBkZXZpY2UgdGhhdCBpcyBkZXNpZ25lZCB0byByZWNlaXZlLCBhbmFseXplLCBhbmQgZm9yd2FyZCBkYXRhIHBhY2tldHMgYmV0d2VlbiBjb21wdXRlciBuZXR3b3Jrcy4gQSByb3V0ZXIgZXhhbWluZXMgYSBkZXN0aW5hdGlvbiBJUCBhZGRyZXNzIG9mIGEgZ2l2ZW4gZGF0YSBwYWNrZXQsIGFuZCBpdCB1c2VzIHRoZSBoZWFkZXJzIGFuZCBmb3J3YXJkaW5nIHRhYmxlcyB0byBkZWNpZGUgdGhlIGJlc3Qgd2F5IHRvIHRyYW5zZmVyIHRoZSBwYWNrZXRzLiBUaGVyZSBhcmUgc29tZSBwb3B1bGFyIGNvbXBhbmllcyB0aGF0IGRldmVsb3Agcm91dGVyczsgc3VjaCBhcmUgQ2lzY28sIEhQLCBELUxpbmsgZXRjLiAKCgohW3JvdXRlci5wbmddKGh0dHBzOi8vY2RuLmhhc2hub2RlLmNvbS9yZXMvaGFzaG5vZGUvaW1hZ2UvdXBsb2FkL3YxNjYwNTc3MjE3NjQ1L0lqSWRrYlRkei5wbmcgYWxpZ249ImxlZnQiKQoKKipCcmlkZ2UgOioqCkJyaWRnZXMgYXJlIHVzZWQgdG8gY29ubmVjdCB0d28gb3IgbW9yZSBob3N0cyBvciBuZXR3b3JrIHNlZ21lbnRzIHRvZ2V0aGVyLiBUaGUgYmFzaWMgcm9sZSBvZiBicmlkZ2VzIGluIG5ldHdvcmsgYXJjaGl0ZWN0dXJlIGlzIHN0b3JpbmcgYW5kIGZvcndhcmRpbmcgZnJhbWVzIGJldHdlZW4gdGhlIGRpZmZlcmVudCBzZWdtZW50cyB0aGF0IHRoZSBicmlkZ2UgY29ubmVjdHMuIFRoZXkgdXNlIGhhcmR3YXJlIE1lZGlhIEFjY2VzcyBDb250cm9sIChNQUMpIGFkZHJlc3NlcyBmb3IgdHJhbnNmZXJyaW5nIGZyYW1lcy4gQnJpZGdlcyBjYW4gYWxzbyBiZSB1c2VkIHRvIGNvbm5lY3QgdHdvIHBoeXNpY2FsIExBTnMgaW50byBhIGxhcmdlciBsb2dpY2FsIExBTi4KCgohW2JyaWRnZTEuanBnXShodHRwczovL2Nkbi5oYXNobm9kZS5jb20vcmVzL2hhc2hub2RlL2ltYWdlL3VwbG9hZC92MTY2MDU3NzIyNzQ1NS84czh2ZVNZUHEuanBnIGFsaWduPSJsZWZ0IikKCioqR2F0ZXdheSA6KioKIEdhdGV3YXlzIHByb3ZpZGUgdHJhbnNsYXRpb24gYmV0d2VlbiBuZXR3b3JraW5nIHRlY2hub2xvZ2llcyBzdWNoIGFzIE9wZW4gU3lzdGVtIEludGVyY29ubmVjdGlvbiAoT1NJKSBhbmQgVHJhbnNtaXNzaW9uIENvbnRyb2wgUHJvdG9jb2wvSW50ZXJuZXQgUHJvdG9jb2wgKFRDUC9JUCkuIEJlY2F1c2Ugb2YgdGhpcywgZ2F0ZXdheXMgY29ubmVjdCB0d28gb3IgbW9yZSBhdXRvbm9tb3VzIG5ldHdvcmtzLCBlYWNoIHdpdGggaXRzIG93biByb3V0aW5nIGFsZ29yaXRobXMsIHByb3RvY29scywgdG9wb2xvZ3ksIGRvbWFpbiBuYW1lIHNlcnZpY2UsIGFuZCBuZXR3b3JrIGFkbWluaXN0cmF0aW9uIHByb2NlZHVyZXMgYW5kIHBvbGljaWVzLgoKCiFbbmV0d29yay1nYXRld2F5LTUwMHg1MDAuanBnXShodHRwczovL2Nkbi5oYXNobm9kZS5jb20vcmVzL2hhc2hub2RlL2ltYWdlL3VwbG9hZC92MTY2MDU3NzI0ODc0MC9BT0ZTSWdwQmkuanBnIGFsaWduPSJsZWZ0IikKCioqTW9kZW0gOioqCk1vZGVtcyAobW9kdWxhdG9ycy1kZW1vZHVsYXRvcnMpIGFyZSB1c2VkIHRvIHRyYW5zbWl0IGRpZ2l0YWwgc2lnbmFscyBvdmVyIGFuYWxvZyB0ZWxlcGhvbmUgbGluZXMuIFRodXMsIGRpZ2l0YWwgc2lnbmFscyBhcmUgY29udmVydGVkIGJ5IHRoZSBtb2RlbSBpbnRvIGFuYWxvZyBzaWduYWxzIG9mIGRpZmZlcmVudCBmcmVxdWVuY2llcyBhbmQgdHJhbnNtaXR0ZWQgdG8gYSBtb2RlbSBhdCB0aGUgcmVjZWl2aW5nIGxvY2F0aW9uLiBUaGUgcmVjZWl2aW5nIG1vZGVtIHBlcmZvcm1zIHRoZSByZXZlcnNlIHRyYW5zZm9ybWF0aW9uIGFuZCBwcm92aWRlcyBhIGRpZ2l0YWwgb3V0cHV0IHRvIGEgZGV2aWNlIGNvbm5lY3RlZCB0byBhIG1vZGVtLCB1c3VhbGx5IGEgY29tcHV0ZXIuIFRoZSBkaWdpdGFsIGRhdGEgaXMgdXN1YWxseSB0cmFuc2ZlcnJlZCB0byBvciBmcm9tIHRoZSBtb2RlbSBvdmVyIGEgc2VyaWFsIGxpbmUgdGhyb3VnaCBhbiBpbmR1c3RyeSBzdGFuZGFyZCBpbnRlcmZhY2UsIFJTLTIzMi4gTWFueSB0ZWxlcGhvbmUgY29tcGFuaWVzIG9mZmVyIERTTCBzZXJ2aWNlcywgYW5kIG1hbnkgY2FibGUgb3BlcmF0b3JzICB1c2UgbW9kZW1zIGFzIGVuZCB0ZXJtaW5hbHMgZm9yIGlkZW50aWZpY2F0aW9uIGFuZCByZWNvZ25pdGlvbiBvZiBob21lIGFuZCBwZXJzb25hbCB1c2Vycy4gTW9kZW1zIHdvcmsgb24gYm90aCB0aGUgUGh5c2ljYWwgYW5kIERhdGEgTGluayBsYXllcnMuCgoKIVtzbmcucG5nXShodHRwczovL2Nkbi5oYXNobm9kZS5jb20vcmVzL2hhc2hub2RlL2ltYWdlL3VwbG9hZC92MTY2MDU3NzI4MjUyNy8wdlpXR0l0bjEucG5nIGFsaWduPSJsZWZ0IikKCioqUmVwZWF0ZXIgOioqCkEgcmVwZWF0ZXIgaXMgYW4gZWxlY3Ryb25pYyBkZXZpY2UgdGhhdCBhbXBsaWZpZXMgdGhlIHNpZ25hbCBpdCByZWNlaXZlcy4gWW91IGNhbiB0aGluayBvZiByZXBlYXRlciBhcyBhIGRldmljZSB3aGljaCByZWNlaXZlcyBhIHNpZ25hbCBhbmQgdHJhbnNtaXRzIGl0IGF0IGEgaGlnaGVyIGxldmVsIG9yIGhpZ2hlciBwb3dlciBzbyB0aGF0IHRoZSBzaWduYWwgY2FuIGNvdmVyIGxvbmdlciBkaXN0YW5jZXMsIG1vcmUgdGhhbiAxMDAgbWV0ZXJzIGZvciBzdGFuZGFyZCBMQU4gY2FibGVzLiBSZXBlYXRlcnMgd29yayBvbiB0aGUgUGh5c2ljYWwgbGF5ZXIuCgoKIVtOZXR3b3JrLVJlcGVhdGVyLmpwZ10oaHR0cHM6Ly9jZG4uaGFzaG5vZGUuY29tL3Jlcy9oYXNobm9kZS9pbWFnZS91cGxvYWQvdjE2NjA1NzczMDA2NTkvNThEenRlVG5KLmpwZyBhbGlnbj0ibGVmdCIpCgojIyA2LiBQb3B1bGFyIHJlZmVyZW5jZSDwn5qpCgoKaHR0cHM6Ly95b3V0dS5iZS9JUHZZalhDc1RnOAoKaHR0cHM6Ly95b3V0dS5iZS9YWm1HR0FiSHFhMAoKVGhhbmtzIGZvciByZWFkaW5nLiBJIGhvcGUgeW91IHdpbGwgdHJ5IGl0IG91dCBhbmQgbGVhcm4gc29tZXRoaW5nIG5ldy4gQWxzbyBpbmNhc2UgaSBoYXZlIG1pc3NlZCBzb21ldGhpbmcgZmVlbCBmcmVlIHRvIHNoYXJlIHlvdXIgdGhvdWdodHMgYW5kIGZlZWRiYWNrLiAKClRvIHJlYWNoIG91dCB0byBtZSDwn5GACgpbVHdpdHRlcl0oaHR0cHM6Ly90d2l0dGVyLmNvbS9BRElUWUE5MDU0NjE3MCkg8J+WsQoKW0xpbmtlZEluXShodHRwczovL3d3dy5saW5rZWRpbi5jb20vaW4vYWRpdHlhLWRhcy03YjIyNzYyMDIpIPCflrEKCltHaXRodWJdKGh0dHBzOi8vZ2l0aHViLmNvbS9BRElUWUFEQVMxOTk5KSDwn5ax