ClNsaWNlQ09NIGFkYXB0ZXIgZmVsaGFzem5hbG9pIGRva3VtZW50YWNpb2phIC0gMC41MSB2ZXJ6aW9ob3oKCkJhcnTzayBJc3R24W4gPGJhcnRva2lAaXRjLmh1PgpVdG9sc28gbW9kb3NpdGFzOiBXZWQgQXVnIDI5IDE3OjI2OjU4IENFU1QgMjAwMQoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCkhhc3puYWxhdGE6CgpGb3JkaXRhczoKCkNvZGUgbWF0dXJpdHkgbGV2ZWwgb3B0aW9ucwoJWypdIFByb21wdCBmb3IgZGV2ZWxvcG1lbnQgYW5kL29yIGluY29tcGxldGUgY29kZS9kcml2ZXJzCgpOZXR3b3JrIGRldmljZSBzdXBwb3J0CglXYW4gaW50ZXJmYWNlcwoJCTxNPiBNdWx0aUdhdGUgKENPTVgpIHN5bmNocm9ub3VzCgkJCTxNPiBTdXBwb3J0IGZvciBNVU5JQ0ggYmFzZWQgYm9hcmRzOiBTbGljZUNPTSwgUENJQ09NIChORVcpCgkJCTxNPiBTdXBwb3J0IGZvciBIRExDIGFuZCBzeW5jUFBQLi4uCgoKQSBtb2R1bG9rIGJldG9sdGVzZToKCm1vZHByb2JlIGNvbXgKCm1vZHByb2JlIGNvbXgtcHJvdG8tcHBwCQkjIGEgQ2lzY28tSERMQyBlcyBhIFN5bmNQUFAgcHJvdG9rb2xsdCBpcwoJCQkJIyBleiBhIG1vZHVsIGFkamEKCm1vZHByb2JlIGNvbXgtaHctbXVuaWNoCQkjIGEgbW9kdWwgYmV0b2x0b2Rlc2tvciBhem9ubmFsIGplbGVudCBhCgkJCQkjIHN5c2xvZ2JhIGEgZGV0ZWt0YWx0IGthcnR5YWtyb2wKCgpLb25maWd1cmFsYXM6CgojIEV6ZW4gYXogaW50ZXJmZXN6ZW4gQ2lzY28tSERMQyB2b25hbGkgcHJvdG9rb2xsIGZvZyBmdXRuaQojIEF6IGludGVyZmVzemhleiByZW5kZWx0IGlkb3N6ZWxldGVrOiAxLDIgKDEyOCBrYml0L3NlYy1lcyB2b25hbCkKIyAoYSBHLjcwMyBrZXJldGJlbiBheiBlbHNvIGFkYXRvdCB2aXZvIGlkb3N6ZWxldCBheiAxLWVzKQojCm1rZGlyIC9wcm9jL2NvbXgvY29teDAuMS8KZWNobyBzbGljZWNvbQk+L3Byb2MvY29teC9jb214MC4xL2JvYXJkdHlwZQplY2hvIGhkbGMJPi9wcm9jL2NvbXgvY29teDAuMS9wcm90b2NvbAplY2hvIDEgMgk+L3Byb2MvY29teC9jb214MC4xL3RpbWVzbG90cwoKCiMgRXplbiBheiBpbnRlcmZlc3plbiBTeW5jUFBQIHZvbmFsaSBwcm90b2tvbGwgZm9nIGZ1dG5pCiMgQXogaW50ZXJmZXN6aGV6IHJlbmRlbHQgaWRvc3plbGV0OiAzICg2NCBrYml0L3NlYy1lcyB2b25hbCkKIwpta2RpciAvcHJvYy9jb214L2NvbXgwLjIvCmVjaG8gc2xpY2Vjb20JPi9wcm9jL2NvbXgvY29teDAuMi9ib2FyZHR5cGUKZWNobyBwcHAJPi9wcm9jL2NvbXgvY29teDAuMi9wcm90b2NvbAplY2hvIDMJCT4vcHJvYy9jb214L2NvbXgwLjIvdGltZXNsb3RzCgouLi4KCmlmY29uZmlnIGNvbXgwLjEgdXAKaWZjb25maWcgY29teDAuMiB1cAoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCkEgQ09NWCBkcml2ZXJlayBkZWZhdWx0IDIwIGNzb21hZ255aSB0cmFuc21pdCBxdWV1ZS10IHJlbmRlbG5layBhIGhhbG96YXRpCmludGVyZmVzemVraGV6LiBXQU4gaGFsb3phdG9rYmFuIGVubmVsIGhvc3N6YWJiYXQgaXMgc3pva2FzIGhhc3puYWxuaQooMjAgZXMgMTAwIGtvem90dCksIGhvZ3kgYSB2b25hbCBraWhhc3puYWx0c2FnYSBuYWd5IHRlcmhlbGVzIGVzZXRlbiBqb2JiCmxlZ3llbiAoYmFyIGV6emVsIG1lZ25vIGEgdmFyaGF0byBrZXNsZWx0ZXRlcyBhIGNzb21hZ29rIHNvcmJhbiBhbGxhc2EgbWlhdHQpOgoKIyBpZmNvbmZpZyBjb214MCB0eHF1ZXVlbGVuIDUwCgpFenQgYSBiZWFsbGl0YXNpIGxlaGV0b3NlZ2V0IGNzYWsgYXogdWphYmIgZGlzenRyaWJ1Y2lvayBpZmNvbmZpZyBwYXJhbmNzYQp0YW1vZ2F0amEgKGFtaWsgbWFyIGEgMi4yIGtlcm5lbGVraGV6IGtlc3p1bHRlaywgbWludCBhIFJlZEhhdCA2LjEgdmFneSBhCkRlYmlhbiAyLjIpLgoKQSAyLjEtZXMgRGViaWFuIGRpc3p0cmlidWNpb2hveiBhIGh0dHA6Ly93d3cuZGViaWFuLm9yZy9+cmN3LzIuMi9uZXRiYXNlLwpjaW1yb2wgdG9sdGhldG8gbGUgdWphYmIgbmV0YmFzZSBjc29tYWcsIGFtaSBtYXIgaWx5ZXQgdGFtb2dhdG8gaWZjb25maWcKcGFyYW5jc290IHRhcnRhbG1hei4gQm92ZWJiZW4gYSAyLjIga2VybmVsIGhhc3puYWxhdGFyb2wgRGViaWFuIDIuMSBhbGF0dDoKaHR0cDovL3d3dy5kZWJpYW4ub3JnL3JlbGVhc2VzL3N0YWJsZS9ydW5uaW5nLWtlcm5lbC0yLjIKCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpBIGthcnR5YSBMRUQtamVpbmVrIGplbGVudGVzZToKCnBpcm9zCS0gZWcsIGhhIFJlbW90ZSBBbGFybS1vdCBrdWxkIGEgdHVsb2xkYWwKem9sZAktIGVnLCBoYSBhIHZldHQgamVsYmVuIG1lZ3RhbGFsamEgYSBrZXJldHN6aW5rcm9udAoKUmVzemxldGVzZWJiZW46CgpwaXJvczoJem9sZDoJamVsZW50ZXM6CgotCS0JbmluY3Mga2VyZXRzemlua3JvbiAobmluY3MgamVsLCB2YWd5IHJvc3N6IGEgamVsKQotCWVnCSJtaW5kZW4gcmVuZGJlbiIKZWcJZWcJYSB2ZXRlbCBPSywgZGUgYSB0dWxvbGRhbCBSZW1vdGUgQWxhcm0tb3Qga3VsZAplZwktCWV6IG5pbmNzIGVydGVsbWV6dmUsIGVneWVsb3JlIGZ1bmtjaW8gbmVsa3VsCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKUmVzemxldGVzZWJiIGxlaXJhcyBhIGhhcmR2ZXIgYmVhbGxpdGFzaSBsZWhldG9zZWdlaXJvbDoKCkF6IGFsdGFsYW5vcywtIGVzIGEgcHJvdG9rb2xsLXJldGVnZWsgYmVhbGxpdGFzaSBsZWhldG9zZWdlaXJvbCBhICdjb214LnR4dCcKZmFqbGJhbiBsZWlydGFrIFNsaWNlQ09NIGthcnR5YW5hbCBpcyBlcnZlbnllc2VrLCBpdHQgY3NhayBhIGhhcmR2ZXItc3BlY2lmaWt1cwpiZWFsbGl0YXNpIGxlaGV0b3NlZ2VrIHZhbm5hayBvc3N6ZWZvZ2xhbHZhOgoKS29uZmlndXJhbGFzaSBpbnRlcmZlc3ogYSAvcHJvYy9jb214LyBhbGF0dDoKCk1pbmRlbiB0aW1lc2xvdC1jc29wb3J0bmFrIGt1bG9uIGNvbXgqIGludGVyZmVzenQga2VsbCBsZXRyZWhvem5pIG1rZGlyLXJlbDoKY29teDAsIGNvbXgxLCAuLiBzdGIuIEl0dCBiZWFsbGl0aGF0bywgaG9neSBheiBhZG90dCBpbnRlcmZlc3ogaGFueWFkaWsga2FydHlhCm1lbHlpayB0aW1lc2xvdGphKGkpYm9sIGFsbGpvbiBvc3N6ZS4gQSBDaXNjby1mZWxlIHNlcmlhbDM6MSBlbG5ldmV6ZXNlawooc2VyaWFsMzoxID0gYSAzLiBrYXJ0eWFiYW4gYXogMS1lcyBpZG9zemVsZXQtY3NvcG9ydCkgTGludXhvbiBhbGlhc2luZy1vdApqZWxlbnRlbmVuZWssIGV6ZXJ0IG1pIG5lbSB0dWR1bmsgaWx5ZW4gZWxuZXZlemVzdCBoYXN6bmFsbmkuCgpUb2JiIGthcnR5YSBlc2V0ZW4gYSBjb214MC4xLCBjb214MC4yLCAuLi4gdmFneSBzbGljZTAuMSwgc2xpY2UwLjIgbmV2ZWsKaGFzem5hbGhhdG9hay4KClRvYmIgU2xpY2VDT00ga2FydHlhIGlzIGxlaGV0IGVneSBnZXBiZW4sIGRlIHNhamF0IGludGVycnVwdCBrZWxsIG1pbmRlZ3lpa25laywKbmVtIHR1ZCBtZWcgbWVnb3N6dG90dCBpbnRlcnJ1cHRvdCBrZXplbG5pLgoKQXogZWdlc3oga2FydHlhdCBlcmludG8gYmVhbGxpdGFzb2s6CgpBeiBpb3BvcnQgZXMgaXJxIGJlYWxsaXRhcyBuaW5jczogYW1pdCBhIFBDSSBCSU9TIGtpb3N6dCBhIHJlbmRzemVybmVrLAphenQgaGFzem5hbGphIGEgZHJpdmVyLgoKCmNvbXgwL2JvYXJkbnVtCS0gaGFueWFkaWsgU2xpY2VDT00ga2FydHlhIGEgZ2VwYmVuIChhICd0ZXJtZXN6ZXRlcycgUENJCgkJc29ycmVuZGJlbiBlcnR2ZTogYWhvZ3lhbiBhIC9wcm9jL3BjaS1iYW4gdmFneSBheiAnbHNwY2knCgkJa2ltZW5ldGViZW4gbWVnamVsZW5paywgYWx0YWxhYmFuIGF6IGFsYXBsYXBpIFBDSSBtZWdoYWp0bwoJCWFyYW1rb3Jva2hveiBrb3plbGViYiBlc28ga2FydHlhayBhIGtpc2ViYiBzb3JzemFtdWFrKQoKCQlEZWZhdWx0OiAwICgwLXRvbCBrZXpkb2RpayBhIHN6YW1vbGFzKQoKCkJhciBhIGtvdmV0a2V6b2tldCBjc2FrIGVneS1lZ3kgaW50ZXJmZXN6ZW4gYWxsaXRqdWsgYXQsIG1lZ2lzIGF6IGVnZXN6IGthcnR5YQptdWtvZGVzZXQgZWd5c3plcnJlIGFsbGl0amFrLiBBIG1lZ2tvdGVzIGhvZ3kgY3NhayBVUC1iYW4gbGV2byBpbnRlcmZlc3plbgpoYXN6bmFsaGF0b2FrLCBhemVydCB2YW4sIG1lcnQga3Vsb25iZW4gbmVtIHZhcnQgZXJlZG1lbnlla3JlIHZlemV0bmUgZWd5IGlseWVuCnBhcmFuY2Nzb3JvemF0OgoKCWVjaG8gMCAgICAgICAgPmJvYXJkbnVtCgllY2hvIGludGVybmFsID5jbG9ja19zb3VyY2UKCWVjaG8gMSAgICAgICAgPmJvYXJkbnVtCgotIEV6IGEgMC1zIGJvYXJkIGNsb2NrX3NvdXJjZS1hdCBhbGxpdGFuYSBhdC4KCkV6ZWsgYSBiZWFsbGl0YXNvayBtZWdtYXJhZG5hayBheiBvc3N6ZXMgaW50ZXJmZXN6IHRvcmxlc2Vrb3IsIGRlIHRvcmxvZG5lawphIGRyaXZlciBtb2R1bCBraS9iZXRvbHRlc2Vrb3IuCgoKY29teDAvY2xvY2tfc291cmNlIC0gQSBUeCBvcmFqZWxmb3JyYXNhLCBhIENpc2NvLXZhbCBoYXNvbmxhdG9zcmEga2VzenVsdC4KCUhhc3puYWxhdGE6CgoJcGFwYXlhOiMgZWNobyBsaW5lICAgICA+L3Byb2MvY29teC9jb214MC9jbG9ja19zb3VyY2UKCXBhcGF5YTojIGVjaG8gaW50ZXJuYWwgPi9wcm9jL2NvbXgvY29teDAvY2xvY2tfc291cmNlCgoJbGluZSAgICAgLSBBIFR4IG9yYWplbGV0IGEgdmV0dCBhZGF0Zm9seWFtYm9sIGRla29kb2xqYSwgaWd5ZWtzemlrCgkJaWdhem9kbmkgaG96emEuIEhhIG5lbSBsYXQgb3JhamVsZXQgYXogaW5wdXRvbiwgYWtrb3IKCQlhdGFsbCBhIHNhamF0IG9yYWplbGdlbmVyYXRvcmFyYS4KCWludGVybmFsIC0gQSBUeCBvcmFqZWxldCBhIHNhamF0IG9yYWplbGdlbmVyYXRvcmEgc3pvbGdhbHRhdGphLgoKCURlZmF1bHQ6IGxpbmUKCglOb3JtYWwgb3NzemVhbGxpdGFzIGVzZXRlbiBhIHRhdmtvemxlc2kgc3pvbGdhbHRhdG8gZXN6a296ZQoJKHBsLiBIRFNMIG1vZGVtKSBhZGphIGF6IG9yYWplbGV0LCBlemVydCBleiBhIGRlZmF1bHQuCgoKY29teDAvZnJhbWluZwktIEEgQ1JDNCBraS9iZSBrYXBjc29sYXNhCgoJQSBDUkM0OiAxNiBQQ00ga2VyZXRldCAoQSBQQ00ga2VyZXQgYXosIGFtaWJlIGEgMzIgZGFyYWIgNjQKCWtpbG9iaXRlcyBjc2F0b3JuYSB2YW4gYmVtdWx0aXBsZXhhbHZhLiBOZW0gb3NzemV0ZXZlc3p0ZW5kbyBhIEhETEMKCWtlcmV0dGVsLikgMng4IC1hcyBjc29wb3J0b2tyYSBvc3p0YW5haywgZXMgYXpva2hveiA0LTQgYml0ZXMgQ1JDLXQKCXN6YW1vbG5hay4gRWxzb3NvcmJhbiBhIHZvbmFsIG1pbm9zZWdlbmVrIGEgbW9uaXRvcm96YXNhcmEgc3pvbGdhbC4KCglwYXBheWE6fiMgZWNobyBjcmM0CT4vcHJvYy9jb214L2NvbXgwL2ZyYW1pbmcKCXBhcGF5YTp+IyBlY2hvIG5vLWNyYzQJPi9wcm9jL2NvbXgvY29teDAvZnJhbWluZwoKCURlZmF1bHQgYSAnY3JjNCcsIGEgTUFUQVYgdm9uYWxhayBhbHRhbGFiYW4gaWd5IGZ1dG5hay4gRGUgaGEgbmVtCgllZ3lmb3JtYSBpcyBhIGJlYWxsaXRhcyBhIHZvbmFsIGtldCB2ZWdlbiwgYXR0b2wgYSBmb3JnYWxvbSBhbHRhbGFiYW4KCWF0IHR1ZCBtZW5uaS4KCgpjb214MC9saW5lY29kZQktIEEgdm9uYWxpIGtvZG9sYXMgYmVhbGxpdGFzYQoKCXBhcGF5YTp+IyBlY2hvIGhkYjMJPi9wcm9jL2NvbXgvY29teDAvbGluZWNvZGUKCXBhcGF5YTp+IyBlY2hvIGFtaQk+L3Byb2MvY29teC9jb214MC9saW5lY29kZQoKCURlZmF1bHQgYSAnaGRiMycsIGEgTUFUQVYgdm9uYWxhayBpZ3kgZnV0bmFrLgoJCgkoYXogQU1JIGtvZG9sYXMgaWdlbiByaXRrYSBFMS1lcyB2b25hbGFrbmFsKS4gSGEgZXogYSBiZWFsbGl0YXMgbmVtCgllZ3llemlrIGEgdm9uYWwga2V0IHZlZ2VuLCBha2tvciBlbG9mb3JkdWxoYXQgaG9neSBhIGtlcmV0c3ppbmtyb24KCW9zc3plam9uLCBkZSBDUkM0LWhpYmFrIGVzIGEgdm9uYWxha29uIGF0dml0dCBhZGF0b2tiYW4gaXMgaGliYWsKCWtlbGV0a2V6bmVrIChhbWl0IGEgSERMQy9TeW5jUFBQIHN6aW50ZW4gQ1JDLWhpYmF2YWwgamVsZXopCgoKY29teDAvcmVnCS0gYSBrYXJ0eWEgYXJhbWtvcmVpbmVrLCBhIE1VTklDSCAocmVnKSBlcyBhIEZBTEMgKGxiaXJlZykKY29teDAvbGJpcmVnCXJlZ2lzenRlcmVpbmVrIGtvenZldGxlbiBlbGVyZXNlLiBIYXN6bmFsYXRhOgoKCQllY2hvID5yZWcgMHgwNCAweDAJLSBhIDQtZXMgcmVnaXN6dGVyYmUgMC10IGlyCgkJZWNobyA+cmVnIDB4MTA0CQktIHByaW50aygpLXZhbCBraWlyamEgYSA0LWVzIHJlZ2lzenRlcgoJCQkJCXRhcnRhbG1hdCBhIHN5c2xvZ2JhLgoKCQlXQVJOSU5HOiBlemVrIGNzYWsgYSBmZWpsZXN6dGVzaGV6IGtlc3p1bHRlaywgc29rIGdhbGliYXQKCQlsZWhldCB2ZWx1ayBva296bmkhCgoKY29teDAvbG9vcGJhY2sgLSBBIGthcnR5YSBHLjcwMyBqZWxlbmVrIGEgdmlzc3phaHVya29sYXNhcmEgaXMgdmFuIGxlaGV0b3NlZzoKCglwYXBheWE6IyBlY2hvIG5vbmUgICA+L3Byb2MvY29teC9jb214MC9sb29wYmFjawoJcGFwYXlhOiMgZWNobyBsb2NhbCAgPi9wcm9jL2NvbXgvY29teDAvbG9vcGJhY2sKCXBhcGF5YTojIGVjaG8gcmVtb3RlID4vcHJvYy9jb214L2NvbXgwL2xvb3BiYWNrCgoJbm9uZSAgIC0gbmluY3Mgdmlzc3phaHVya29sYXMsIG5vcm1hbCBtdWtvZGVzCglsb2NhbCAgLSBhIGthcnR5YSBhIHNhamF0IG1hZ2EgYWx0YWwgYWRvdHQgamVsZXQga2FwamEgdmlzc3phCglyZW1vdGUgLSBhIGthcnR5YSBhIGtpdnVscm9sIHZldHQgamVsZXQgYWRqYSBraWZlbGUKCglEZWZhdWx0OiBub25lCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKQXogaW50ZXJmZXN6aGV6IChDaXNjbyB0ZXJtaW5vbG9naWFiYW4gJ2NoYW5uZWwtZ3JvdXAnKSBrYXBjc29sb2RvIGJlYWxsaXRhc29rOgoKY29teDAvdGltZXNsb3RzCS0gbWVseSB0aW1lc2xvdG9rIChpZG9zemVsZXRlaykgdGFydG96bmFrIGF6IGFkb3R0IGludGVyZmVzemhlei4KCglwYXBheWE6fiMgY2F0IC9wcm9jL2NvbXgvY29teDAvdGltZXNsb3RzCgkxIDMgNCA1IDYKCXBhcGF5YTp+IwoKCUVneSB0aW1lc2xvdCBtZWdrZXJlc2VzZSAoaGFueWFzIGludGVyZmVzemJlIHRhcnRvemlrIG5hbHVuayk6CgoJcGFwYXlhOn4jIGdyZXAgJyA0JyAvcHJvYy9jb214L2NvbXgqL3RpbWVzbG90cwoJL3Byb2MvY29teC9jb214MC90aW1lc2xvdHM6MSAzIDQgNSA2CglwYXBheWE6fiMKCglCZWFsbGl0YXNhOgoJcGFwYXlhOn4jIGVjaG8gJzEgNSAyIDYgNyA4JyA+L3Byb2MvY29teC9jb214MC90aW1lc2xvdHMKCQoJQSB0aW1lc2xvdG9rIHNvcnJlbmRqZSBuZW0gc3phbWl0LCAnMSAzIDInIHVneWFuYXogbWludCBheiAnMSAyIDMnLgoKCUJlYWxsaXRhc2hveiBheiBhZG90dCBpbnRlcmZlc3puZWsgRE9XTi1iYW4ga2VsbCBsZW5uaWUKCShpZmNvbmZpZyBjb214MCBkb3duKSwgZGUgdWd5YW5hbm5hayBhIGthcnR5YW5hayBhIHRvYmJpIGludGVyZmVzemUKCXV6ZW1lbGhldCBrb3piZW4uCgoJQmVhbGxpdGFza29yIGxlZWxsZW5vcnppLCBob2d5IGF6IHVqIHRpbWVzbG90b2sgbmVtIHV0a296bmVrLWUgZWd5CgltYXNpayBpbnRlcmZlc3ogdGltZXNsb3RqYWl2YWwuIEhhIHV0a296bmVrLCBha2tvciBuZW0gYWxsaXRqYSBhdC4KCglNaW5kaWcgMTAtZXMgc3phbXJlbmRzemVyYmVuIHRvcnRlbmlrIGEgdGltZXNsb3RvayBlcnRlbG1lemVzZSwgbmVob2d5CglhIDA4LCAwOSBhbGFrdSBmZWxpcmFzdCByb3NzenVsIGVydGVsbWV6emUuCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKQXogaW50ZXJmZXN6ZWsgZXMgYSBrYXJ0eWEgYWxsYXBvdGFuYWsgbGVrZXJkZXplc2U6CgotIEEgJyAnLXN6ZWwga2V6ZG9kbyBzb3JvayBheiBlcmVkZXRpIGtpbWVuZXRldCwgYSAvLy1yZWwga2V6ZG9kbyBzb3JvayBhCm1hZ3lhcmF6YXRvdCBqZWx6aWsuCgogcGFwYXlhOn4kIGNhdCAvcHJvYy9jb214L2NvbXgxL3N0YXR1cwogSW50ZXJmYWNlIGFkbWluaXN0cmF0aXZlIHN0YXR1cyBpcyBVUCwgbW9kZW0gc3RhdHVzIGlzIFVQLCBwcm90b2NvbCBpcyBVUAogTW9kZW0gc3RhdHVzIGNoYW5nZXM6IDAsIFRyYW5zbWl0dGVyIHN0YXR1cyBpcyBJRExFLCB0YnVzeTogMAogSW50ZXJmYWNlIGxvYWQgKGlucHV0KTogOTc4Mzc2IC8gOTQ3ODA4IC8gOTUxMDI0IGJpdHMvcyAoNXMvNW0vMTVtKQogICAgICAgICAgICAgICAob3V0cHV0KTogOTc4Mzc2IC8gOTQ3ODQ4IC8gOTUxMDI0IGJpdHMvcyAoNXMvNW0vMTVtKQogRGVidWcgZmxhZ3M6IG5vbmUKIFJYIGVycm9yczogbGVuOiAyMiwgb3ZlcnJ1bjogMSwgY3JjOiAwLCBhYm9ydHM6IDAKICAgICAgICAgICAgYnVmZmVyIG92ZXJydW46IDAsIHBidWZmZXIgb3ZlcnJ1bjogMAogVFggZXJyb3JzOiB1bmRlcnJ1bjogMAogTGluZSBrZWVwYWxpdmUgKHZhbHVlOiAxMCkgc3RhdHVzIFVQIFswXQoKLy8gSXR0IGtlemRvZGlrIGEgaGFyZHZlci1zcGVjaWZpa3VzIHJlc3o6CiBDb250cm9sbGVyIHN0YXR1czoKICAgICAgICAgTm8gYWxhcm1zCgovLyBBbGFybTogaGliYWplbHplczoKLy8KLy8gTm8gYWxhcm1zIC0gbWluZGVuIHJlbmRiZW4KLy8KLy8gTE9TICAtIExvc3MgT2YgU2lnbmFsIC0gbmVtIGVyemVrZWwgamVsZXQgYSBiZW1lbmV0ZW4uCi8vIEFJUyAgLSBBbGFybSBJbmRpY2F0aW9uIFNpZ25hbCAtIGNzYWsgZWd5bWFzIHV0YW5pIDEtZXNlayBqb25uZWsKLy8JYSBiZW1lbmV0ZW4sIGEgdHVsb2xkYWwgaWd5IGlzIGplbGV6aGV0aSBob2d5IG1lZ2hpYmFzb2RvdHQgdmFneQovLwluaW5jcyBpbmljaWFsaXphbHZhLgovLyBBVVhQIC0gQXV4aWxpYXJ5IFBhdHRlcm4gSW5kaWNhdGlvbiAtIDAxMDEwMTAxLi4gc29yb3phdCBqb24gYSBiZW1lbmV0ZW4uCi8vIExGQSAgLSBMb3NzIG9mIEZyYW1lIEFsaWdubWVudCAtIG5pbmNzIGtlcmV0c3ppbmtyb24KLy8gUlJBICAtIFJlY2VpdmUgUmVtb3RlIEFsYXJtIC0gYSB0dWxvbGRhbCBlbCwgZGUgaGliYXQgamVsZXouCi8vIExNRkEgLSBMb3NzIG9mIENSQzQgTXVsdGlmcmFtZSBBbGlnbm1lbnQgLSBuaW5jcyBDUkM0LW11bHRpa2VyZXQtc3ppbmtyb24KLy8gTk1GICAtIE5vIE11bHRpZnJhbWUgYWxpZ25tZW50IEZvdW5kIGFmdGVyIDQwMCBtc2VjIC0gaWx5ZW4gYWxhcm0gYSBuby1jcmM0Ci8vCWVzIGNyYzQga2VyZXRlemVzZWsgZXNldGVuIG5pbmNzLCBsYXNkIGxlbnRlYmIKLy8KLy8gRWd5ZWIgbGVoZXRzZWdlcyBoaWJhamVsemVzZWs6Ci8vCi8vIFRyYW5zbWl0IExpbmUgU2hvcnQgLSBhIGthcnR5YSB1Z3kgZXJ6aSBob2d5IGF6IGFkYXNpIGtpbWVuZXRlIHJvdmlkcmUKLy8JdmFuIHphcnZhLCBlemVydCBraWthcGNzb2x0YSBheiBhZGFzdC4gKG5lbSBmZWx0ZXRsZW51bCB2ZXN6aSBlc3pyZQovLwlhIGt1bHNvIHJvdmlkemFyYXQpCgovLyBBIHZldGVsaSBvbGRhbCBjc29tYWdqYWluYWsgbGFuY29sdCBsaXN0YWksIGRlYnVnIGNlbG9rcmE6CgogUnggcmluZzoKICAgICAgICAgcmFmdXRvdHQ6IDAKICAgICAgICAgbGFzdGNoZWNrOiA1MDg0NTczMSwgamlmZmllczogNTEzMTQyODEKICAgICAgICAgYmFzZTogMDE3YjE4NTgKICAgICAgICAgcnhfZGVzY19wdHI6IDAKICAgICAgICAgcnhfZGVzY19wdHI6IDAxN2IxODU4CiAgICAgICAgIGh3X2N1cnJfcHRyOiAwMTdiMTg1OAogICAgICAgICAwNjA0MDAwMCAwMTdiMTg2OCAwMTdiMTg5OCBjMDE2ZmYwMAogICAgICAgICAwNjA0MDAwMCAwMTdiMTg3OCAwMTdiMWU5YyBjMDE2ZmYwMAogICAgICAgICA0NjA0MDAwMCAwMTdiMTg4OCAwMTdiMjRhMCBjMDE2ZmYwMAogICAgICAgICAwNjA0MDAwMCAwMTdiMTg1OCAwMTdiMmFhNCBjMDE2ZmYwMAoKLy8gQSBrYXJ0eWF0IGhhc3puYWxvIHRvYmJpIGludGVyZmVzejogYSAwLXMgY2hhbm5lbC1ncm91cCBhIGNvbXgxIGludGVyZmVzeiwKLy8gZXMgYXogMSwyLC4uLiwxNiB0aW1lc2xvdG9rIHRhcnRvem5hayBob3p6YToKCiBJbnRlcmZhY2VzIHVzaW5nIHRoaXMgYm9hcmQ6IChjaGFubmVsLWdyb3VwLCBpbnRlcmZhY2UsIHRpbWVzbG90cykKICAgICAgICAgIDAgY29teDE6IDEgMiAzIDQgNSA2IDcgOCA5IDEwIDExIDEyIDEzIDE0IDE1IDE2CiAgICAgICAgICAxIGNvbXgyOiAxNwogICAgICAgICAgMiBjb214MzogMTgKICAgICAgICAgIDMgY29teDQ6IDE5CiAgICAgICAgICA0IGNvbXg1OiAyMAogICAgICAgICAgNSBjb214NjogMjEKICAgICAgICAgIDYgY29teDc6IDIyCiAgICAgICAgICA3IGNvbXg4OiAyMwogICAgICAgICAgOCBjb214OTogMjQKICAgICAgICAgIDkgY29teDEwOiAyNQogICAgICAgICAxMCBjb214MTE6IDI2CiAgICAgICAgIDExIGNvbXgxMjogMjcKICAgICAgICAgMTIgY29teDEzOiAyOAogICAgICAgICAxMyBjb214MTQ6IDI5CiAgICAgICAgIDE0IGNvbXgxNTogMzAKICAgICAgICAgMTUgY29teDE2OiAzMQoKLy8gSGFueSBlc2VtZW55dCBrZXplbHQgbGUgYSBkcml2ZXIgZWd5LWVneSBoYXJkdmVyLWludGVycnVwdCBraXN6b2xnYWxhc2FuYWw6CgogSW50ZXJydXB0IHdvcmsgaGlzdG9ncmFtOgogaGlzdFsgMF06ICAgICAgICAwIGhpc3RbIDFdOiAgICAgICAgMiBoaXN0WyAyXTogICAgMTg1NzQgaGlzdFsgM106ICAgICAgIDc5CiBoaXN0WyA0XTogICAgICAgMTQgaGlzdFsgNV06ICAgICAgICAxIGhpc3RbIDZdOiAgICAgICAgMCBoaXN0WyA3XTogICAgICAgIDEKIGhpc3RbIDhdOiAgICAgICAgMCBoaXN0WyA5XTogICAgICAgIDcKCi8vIEhhbnkga2lrdWxkZW5kbyBjc29tYWcgdm9sdCBtYXIgYSBUeC1yaW5nYmVuIGFtaWtvciB1amFiYiBsZXR0IGlydmEgYmVsZToKCiBUeCByaW5nIGhpc3RvZ3JhbToKIGhpc3RbIDBdOiAgICAgMjMyOSBoaXN0WyAxXTogICAgICAgIDAgaGlzdFsgMl06ICAgICAgICAwIGhpc3RbIDNdOiAgICAgICAgMAoKLy8gQXogRTEtaW50ZXJmZXN6IGhpYmEtc3phbWxhbG9pLCBheiByZmMyNDk1LW5layBtZWdmZWxlbG9lbjoKLy8gKGtiLiBhIENpc2NvIHJvdXRlcmVrICJzaG93IGNvbnRyb2xsZXJzIGUxIiBmb3JtYXR1bWFiYW46IGh0dHA6Ly93d3cuY2lzY28uY29tL3VuaXZlcmNkL2NjL3RkL2RvYy9wcm9kdWN0L3NvZnR3YXJlL2lvczExL3Jib29rL3JpbnRlcmZjLmh0bSN4dG9jaWQyNTY2OTEyNikKCkRhdGEgaW4gY3VycmVudCBpbnRlcnZhbCAoOTEgc2Vjb25kcyBlbGFwc2VkKToKICAgOTUxNiBMaW5lIENvZGUgVmlvbGF0aW9ucywgNjUgUGF0aCBDb2RlIFZpb2xhdGlvbnMsIDIgRS1CaXQgRXJyb3JzCiAgIDAgU2xpcCBTZWNzLCAyIEZyIExvc3MgU2VjcywgMiBMaW5lIEVyciBTZWNzLCAwIERlZ3JhZGVkIE1pbnMKICAgMCBFcnJvcmVkIFNlY3MsIDAgQnVyc3R5IEVyciBTZWNzLCAwIFNldmVyZWx5IEVyciBTZWNzLCAxMSBVbmF2YWlsIFNlY3MKRGF0YSBpbiBJbnRlcnZhbCAxICgxNSBtaW51dGVzKToKICAgMCBMaW5lIENvZGUgVmlvbGF0aW9ucywgMCBQYXRoIENvZGUgVmlvbGF0aW9ucywgMCBFLUJpdCBFcnJvcnMKICAgMCBTbGlwIFNlY3MsIDAgRnIgTG9zcyBTZWNzLCAwIExpbmUgRXJyIFNlY3MsIDAgRGVncmFkZWQgTWlucwogICAwIEVycm9yZWQgU2VjcywgMCBCdXJzdHkgRXJyIFNlY3MsIDAgU2V2ZXJlbHkgRXJyIFNlY3MsIDAgVW5hdmFpbCBTZWNzCkRhdGEgaW4gbGFzdCA0IGludGVydmFscyAoMSBob3VyKToKICAgMCBMaW5lIENvZGUgVmlvbGF0aW9ucywgMCBQYXRoIENvZGUgVmlvbGF0aW9ucywgMCBFLUJpdCBFcnJvcnMKICAgMCBTbGlwIFNlY3MsIDAgRnIgTG9zcyBTZWNzLCAwIExpbmUgRXJyIFNlY3MsIDAgRGVncmFkZWQgTWlucwogICAwIEVycm9yZWQgU2VjcywgMCBCdXJzdHkgRXJyIFNlY3MsIDAgU2V2ZXJlbHkgRXJyIFNlY3MsIDAgVW5hdmFpbCBTZWNzCkRhdGEgaW4gbGFzdCA5NiBpbnRlcnZhbHMgKDI0IGhvdXJzKToKICAgMCBMaW5lIENvZGUgVmlvbGF0aW9ucywgMCBQYXRoIENvZGUgVmlvbGF0aW9ucywgMCBFLUJpdCBFcnJvcnMKICAgMCBTbGlwIFNlY3MsIDAgRnIgTG9zcyBTZWNzLCAwIExpbmUgRXJyIFNlY3MsIDAgRGVncmFkZWQgTWlucwogICAwIEVycm9yZWQgU2VjcywgMCBCdXJzdHkgRXJyIFNlY3MsIDAgU2V2ZXJlbHkgRXJyIFNlY3MsIDAgVW5hdmFpbCBTZWNzCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKTmVoYW55IGt1bG9ubGVnZXNlYmIgYmVhbGxpdGFzaSBsZWhldG9zZWcgKGlkb3ZlbCBiZWVwdWxoZXRuZWsgbWFqZCBhIGRyaXZlcmJlKToKRXpla2tlbCBzb2sgZ2FsaWJhdCBsZWhldCBva296bmksIG5hZ3lvbiBvdmF0b3NhbiBrZWxsIG9rZXQgaGFzem5hbG5pIQoKCW1vZGlmaWVkIENSQy00LCBmb3IgaW1wcm92ZWQgaW50ZXJ3b3JraW5nIG9mIENSQy00IGFuZCBub24tQ1JDLTQKCWRldmljZXM6IChsYXNkIHBhZ2UgMTA3IGVzIGc3MDYgQW5uZXggQikKCQlsYmlyZWdbIDB4MWIgXSB8PSAweDA4CgkJbGJpcmVnWyAweDFjIF0gfD0gMHhjMAoJLSBpbHllbmtvciBlcnRlbG1lemV0dCBheiBOTUYgLSAnTm8gTXVsdGlmcmFtZSBhbGlnbm1lbnQgRm91bmQgYWZ0ZXIKCTQwMCBtc2VjJyBhbGFybS4KCglGQUxDIC0gYSB2b25hbGkgbWVnaGFqdG8gSUMKCWxvY2FsIGxvb3AgLSBhIHNhamF0IGFkYXNvbWF0IGhhbGxqYW0gdmlzc3phCglyZW1vdGUgbG9vcCAtIGEga2l2dWxyb2wgam92byBhZGFzdCBhZG9tIHZpc3N6YQoKCUVneSBoaWJha2VyZXNlc3JlIGhhc3puYWxoYXRvIGRvbG9nOgoJCS0gMS1lcyB0aW1lc2xvdCBsb2NhbCBsb29wIGEgRkFMQy1iYW46CWVjaG8gPmxiaXJlZyAweDFkIDB4MjEKCQktIGxvY2FsIGxvb3Aga2lrYXBjc29sYXNhOgkJZWNobyA+bGJpcmVnIDB4MWQgMHgwMAo=